cross/gcc-*: upgrade to 12.1.1_git20220630-r5
Removed isl as described in pmaports issue 2167. Verified locally that gcc-aarch64 builds. Tried to test building packages with it, but wasn't possible with the local build due to a bug, I'll create an issue and link it in pmaports issue 2167. Pushing this now as it's a critical fix, should work in theory as soon as the binary packages are built on bpo, and right now it's broken anyway.
This commit is contained in:
parent
979cc0bfb6
commit
cd43a0b58e
3 changed files with 210 additions and 108 deletions
|
@ -31,13 +31,13 @@ pkgver=12.1.1_git20220630
|
||||||
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
||||||
|
|
||||||
pkgname=gcc-aarch64
|
pkgname=gcc-aarch64
|
||||||
pkgrel=1
|
pkgrel=5
|
||||||
pkgdesc="Stage2 cross-compiler for aarch64"
|
pkgdesc="Stage2 cross-compiler for aarch64"
|
||||||
url="https://gcc.gnu.org"
|
url="https://gcc.gnu.org"
|
||||||
arch="x86_64"
|
arch="x86_64"
|
||||||
license="GPL-2.0-or-later LGPL-2.1-or-later"
|
license="GPL-2.0-or-later LGPL-2.1-or-later"
|
||||||
_gccrel=$pkgver-r$pkgrel
|
_gccrel=$pkgver-r$pkgrel
|
||||||
depends="isl binutils-aarch64 mpc1"
|
depends="binutils-aarch64 mpc1"
|
||||||
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
|
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
|
||||||
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-aarch64 binutils-aarch64"
|
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-aarch64 binutils-aarch64"
|
||||||
subpackages="g++-aarch64:gpp"
|
subpackages="g++-aarch64:gpp"
|
||||||
|
@ -198,7 +198,6 @@ if $LANG_ADA; then
|
||||||
fi
|
fi
|
||||||
if $LANG_JIT; then
|
if $LANG_JIT; then
|
||||||
subpackages="$subpackages libgccjit:jit libgccjit-dev:jitdev"
|
subpackages="$subpackages libgccjit:jit libgccjit-dev:jitdev"
|
||||||
_languages="$_languages,jit"
|
|
||||||
fi
|
fi
|
||||||
makedepends="$makedepends_build $makedepends_host"
|
makedepends="$makedepends_build $makedepends_host"
|
||||||
|
|
||||||
|
@ -340,8 +339,6 @@ build() {
|
||||||
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
|
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
$LANG_JIT && _jit_configure="--enable-host-shared"
|
|
||||||
|
|
||||||
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
|
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
|
||||||
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
|
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
|
||||||
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
|
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
|
||||||
|
@ -359,50 +356,77 @@ build() {
|
||||||
echo " libc_configure=$_libc_configure"
|
echo " libc_configure=$_libc_configure"
|
||||||
echo " cross_configure=$_cross_configure"
|
echo " cross_configure=$_cross_configure"
|
||||||
echo " bootstrap_configure=$_bootstrap_configure"
|
echo " bootstrap_configure=$_bootstrap_configure"
|
||||||
echo " hash_style_configure=$_hash_style_configure"
|
echo " hash_style_configure=$_hash_style_configure"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
export CFLAGS="$CFLAGS -O2"
|
export CFLAGS="$CFLAGS -O2"
|
||||||
export CXXFLAGS="$CXXFLAGS -O2"
|
export CXXFLAGS="$CXXFLAGS -O2"
|
||||||
export CPPFLAGS="$CPPFLAGS -O2"
|
export CPPFLAGS="$CPPFLAGS -O2"
|
||||||
|
|
||||||
|
local version="Alpine $pkgver-r$pkgrel"
|
||||||
|
local gccconfiguration="
|
||||||
|
--prefix=/usr
|
||||||
|
--mandir=/usr/share/man
|
||||||
|
--infodir=/usr/share/info
|
||||||
|
--build=${CBUILD}
|
||||||
|
--host=${CHOST}
|
||||||
|
--target=${CTARGET}
|
||||||
|
--enable-checking=release
|
||||||
|
--disable-fixed-point
|
||||||
|
--disable-libstdcxx-pch
|
||||||
|
--disable-multilib
|
||||||
|
--disable-nls
|
||||||
|
--disable-werror
|
||||||
|
$_symvers
|
||||||
|
--enable-__cxa_atexit
|
||||||
|
--enable-default-pie
|
||||||
|
--enable-default-ssp
|
||||||
|
--enable-cloog-backend
|
||||||
|
--enable-languages=$_languages
|
||||||
|
$_arch_configure
|
||||||
|
$_libc_configure
|
||||||
|
$_cross_configure
|
||||||
|
$_bootstrap_configure
|
||||||
|
--with-bugurl=https://gitlab.alpinelinux.org/alpine/aports/-/issues
|
||||||
|
--with-system-zlib
|
||||||
|
$_hash_style_configure
|
||||||
|
"
|
||||||
|
|
||||||
mkdir -p "$_builddir"
|
mkdir -p "$_builddir"
|
||||||
cd "$_builddir"
|
cd "$_builddir"
|
||||||
"$_gccdir"/configure --prefix=/usr \
|
"$_gccdir"/configure $gccconfiguration \
|
||||||
--mandir=/usr/share/man \
|
--with-pkgversion="$version"
|
||||||
--infodir=/usr/share/info \
|
|
||||||
--build=${CBUILD} \
|
msg "building gcc"
|
||||||
--host=${CHOST} \
|
|
||||||
--target=${CTARGET} \
|
|
||||||
--with-pkgversion="Alpine $pkgver" \
|
|
||||||
--enable-checking=release \
|
|
||||||
--disable-fixed-point \
|
|
||||||
--disable-libstdcxx-pch \
|
|
||||||
--disable-multilib \
|
|
||||||
--disable-nls \
|
|
||||||
--disable-werror \
|
|
||||||
$_symvers \
|
|
||||||
--enable-__cxa_atexit \
|
|
||||||
--enable-default-pie \
|
|
||||||
--enable-default-ssp \
|
|
||||||
--enable-cloog-backend \
|
|
||||||
--enable-languages=$_languages \
|
|
||||||
$_arch_configure \
|
|
||||||
$_libc_configure \
|
|
||||||
$_cross_configure \
|
|
||||||
$_bootstrap_configure \
|
|
||||||
$_jit_configure \
|
|
||||||
--with-system-zlib \
|
|
||||||
$_hash_style_configure
|
|
||||||
make
|
make
|
||||||
|
|
||||||
|
# we build gccjit separate to not build all of gcc with --enable-host-shared
|
||||||
|
# as doing so slows it down a few %, so for some quick if's here we gain
|
||||||
|
# free performance
|
||||||
|
if $LANG_JIT; then
|
||||||
|
mkdir -p "$_builddir"/libgccjit-build
|
||||||
|
cd "$_builddir"/libgccjit-build
|
||||||
|
"$_gccdir"/configure $gccconfiguration \
|
||||||
|
--disable-bootstrap \
|
||||||
|
--enable-host-shared \
|
||||||
|
--enable-languages=jit \
|
||||||
|
--with-pkgversion="$version"
|
||||||
|
|
||||||
|
msg "building libgccjit"
|
||||||
|
make all-gcc
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
package() {
|
package() {
|
||||||
cd "$_builddir"
|
cd "$_builddir"
|
||||||
make -j1 DESTDIR="$pkgdir" install
|
make DESTDIR="$pkgdir" install
|
||||||
|
|
||||||
ln -s gcc "$pkgdir"/usr/bin/cc
|
ln -s gcc "$pkgdir"/usr/bin/cc
|
||||||
|
|
||||||
|
if $LANG_JIT; then
|
||||||
|
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
|
||||||
|
fi
|
||||||
|
|
||||||
# we dont support gcj -static
|
# we dont support gcj -static
|
||||||
# and saving 35MB is not bad.
|
# and saving 35MB is not bad.
|
||||||
find "$pkgdir" \( -name libgtkpeer.a \
|
find "$pkgdir" \( -name libgtkpeer.a \
|
||||||
|
@ -526,9 +550,21 @@ libcxx() {
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
|
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
libcxx_dev() {
|
||||||
|
pkgdesc="GNU C++ standard runtime library (development files)"
|
||||||
|
depends=
|
||||||
|
replaces="g++"
|
||||||
|
|
||||||
|
amove usr/lib/libstdc++.a \
|
||||||
|
usr/lib/libstdc++.so \
|
||||||
|
usr/lib/libstdc++fs.a \
|
||||||
|
usr/lib/libsupc++.a \
|
||||||
|
usr/include/c++
|
||||||
|
}
|
||||||
|
|
||||||
gpp() {
|
gpp() {
|
||||||
pkgdesc="GNU C++ standard library and compiler"
|
pkgdesc="GNU C++ standard library and compiler"
|
||||||
depends="libstdc++=$_gccrel gcc=$_gccrel libc-dev"
|
depends="libstdc++=$_gccrel libstdc++-dev=$_gccrel gcc=$_gccrel libc-dev"
|
||||||
mkdir -p "$subpkgdir/$_gcclibexec" \
|
mkdir -p "$subpkgdir/$_gcclibexec" \
|
||||||
"$subpkgdir"/usr/bin \
|
"$subpkgdir"/usr/bin \
|
||||||
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
|
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
|
||||||
|
@ -536,8 +572,6 @@ gpp() {
|
||||||
|
|
||||||
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
|
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
|
||||||
|
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/*++* "$subpkgdir"/usr/${_target:+$CTARGET/}lib/
|
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}include/c++ "$subpkgdir"/usr/${_target:+$CTARGET/}include/
|
|
||||||
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
|
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,13 +31,13 @@ pkgver=12.1.1_git20220630
|
||||||
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
||||||
|
|
||||||
pkgname=gcc-armhf
|
pkgname=gcc-armhf
|
||||||
pkgrel=1
|
pkgrel=5
|
||||||
pkgdesc="Stage2 cross-compiler for armhf"
|
pkgdesc="Stage2 cross-compiler for armhf"
|
||||||
url="https://gcc.gnu.org"
|
url="https://gcc.gnu.org"
|
||||||
arch="x86_64"
|
arch="x86_64"
|
||||||
license="GPL-2.0-or-later LGPL-2.1-or-later"
|
license="GPL-2.0-or-later LGPL-2.1-or-later"
|
||||||
_gccrel=$pkgver-r$pkgrel
|
_gccrel=$pkgver-r$pkgrel
|
||||||
depends="isl binutils-armhf mpc1"
|
depends="binutils-armhf mpc1"
|
||||||
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
|
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
|
||||||
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-armhf binutils-armhf"
|
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-armhf binutils-armhf"
|
||||||
subpackages="g++-armhf:gpp"
|
subpackages="g++-armhf:gpp"
|
||||||
|
@ -198,7 +198,6 @@ if $LANG_ADA; then
|
||||||
fi
|
fi
|
||||||
if $LANG_JIT; then
|
if $LANG_JIT; then
|
||||||
subpackages="$subpackages libgccjit:jit libgccjit-dev:jitdev"
|
subpackages="$subpackages libgccjit:jit libgccjit-dev:jitdev"
|
||||||
_languages="$_languages,jit"
|
|
||||||
fi
|
fi
|
||||||
makedepends="$makedepends_build $makedepends_host"
|
makedepends="$makedepends_build $makedepends_host"
|
||||||
|
|
||||||
|
@ -340,8 +339,6 @@ build() {
|
||||||
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
|
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
$LANG_JIT && _jit_configure="--enable-host-shared"
|
|
||||||
|
|
||||||
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
|
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
|
||||||
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
|
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
|
||||||
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
|
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
|
||||||
|
@ -359,50 +356,77 @@ build() {
|
||||||
echo " libc_configure=$_libc_configure"
|
echo " libc_configure=$_libc_configure"
|
||||||
echo " cross_configure=$_cross_configure"
|
echo " cross_configure=$_cross_configure"
|
||||||
echo " bootstrap_configure=$_bootstrap_configure"
|
echo " bootstrap_configure=$_bootstrap_configure"
|
||||||
echo " hash_style_configure=$_hash_style_configure"
|
echo " hash_style_configure=$_hash_style_configure"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
export CFLAGS="$CFLAGS -O2"
|
export CFLAGS="$CFLAGS -O2"
|
||||||
export CXXFLAGS="$CXXFLAGS -O2"
|
export CXXFLAGS="$CXXFLAGS -O2"
|
||||||
export CPPFLAGS="$CPPFLAGS -O2"
|
export CPPFLAGS="$CPPFLAGS -O2"
|
||||||
|
|
||||||
|
local version="Alpine $pkgver-r$pkgrel"
|
||||||
|
local gccconfiguration="
|
||||||
|
--prefix=/usr
|
||||||
|
--mandir=/usr/share/man
|
||||||
|
--infodir=/usr/share/info
|
||||||
|
--build=${CBUILD}
|
||||||
|
--host=${CHOST}
|
||||||
|
--target=${CTARGET}
|
||||||
|
--enable-checking=release
|
||||||
|
--disable-fixed-point
|
||||||
|
--disable-libstdcxx-pch
|
||||||
|
--disable-multilib
|
||||||
|
--disable-nls
|
||||||
|
--disable-werror
|
||||||
|
$_symvers
|
||||||
|
--enable-__cxa_atexit
|
||||||
|
--enable-default-pie
|
||||||
|
--enable-default-ssp
|
||||||
|
--enable-cloog-backend
|
||||||
|
--enable-languages=$_languages
|
||||||
|
$_arch_configure
|
||||||
|
$_libc_configure
|
||||||
|
$_cross_configure
|
||||||
|
$_bootstrap_configure
|
||||||
|
--with-bugurl=https://gitlab.alpinelinux.org/alpine/aports/-/issues
|
||||||
|
--with-system-zlib
|
||||||
|
$_hash_style_configure
|
||||||
|
"
|
||||||
|
|
||||||
mkdir -p "$_builddir"
|
mkdir -p "$_builddir"
|
||||||
cd "$_builddir"
|
cd "$_builddir"
|
||||||
"$_gccdir"/configure --prefix=/usr \
|
"$_gccdir"/configure $gccconfiguration \
|
||||||
--mandir=/usr/share/man \
|
--with-pkgversion="$version"
|
||||||
--infodir=/usr/share/info \
|
|
||||||
--build=${CBUILD} \
|
msg "building gcc"
|
||||||
--host=${CHOST} \
|
|
||||||
--target=${CTARGET} \
|
|
||||||
--with-pkgversion="Alpine $pkgver" \
|
|
||||||
--enable-checking=release \
|
|
||||||
--disable-fixed-point \
|
|
||||||
--disable-libstdcxx-pch \
|
|
||||||
--disable-multilib \
|
|
||||||
--disable-nls \
|
|
||||||
--disable-werror \
|
|
||||||
$_symvers \
|
|
||||||
--enable-__cxa_atexit \
|
|
||||||
--enable-default-pie \
|
|
||||||
--enable-default-ssp \
|
|
||||||
--enable-cloog-backend \
|
|
||||||
--enable-languages=$_languages \
|
|
||||||
$_arch_configure \
|
|
||||||
$_libc_configure \
|
|
||||||
$_cross_configure \
|
|
||||||
$_bootstrap_configure \
|
|
||||||
$_jit_configure \
|
|
||||||
--with-system-zlib \
|
|
||||||
$_hash_style_configure
|
|
||||||
make
|
make
|
||||||
|
|
||||||
|
# we build gccjit separate to not build all of gcc with --enable-host-shared
|
||||||
|
# as doing so slows it down a few %, so for some quick if's here we gain
|
||||||
|
# free performance
|
||||||
|
if $LANG_JIT; then
|
||||||
|
mkdir -p "$_builddir"/libgccjit-build
|
||||||
|
cd "$_builddir"/libgccjit-build
|
||||||
|
"$_gccdir"/configure $gccconfiguration \
|
||||||
|
--disable-bootstrap \
|
||||||
|
--enable-host-shared \
|
||||||
|
--enable-languages=jit \
|
||||||
|
--with-pkgversion="$version"
|
||||||
|
|
||||||
|
msg "building libgccjit"
|
||||||
|
make all-gcc
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
package() {
|
package() {
|
||||||
cd "$_builddir"
|
cd "$_builddir"
|
||||||
make -j1 DESTDIR="$pkgdir" install
|
make DESTDIR="$pkgdir" install
|
||||||
|
|
||||||
ln -s gcc "$pkgdir"/usr/bin/cc
|
ln -s gcc "$pkgdir"/usr/bin/cc
|
||||||
|
|
||||||
|
if $LANG_JIT; then
|
||||||
|
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
|
||||||
|
fi
|
||||||
|
|
||||||
# we dont support gcj -static
|
# we dont support gcj -static
|
||||||
# and saving 35MB is not bad.
|
# and saving 35MB is not bad.
|
||||||
find "$pkgdir" \( -name libgtkpeer.a \
|
find "$pkgdir" \( -name libgtkpeer.a \
|
||||||
|
@ -526,9 +550,21 @@ libcxx() {
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
|
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
libcxx_dev() {
|
||||||
|
pkgdesc="GNU C++ standard runtime library (development files)"
|
||||||
|
depends=
|
||||||
|
replaces="g++"
|
||||||
|
|
||||||
|
amove usr/lib/libstdc++.a \
|
||||||
|
usr/lib/libstdc++.so \
|
||||||
|
usr/lib/libstdc++fs.a \
|
||||||
|
usr/lib/libsupc++.a \
|
||||||
|
usr/include/c++
|
||||||
|
}
|
||||||
|
|
||||||
gpp() {
|
gpp() {
|
||||||
pkgdesc="GNU C++ standard library and compiler"
|
pkgdesc="GNU C++ standard library and compiler"
|
||||||
depends="libstdc++=$_gccrel gcc=$_gccrel libc-dev"
|
depends="libstdc++=$_gccrel libstdc++-dev=$_gccrel gcc=$_gccrel libc-dev"
|
||||||
mkdir -p "$subpkgdir/$_gcclibexec" \
|
mkdir -p "$subpkgdir/$_gcclibexec" \
|
||||||
"$subpkgdir"/usr/bin \
|
"$subpkgdir"/usr/bin \
|
||||||
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
|
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
|
||||||
|
@ -536,8 +572,6 @@ gpp() {
|
||||||
|
|
||||||
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
|
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
|
||||||
|
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/*++* "$subpkgdir"/usr/${_target:+$CTARGET/}lib/
|
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}include/c++ "$subpkgdir"/usr/${_target:+$CTARGET/}include/
|
|
||||||
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
|
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,13 +31,13 @@ pkgver=12.1.1_git20220630
|
||||||
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
|
||||||
|
|
||||||
pkgname=gcc-armv7
|
pkgname=gcc-armv7
|
||||||
pkgrel=1
|
pkgrel=5
|
||||||
pkgdesc="Stage2 cross-compiler for armv7"
|
pkgdesc="Stage2 cross-compiler for armv7"
|
||||||
url="https://gcc.gnu.org"
|
url="https://gcc.gnu.org"
|
||||||
arch="x86_64"
|
arch="x86_64"
|
||||||
license="GPL-2.0-or-later LGPL-2.1-or-later"
|
license="GPL-2.0-or-later LGPL-2.1-or-later"
|
||||||
_gccrel=$pkgver-r$pkgrel
|
_gccrel=$pkgver-r$pkgrel
|
||||||
depends="isl binutils-armv7 mpc1"
|
depends="binutils-armv7 mpc1"
|
||||||
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
|
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
|
||||||
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-armv7 binutils-armv7"
|
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-armv7 binutils-armv7"
|
||||||
subpackages="g++-armv7:gpp"
|
subpackages="g++-armv7:gpp"
|
||||||
|
@ -198,7 +198,6 @@ if $LANG_ADA; then
|
||||||
fi
|
fi
|
||||||
if $LANG_JIT; then
|
if $LANG_JIT; then
|
||||||
subpackages="$subpackages libgccjit:jit libgccjit-dev:jitdev"
|
subpackages="$subpackages libgccjit:jit libgccjit-dev:jitdev"
|
||||||
_languages="$_languages,jit"
|
|
||||||
fi
|
fi
|
||||||
makedepends="$makedepends_build $makedepends_host"
|
makedepends="$makedepends_build $makedepends_host"
|
||||||
|
|
||||||
|
@ -340,8 +339,6 @@ build() {
|
||||||
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
|
*) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
$LANG_JIT && _jit_configure="--enable-host-shared"
|
|
||||||
|
|
||||||
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
|
$_libgomp || _bootstrap_configure="$_bootstrap_configure --disable-libgomp"
|
||||||
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
|
$_libatomic || _bootstrap_configure="$_bootstrap_configure --disable-libatomic"
|
||||||
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
|
$_libitm || _bootstrap_configure="$_bootstrap_configure --disable-libitm"
|
||||||
|
@ -359,50 +356,77 @@ build() {
|
||||||
echo " libc_configure=$_libc_configure"
|
echo " libc_configure=$_libc_configure"
|
||||||
echo " cross_configure=$_cross_configure"
|
echo " cross_configure=$_cross_configure"
|
||||||
echo " bootstrap_configure=$_bootstrap_configure"
|
echo " bootstrap_configure=$_bootstrap_configure"
|
||||||
echo " hash_style_configure=$_hash_style_configure"
|
echo " hash_style_configure=$_hash_style_configure"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
export CFLAGS="$CFLAGS -O2"
|
export CFLAGS="$CFLAGS -O2"
|
||||||
export CXXFLAGS="$CXXFLAGS -O2"
|
export CXXFLAGS="$CXXFLAGS -O2"
|
||||||
export CPPFLAGS="$CPPFLAGS -O2"
|
export CPPFLAGS="$CPPFLAGS -O2"
|
||||||
|
|
||||||
|
local version="Alpine $pkgver-r$pkgrel"
|
||||||
|
local gccconfiguration="
|
||||||
|
--prefix=/usr
|
||||||
|
--mandir=/usr/share/man
|
||||||
|
--infodir=/usr/share/info
|
||||||
|
--build=${CBUILD}
|
||||||
|
--host=${CHOST}
|
||||||
|
--target=${CTARGET}
|
||||||
|
--enable-checking=release
|
||||||
|
--disable-fixed-point
|
||||||
|
--disable-libstdcxx-pch
|
||||||
|
--disable-multilib
|
||||||
|
--disable-nls
|
||||||
|
--disable-werror
|
||||||
|
$_symvers
|
||||||
|
--enable-__cxa_atexit
|
||||||
|
--enable-default-pie
|
||||||
|
--enable-default-ssp
|
||||||
|
--enable-cloog-backend
|
||||||
|
--enable-languages=$_languages
|
||||||
|
$_arch_configure
|
||||||
|
$_libc_configure
|
||||||
|
$_cross_configure
|
||||||
|
$_bootstrap_configure
|
||||||
|
--with-bugurl=https://gitlab.alpinelinux.org/alpine/aports/-/issues
|
||||||
|
--with-system-zlib
|
||||||
|
$_hash_style_configure
|
||||||
|
"
|
||||||
|
|
||||||
mkdir -p "$_builddir"
|
mkdir -p "$_builddir"
|
||||||
cd "$_builddir"
|
cd "$_builddir"
|
||||||
"$_gccdir"/configure --prefix=/usr \
|
"$_gccdir"/configure $gccconfiguration \
|
||||||
--mandir=/usr/share/man \
|
--with-pkgversion="$version"
|
||||||
--infodir=/usr/share/info \
|
|
||||||
--build=${CBUILD} \
|
msg "building gcc"
|
||||||
--host=${CHOST} \
|
|
||||||
--target=${CTARGET} \
|
|
||||||
--with-pkgversion="Alpine $pkgver" \
|
|
||||||
--enable-checking=release \
|
|
||||||
--disable-fixed-point \
|
|
||||||
--disable-libstdcxx-pch \
|
|
||||||
--disable-multilib \
|
|
||||||
--disable-nls \
|
|
||||||
--disable-werror \
|
|
||||||
$_symvers \
|
|
||||||
--enable-__cxa_atexit \
|
|
||||||
--enable-default-pie \
|
|
||||||
--enable-default-ssp \
|
|
||||||
--enable-cloog-backend \
|
|
||||||
--enable-languages=$_languages \
|
|
||||||
$_arch_configure \
|
|
||||||
$_libc_configure \
|
|
||||||
$_cross_configure \
|
|
||||||
$_bootstrap_configure \
|
|
||||||
$_jit_configure \
|
|
||||||
--with-system-zlib \
|
|
||||||
$_hash_style_configure
|
|
||||||
make
|
make
|
||||||
|
|
||||||
|
# we build gccjit separate to not build all of gcc with --enable-host-shared
|
||||||
|
# as doing so slows it down a few %, so for some quick if's here we gain
|
||||||
|
# free performance
|
||||||
|
if $LANG_JIT; then
|
||||||
|
mkdir -p "$_builddir"/libgccjit-build
|
||||||
|
cd "$_builddir"/libgccjit-build
|
||||||
|
"$_gccdir"/configure $gccconfiguration \
|
||||||
|
--disable-bootstrap \
|
||||||
|
--enable-host-shared \
|
||||||
|
--enable-languages=jit \
|
||||||
|
--with-pkgversion="$version"
|
||||||
|
|
||||||
|
msg "building libgccjit"
|
||||||
|
make all-gcc
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
package() {
|
package() {
|
||||||
cd "$_builddir"
|
cd "$_builddir"
|
||||||
make -j1 DESTDIR="$pkgdir" install
|
make DESTDIR="$pkgdir" install
|
||||||
|
|
||||||
ln -s gcc "$pkgdir"/usr/bin/cc
|
ln -s gcc "$pkgdir"/usr/bin/cc
|
||||||
|
|
||||||
|
if $LANG_JIT; then
|
||||||
|
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
|
||||||
|
fi
|
||||||
|
|
||||||
# we dont support gcj -static
|
# we dont support gcj -static
|
||||||
# and saving 35MB is not bad.
|
# and saving 35MB is not bad.
|
||||||
find "$pkgdir" \( -name libgtkpeer.a \
|
find "$pkgdir" \( -name libgtkpeer.a \
|
||||||
|
@ -526,9 +550,21 @@ libcxx() {
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
|
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/libstdc++.so.* "$subpkgdir"/usr/lib/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
libcxx_dev() {
|
||||||
|
pkgdesc="GNU C++ standard runtime library (development files)"
|
||||||
|
depends=
|
||||||
|
replaces="g++"
|
||||||
|
|
||||||
|
amove usr/lib/libstdc++.a \
|
||||||
|
usr/lib/libstdc++.so \
|
||||||
|
usr/lib/libstdc++fs.a \
|
||||||
|
usr/lib/libsupc++.a \
|
||||||
|
usr/include/c++
|
||||||
|
}
|
||||||
|
|
||||||
gpp() {
|
gpp() {
|
||||||
pkgdesc="GNU C++ standard library and compiler"
|
pkgdesc="GNU C++ standard library and compiler"
|
||||||
depends="libstdc++=$_gccrel gcc=$_gccrel libc-dev"
|
depends="libstdc++=$_gccrel libstdc++-dev=$_gccrel gcc=$_gccrel libc-dev"
|
||||||
mkdir -p "$subpkgdir/$_gcclibexec" \
|
mkdir -p "$subpkgdir/$_gcclibexec" \
|
||||||
"$subpkgdir"/usr/bin \
|
"$subpkgdir"/usr/bin \
|
||||||
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
|
"$subpkgdir"/usr/${_target:+$CTARGET/}include \
|
||||||
|
@ -536,8 +572,6 @@ gpp() {
|
||||||
|
|
||||||
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
|
mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
|
||||||
|
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}lib/*++* "$subpkgdir"/usr/${_target:+$CTARGET/}lib/
|
|
||||||
mv "$pkgdir"/usr/${_target:+$CTARGET/}include/c++ "$subpkgdir"/usr/${_target:+$CTARGET/}include/
|
|
||||||
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
|
mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue