cross/gcc-*: upgrade to 9.2.0-r4 (!839)
and sync with upstream: enable D programming language as in
5bbe16ae7b
This commit is contained in:
parent
4ae1e76e73
commit
320e56fde5
9 changed files with 3806 additions and 9 deletions
1216
cross/gcc-aarch64/400-dlang-phobos.patch
Normal file
1216
cross/gcc-aarch64/400-dlang-phobos.patch
Normal file
File diff suppressed because it is too large
Load diff
25
cross/gcc-aarch64/401-dlang-32bits.patch
Normal file
25
cross/gcc-aarch64/401-dlang-32bits.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
--- a/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:05.000000000 +0900
|
||||
+++ b/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:08.000000000 +0900
|
||||
@@ -67,15 +67,21 @@ version (CRuntime_Glibc)
|
||||
}
|
||||
else version (CRuntime_Musl)
|
||||
{
|
||||
+ // off_t is always 64 bits on Musl
|
||||
enum _FILE_OFFSET_BITS = 64;
|
||||
|
||||
+ // Not present in Musl sources
|
||||
enum __REDIRECT = false;
|
||||
|
||||
+ // Those three are irrelevant for Musl as it always uses 64 bits off_t
|
||||
enum __USE_FILE_OFFSET64 = _FILE_OFFSET_BITS == 64;
|
||||
enum __USE_LARGEFILE = __USE_FILE_OFFSET64 && !__REDIRECT;
|
||||
enum __USE_LARGEFILE64 = __USE_FILE_OFFSET64 && !__REDIRECT;
|
||||
|
||||
- enum __WORDSIZE=64;
|
||||
+ version (D_LP64)
|
||||
+ enum __WORDSIZE = 64;
|
||||
+ else
|
||||
+ enum __WORDSIZE = 32;
|
||||
}
|
||||
else version (CRuntime_UClibc)
|
||||
{
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
CTARGET_ARCH=aarch64
|
||||
CTARGET="$(arch_to_hostspec ${CTARGET_ARCH})"
|
||||
LANG_D=false
|
||||
LANG_OBJC=false
|
||||
LANG_JAVA=false
|
||||
LANG_GO=false
|
||||
|
@ -29,9 +30,9 @@ pkgver=9.2.0
|
|||
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
||||
|
||||
pkgname="gcc-aarch64"
|
||||
pkgrel=3
|
||||
pkgrel=4
|
||||
pkgdesc="Stage2 cross-compiler for aarch64"
|
||||
url="http://gcc.gnu.org"
|
||||
url="https://gcc.gnu.org"
|
||||
arch="x86_64"
|
||||
license="GPL LGPL"
|
||||
_gccrel=$pkgver-r$pkgrel
|
||||
|
@ -43,6 +44,7 @@ subpackages="g++-aarch64:gpp"
|
|||
replaces="libstdc++ binutils"
|
||||
|
||||
: ${LANG_CXX:=true}
|
||||
: ${LANG_D:=true}
|
||||
: ${LANG_OBJC:=true}
|
||||
: ${LANG_GO:=true}
|
||||
: ${LANG_FORTRAN:=true}
|
||||
|
@ -56,6 +58,7 @@ LIBITM="false"
|
|||
if [ "$CHOST" != "$CTARGET" ]; then
|
||||
if [ "$BOOTSTRAP" = nolibc ]; then
|
||||
LANG_CXX=false
|
||||
LANG_D=false
|
||||
LANG_ADA=false
|
||||
LIBGCC=false
|
||||
_builddir="$srcdir/build-cross-pass2"
|
||||
|
@ -109,6 +112,10 @@ else
|
|||
_builddir="$srcdir/build"
|
||||
fi
|
||||
|
||||
# GDC hasn't been ported to PowerPC
|
||||
# See libphobos/configure.tgt in GCC sources for supported targets
|
||||
[ "$CARCH" = ppc64le ] && LANG_D=false
|
||||
|
||||
# Go needs {set,make,swap}context, unimplemented in musl
|
||||
[ "$CTARGET_LIBC" = musl ] && LANG_GO=false
|
||||
|
||||
|
@ -139,6 +146,10 @@ _languages=c
|
|||
if $LANG_CXX; then
|
||||
_languages="$_languages,c++"
|
||||
fi
|
||||
if $LANG_D; then
|
||||
subpackages="$subpackages libgphobos::$CTARGET_ARCH gcc-gdc$_target:gdc"
|
||||
_languages="$_languages,d"
|
||||
fi
|
||||
if $LANG_OBJC; then
|
||||
subpackages="$subpackages libobjc::$CTARGET_ARCH gcc-objc$_target:objc"
|
||||
_languages="$_languages,objc"
|
||||
|
@ -195,6 +206,9 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkg
|
|||
gcc-pure64-mips.patch
|
||||
0016-invalid_tls_model.patch
|
||||
gcc10-pr91920.patch
|
||||
|
||||
400-dlang-phobos.patch
|
||||
401-dlang-32bits.patch
|
||||
"
|
||||
|
||||
# gcc-4.8-build-args.patch
|
||||
|
@ -340,6 +354,7 @@ package() {
|
|||
# strip debug info from some static libs
|
||||
${STRIP_FOR_TARGET} -g `find "$pkgdir" \( -name libgfortran.a -o -name libobjc.a -o -name libgomp.a \
|
||||
-o -name libmudflap.a -o -name libmudflapth.a \
|
||||
-o -name libgphobos.a -o -name libgdruntime.a \
|
||||
-o -name libgcc.a -o -name libgcov.a -o -name libquadmath.a \
|
||||
-o -name libitm.a -o -name libgo.a -o -name libcaf\*.a \
|
||||
-o -name libatomic.a -o -name libasan.a -o -name libtsan.a \) \
|
||||
|
@ -490,6 +505,32 @@ libgomp() {
|
|||
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libgomp.so.* "$subpkgdir"/usr/lib/
|
||||
}
|
||||
|
||||
libgphobos() {
|
||||
pkgdesc="D programming language standard library for GCC"
|
||||
depends=
|
||||
|
||||
mkdir -p "$subpkgdir"/usr/lib
|
||||
mv "$pkgdir"/usr/lib/libgdruntime.so.* "$subpkgdir"/usr/lib/
|
||||
mv "$pkgdir"/usr/lib/libgphobos.so.* "$subpkgdir"/usr/lib/
|
||||
}
|
||||
|
||||
gdc() {
|
||||
pkgdesc="GCC-based D language compiler"
|
||||
depends="gcc=$_gccrel libgphobos=$_gccrel"
|
||||
|
||||
mkdir -p "$subpkgdir"/$_gcclibdir/include/d/ \
|
||||
"$subpkgdir"/usr/lib \
|
||||
"$subpkgdir"/usr/bin
|
||||
# Copy: The installed `.d` files, the static lib, the binary itself
|
||||
# The shared libs are part of `libgphobos` so one can run program
|
||||
# without installing the compiler
|
||||
mv "$pkgdir"/$_gcclibdir/include/d/* "$subpkgdir"/$_gcclibdir/include/d/
|
||||
mv "$pkgdir"/usr/lib/libgdruntime.a "$subpkgdir"/usr/lib/
|
||||
mv "$pkgdir"/usr/lib/libgphobos.a "$subpkgdir"/usr/lib/
|
||||
mv "$pkgdir"/usr/bin/gdc "$subpkgdir"/usr/bin/
|
||||
}
|
||||
|
||||
|
||||
libgo() {
|
||||
pkgdesc="Go runtime library for GCC"
|
||||
depends=
|
||||
|
@ -606,4 +647,6 @@ a1f7750bc7b8b7d916a5dee34fcc736bd4fb249c96538b547d495794e6cfd49356aa3974506a1507
|
|||
f4ef08454e28c8732db69115e4998ec153399e8d229dd27f923dbdcf57b68128a65640d026cc7f45b58ba8764ab1eb575d4eb6d6dfc550a87a183f8b94e76181 320-libffi-gnulinux.patch
|
||||
86be3338cc9c33089608bc4c5e3b7918c4e500a345c338f361b18c342119a6ed69af5495d72950de7106d760f003528b46ad14795e805f8a3331e206dcb234e3 gcc-pure64-mips.patch
|
||||
17e0faeef742d32d57a070d983480367dd28cd28d47a8966ce327afdff3a38ea76803a833c90aff7d3a93aa66dae76c9be47b2408500913b40571af25b85aca7 0016-invalid_tls_model.patch
|
||||
e9fef7677f9541848cd1df0bf3c330f06f1369bdf1d228238b7f1d03d8f2c4be07fd62be503b7bf72b6b1e2d4e404ddd957157b56b8050e3657820ade77491aa gcc10-pr91920.patch"
|
||||
e9fef7677f9541848cd1df0bf3c330f06f1369bdf1d228238b7f1d03d8f2c4be07fd62be503b7bf72b6b1e2d4e404ddd957157b56b8050e3657820ade77491aa gcc10-pr91920.patch
|
||||
38772c5b0905455a44c43d6ef7e5f140530006e2bde9f5ffd6b569c7cf9633992515f666b486d7a78c30ab8da99b92b2775c90fde47821ae542ef1c49dc405df 400-dlang-phobos.patch
|
||||
84bdbdfcb972161765b81220ea2e80e83c32f3ab27596b77eb451d8cac4bd6312210df468581c2b0e1363f5e3b31654e369c47ae84c907f3b54a1786d7c17830 401-dlang-32bits.patch"
|
||||
|
|
1216
cross/gcc-armhf/400-dlang-phobos.patch
Normal file
1216
cross/gcc-armhf/400-dlang-phobos.patch
Normal file
File diff suppressed because it is too large
Load diff
25
cross/gcc-armhf/401-dlang-32bits.patch
Normal file
25
cross/gcc-armhf/401-dlang-32bits.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
--- a/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:05.000000000 +0900
|
||||
+++ b/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:08.000000000 +0900
|
||||
@@ -67,15 +67,21 @@ version (CRuntime_Glibc)
|
||||
}
|
||||
else version (CRuntime_Musl)
|
||||
{
|
||||
+ // off_t is always 64 bits on Musl
|
||||
enum _FILE_OFFSET_BITS = 64;
|
||||
|
||||
+ // Not present in Musl sources
|
||||
enum __REDIRECT = false;
|
||||
|
||||
+ // Those three are irrelevant for Musl as it always uses 64 bits off_t
|
||||
enum __USE_FILE_OFFSET64 = _FILE_OFFSET_BITS == 64;
|
||||
enum __USE_LARGEFILE = __USE_FILE_OFFSET64 && !__REDIRECT;
|
||||
enum __USE_LARGEFILE64 = __USE_FILE_OFFSET64 && !__REDIRECT;
|
||||
|
||||
- enum __WORDSIZE=64;
|
||||
+ version (D_LP64)
|
||||
+ enum __WORDSIZE = 64;
|
||||
+ else
|
||||
+ enum __WORDSIZE = 32;
|
||||
}
|
||||
else version (CRuntime_UClibc)
|
||||
{
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
CTARGET_ARCH=armhf
|
||||
CTARGET="$(arch_to_hostspec ${CTARGET_ARCH})"
|
||||
LANG_D=false
|
||||
LANG_OBJC=false
|
||||
LANG_JAVA=false
|
||||
LANG_GO=false
|
||||
|
@ -29,9 +30,9 @@ pkgver=9.2.0
|
|||
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
||||
|
||||
pkgname="gcc-armhf"
|
||||
pkgrel=3
|
||||
pkgrel=4
|
||||
pkgdesc="Stage2 cross-compiler for armhf"
|
||||
url="http://gcc.gnu.org"
|
||||
url="https://gcc.gnu.org"
|
||||
arch="x86_64"
|
||||
license="GPL LGPL"
|
||||
_gccrel=$pkgver-r$pkgrel
|
||||
|
@ -43,6 +44,7 @@ subpackages="g++-armhf:gpp"
|
|||
replaces="libstdc++ binutils"
|
||||
|
||||
: ${LANG_CXX:=true}
|
||||
: ${LANG_D:=true}
|
||||
: ${LANG_OBJC:=true}
|
||||
: ${LANG_GO:=true}
|
||||
: ${LANG_FORTRAN:=true}
|
||||
|
@ -109,6 +111,10 @@ else
|
|||
_builddir="$srcdir/build"
|
||||
fi
|
||||
|
||||
# GDC hasn't been ported to PowerPC
|
||||
# See libphobos/configure.tgt in GCC sources for supported targets
|
||||
[ "$CARCH" = ppc64le ] && LANG_D=false
|
||||
|
||||
# Go needs {set,make,swap}context, unimplemented in musl
|
||||
[ "$CTARGET_LIBC" = musl ] && LANG_GO=false
|
||||
|
||||
|
@ -139,6 +145,10 @@ _languages=c
|
|||
if $LANG_CXX; then
|
||||
_languages="$_languages,c++"
|
||||
fi
|
||||
if $LANG_D; then
|
||||
subpackages="$subpackages libgphobos::$CTARGET_ARCH gcc-gdc$_target:gdc"
|
||||
_languages="$_languages,d"
|
||||
fi
|
||||
if $LANG_OBJC; then
|
||||
subpackages="$subpackages libobjc::$CTARGET_ARCH gcc-objc$_target:objc"
|
||||
_languages="$_languages,objc"
|
||||
|
@ -195,6 +205,9 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkg
|
|||
gcc-pure64-mips.patch
|
||||
0016-invalid_tls_model.patch
|
||||
gcc10-pr91920.patch
|
||||
|
||||
400-dlang-phobos.patch
|
||||
401-dlang-32bits.patch
|
||||
"
|
||||
|
||||
# gcc-4.8-build-args.patch
|
||||
|
@ -606,4 +619,6 @@ a1f7750bc7b8b7d916a5dee34fcc736bd4fb249c96538b547d495794e6cfd49356aa3974506a1507
|
|||
f4ef08454e28c8732db69115e4998ec153399e8d229dd27f923dbdcf57b68128a65640d026cc7f45b58ba8764ab1eb575d4eb6d6dfc550a87a183f8b94e76181 320-libffi-gnulinux.patch
|
||||
86be3338cc9c33089608bc4c5e3b7918c4e500a345c338f361b18c342119a6ed69af5495d72950de7106d760f003528b46ad14795e805f8a3331e206dcb234e3 gcc-pure64-mips.patch
|
||||
17e0faeef742d32d57a070d983480367dd28cd28d47a8966ce327afdff3a38ea76803a833c90aff7d3a93aa66dae76c9be47b2408500913b40571af25b85aca7 0016-invalid_tls_model.patch
|
||||
e9fef7677f9541848cd1df0bf3c330f06f1369bdf1d228238b7f1d03d8f2c4be07fd62be503b7bf72b6b1e2d4e404ddd957157b56b8050e3657820ade77491aa gcc10-pr91920.patch"
|
||||
e9fef7677f9541848cd1df0bf3c330f06f1369bdf1d228238b7f1d03d8f2c4be07fd62be503b7bf72b6b1e2d4e404ddd957157b56b8050e3657820ade77491aa gcc10-pr91920.patch
|
||||
38772c5b0905455a44c43d6ef7e5f140530006e2bde9f5ffd6b569c7cf9633992515f666b486d7a78c30ab8da99b92b2775c90fde47821ae542ef1c49dc405df 400-dlang-phobos.patch
|
||||
84bdbdfcb972161765b81220ea2e80e83c32f3ab27596b77eb451d8cac4bd6312210df468581c2b0e1363f5e3b31654e369c47ae84c907f3b54a1786d7c17830 401-dlang-32bits.patch"
|
||||
|
|
1216
cross/gcc-armv7/400-dlang-phobos.patch
Normal file
1216
cross/gcc-armv7/400-dlang-phobos.patch
Normal file
File diff suppressed because it is too large
Load diff
25
cross/gcc-armv7/401-dlang-32bits.patch
Normal file
25
cross/gcc-armv7/401-dlang-32bits.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
--- a/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:05.000000000 +0900
|
||||
+++ b/libphobos/libdruntime/core/sys/posix/config.d 2019-10-29 15:54:08.000000000 +0900
|
||||
@@ -67,15 +67,21 @@ version (CRuntime_Glibc)
|
||||
}
|
||||
else version (CRuntime_Musl)
|
||||
{
|
||||
+ // off_t is always 64 bits on Musl
|
||||
enum _FILE_OFFSET_BITS = 64;
|
||||
|
||||
+ // Not present in Musl sources
|
||||
enum __REDIRECT = false;
|
||||
|
||||
+ // Those three are irrelevant for Musl as it always uses 64 bits off_t
|
||||
enum __USE_FILE_OFFSET64 = _FILE_OFFSET_BITS == 64;
|
||||
enum __USE_LARGEFILE = __USE_FILE_OFFSET64 && !__REDIRECT;
|
||||
enum __USE_LARGEFILE64 = __USE_FILE_OFFSET64 && !__REDIRECT;
|
||||
|
||||
- enum __WORDSIZE=64;
|
||||
+ version (D_LP64)
|
||||
+ enum __WORDSIZE = 64;
|
||||
+ else
|
||||
+ enum __WORDSIZE = 32;
|
||||
}
|
||||
else version (CRuntime_UClibc)
|
||||
{
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
CTARGET_ARCH=armv7
|
||||
CTARGET="$(arch_to_hostspec ${CTARGET_ARCH})"
|
||||
LANG_D=false
|
||||
LANG_OBJC=false
|
||||
LANG_JAVA=false
|
||||
LANG_GO=false
|
||||
|
@ -29,9 +30,9 @@ pkgver=9.2.0
|
|||
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
||||
|
||||
pkgname="gcc-armv7"
|
||||
pkgrel=3
|
||||
pkgrel=4
|
||||
pkgdesc="Stage2 cross-compiler for armv7"
|
||||
url="http://gcc.gnu.org"
|
||||
url="https://gcc.gnu.org"
|
||||
arch="x86_64"
|
||||
license="GPL LGPL"
|
||||
_gccrel=$pkgver-r$pkgrel
|
||||
|
@ -43,6 +44,7 @@ subpackages="g++-armv7:gpp"
|
|||
replaces="libstdc++ binutils"
|
||||
|
||||
: ${LANG_CXX:=true}
|
||||
: ${LANG_D:=true}
|
||||
: ${LANG_OBJC:=true}
|
||||
: ${LANG_GO:=true}
|
||||
: ${LANG_FORTRAN:=true}
|
||||
|
@ -56,6 +58,7 @@ LIBITM="false"
|
|||
if [ "$CHOST" != "$CTARGET" ]; then
|
||||
if [ "$BOOTSTRAP" = nolibc ]; then
|
||||
LANG_CXX=false
|
||||
LANG_D=false
|
||||
LANG_ADA=false
|
||||
LIBGCC=false
|
||||
_builddir="$srcdir/build-cross-pass2"
|
||||
|
@ -109,6 +112,10 @@ else
|
|||
_builddir="$srcdir/build"
|
||||
fi
|
||||
|
||||
# GDC hasn't been ported to PowerPC
|
||||
# See libphobos/configure.tgt in GCC sources for supported targets
|
||||
[ "$CARCH" = ppc64le ] && LANG_D=false
|
||||
|
||||
# Go needs {set,make,swap}context, unimplemented in musl
|
||||
[ "$CTARGET_LIBC" = musl ] && LANG_GO=false
|
||||
|
||||
|
@ -139,6 +146,10 @@ _languages=c
|
|||
if $LANG_CXX; then
|
||||
_languages="$_languages,c++"
|
||||
fi
|
||||
if $LANG_D; then
|
||||
subpackages="$subpackages libgphobos::$CTARGET_ARCH gcc-gdc$_target:gdc"
|
||||
_languages="$_languages,d"
|
||||
fi
|
||||
if $LANG_OBJC; then
|
||||
subpackages="$subpackages libobjc::$CTARGET_ARCH gcc-objc$_target:objc"
|
||||
_languages="$_languages,objc"
|
||||
|
@ -195,6 +206,9 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkg
|
|||
gcc-pure64-mips.patch
|
||||
0016-invalid_tls_model.patch
|
||||
gcc10-pr91920.patch
|
||||
|
||||
400-dlang-phobos.patch
|
||||
401-dlang-32bits.patch
|
||||
"
|
||||
|
||||
# gcc-4.8-build-args.patch
|
||||
|
@ -606,4 +620,6 @@ a1f7750bc7b8b7d916a5dee34fcc736bd4fb249c96538b547d495794e6cfd49356aa3974506a1507
|
|||
f4ef08454e28c8732db69115e4998ec153399e8d229dd27f923dbdcf57b68128a65640d026cc7f45b58ba8764ab1eb575d4eb6d6dfc550a87a183f8b94e76181 320-libffi-gnulinux.patch
|
||||
86be3338cc9c33089608bc4c5e3b7918c4e500a345c338f361b18c342119a6ed69af5495d72950de7106d760f003528b46ad14795e805f8a3331e206dcb234e3 gcc-pure64-mips.patch
|
||||
17e0faeef742d32d57a070d983480367dd28cd28d47a8966ce327afdff3a38ea76803a833c90aff7d3a93aa66dae76c9be47b2408500913b40571af25b85aca7 0016-invalid_tls_model.patch
|
||||
e9fef7677f9541848cd1df0bf3c330f06f1369bdf1d228238b7f1d03d8f2c4be07fd62be503b7bf72b6b1e2d4e404ddd957157b56b8050e3657820ade77491aa gcc10-pr91920.patch"
|
||||
e9fef7677f9541848cd1df0bf3c330f06f1369bdf1d228238b7f1d03d8f2c4be07fd62be503b7bf72b6b1e2d4e404ddd957157b56b8050e3657820ade77491aa gcc10-pr91920.patch
|
||||
38772c5b0905455a44c43d6ef7e5f140530006e2bde9f5ffd6b569c7cf9633992515f666b486d7a78c30ab8da99b92b2775c90fde47821ae542ef1c49dc405df 400-dlang-phobos.patch
|
||||
84bdbdfcb972161765b81220ea2e80e83c32f3ab27596b77eb451d8cac4bd6312210df468581c2b0e1363f5e3b31654e369c47ae84c907f3b54a1786d7c17830 401-dlang-32bits.patch"
|
||||
|
|
Loading…
Reference in a new issue