aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--community/gcc6/APKBUILD14
-rw-r--r--community/gcc6/fix-gcj-arm-thumb.patch23
2 files changed, 32 insertions, 5 deletions
diff --git a/community/gcc6/APKBUILD b/community/gcc6/APKBUILD
index f078bef06c1..ae8efad9885 100644
--- a/community/gcc6/APKBUILD
+++ b/community/gcc6/APKBUILD
@@ -3,7 +3,7 @@ pkgname=gcc6
pkgver=6.4.0
_ver=${pkgver%%.*}
pkgname="$pkgname"
-pkgrel=8
+pkgrel=9
pkgdesc="The GNU Compiler Collection"
url="http://gcc.gnu.org"
arch="all"
@@ -52,6 +52,7 @@ source="ftp://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkgba
fix-gcj-stdgnu14-link.patch
fix-gcj-musl.patch
fix-gcj-iconv-musl.patch
+ fix-gcj-arm-thumb.patch
gcc-4.8-build-args.patch
fix-cxxflags-passing.patch
@@ -302,12 +303,14 @@ libgcj() {
done
mkdir -p "$subpkgdir"/$_gcclibdir
mv "$pkgdir"/$_gcclibdir/gcj-* \
- "$pkgdir"/$_gcclibdir/libgcj_bc.so \
- "$pkgdir"/$_gcclibdir/libgcj*.so.* \
- "$pkgdir"/$_gcclibdir/libgij.so.* \
"$pkgdir"/$_gcclibdir/logging.properties \
"$pkgdir"/$_gcclibdir/security \
- "$subpkgdir"/usr/lib/
+ "$subpkgdir"/$_gcclibdir
+
+ mv "$pkgdir"/$_gcclibdir/libgcj_bc.so \
+ "$pkgdir"/$_gcclibdir/libgcj*.so.* \
+ "$pkgdir"/$_gcclibdir/libgij.so.* \
+ "$subpkgdir"/usr/lib
mkdir -p "$subpkgdir"/usr/share/
mv "$pkgdir"/usr/share/java "$subpkgdir"/usr/share/
@@ -340,6 +343,7 @@ fa62556719449caec6b2b434355bfbcaa5ae55ffe017b3e1f827f66a2aae21b79c571ee7a4ce723e
2253941f3d19b6d08801d3782f5f5ed56c3b73fbc9d3561a8f01c702963ac4fab91599c686076e7081eb6a80c37ccd33591ae978996d6eee1dc0ce0f1c50259a fix-gcj-stdgnu14-link.patch
f89ddeb21bc8f97e6a850a6b70b4501a8f3e49a4bc8cc82897488decda5d98ad01cb7f6c8b392d452e9579924a523bc75da6e0648c1c976d42e40af48b10343b fix-gcj-musl.patch
54d67cc008b735e47771314171930c5d8b8f5f5dc97fcf4214824c105c808f3e75d22d5a4fdf5068ed0457fa0d46c60cfb442e276259a4a5e9b8722a027d18e6 fix-gcj-iconv-musl.patch
+4b35b83d5524123c6a87dc4581ad25de499caf288ac10684769369619a92626b6f13d05f7c0e606d5fc01b4df9a40d34698d708c38ac8aa6f60d7d00aa371dba fix-gcj-arm-thumb.patch
abe9aaf9aa956058d0386a4396a511d176a46bb3906b90e952383646cdc158cbeb0a5dc616a1ccb1ca7d49fd0b5e351532aa15a3b13362abbf1ca4266f54a687 gcc-4.8-build-args.patch
35d6d59f0b7b968f282f56767c9e0823a7bdc5aa0d450aca50fbd802649a7ca608b47671244a3faa208a9b0d6832cabb5a22724157dc817b2c0ad63d09f93282 fix-cxxflags-passing.patch
4b4a0ff306a8ef34ff6e3284fbfca869012164a47ba7cb099085c1dd03e6ca0cdd462f82710e08c9a02895adc7484e4c5eef17b5aa264cf5d978fe8ad78eea93 300-main-gcc-add-musl-s390x-dynamic-linker.patch
diff --git a/community/gcc6/fix-gcj-arm-thumb.patch b/community/gcc6/fix-gcj-arm-thumb.patch
new file mode 100644
index 00000000000..8610515967f
--- /dev/null
+++ b/community/gcc6/fix-gcj-arm-thumb.patch
@@ -0,0 +1,23 @@
+diff -ruN gcc/libjava/configure.host gcc/libjava/configure.host
+--- gcc/libjava/configure.host 2015-05-28 21:13:55.185034000 +0300
++++ gcc/libjava/configure.host 2018-12-27 09:26:16.579326441 +0200
+@@ -407,6 +407,10 @@
+ descriptor_h=sysdep/powerpc/descriptor.h
+ ;;
+
++ arm*-*)
++ descriptor_h=sysdep/arm/descriptor.h
++ ;;
++
+ *)
+ descriptor_h=sysdep/descriptor-n.h
+ ;;
+diff -ruN gcc/libjava/sysdep/arm/descriptor.h gcc/libjava/sysdep/arm/descriptor.h
+--- gcc/libjava/sysdep/arm/descriptor.h 1970-01-01 02:00:00.000000000 +0200
++++ gcc/libjava/sysdep/arm/descriptor.h 2018-12-27 09:27:38.714979452 +0200
+@@ -0,0 +1,4 @@
++// Given a function pointer, return the code address.
++// Strip out the ARM/Thumb mode indicator bit
++
++#define UNWRAP_FUNCTION_DESCRIPTOR(X) ((void*)(((unsigned long)X) & ~1UL))
+