# Maintainer: Natanael Copa pkgname=gcc pkgver=4.8.2 _uclibc_abiver=0.9.32 _cross="" [ "$BOOTSTRAP" = "noheaders" ] && pkgname="gcc-pass1" [ "$BOOTSTRAP" = "nolibc" ] && pkgname="gcc-pass2" [ "$CHOST" != "$CTARGET" ] && [ -n "$CHOST" -a -n "$CTARGET" ] \ && _cross="-$CTARGET" pkgname="$pkgname$_cross" pkgrel=6 pkgdesc="The GNU Compiler Collection" url="http://gcc.gnu.org" arch="all" license="GPL LGPL" _gccrel=$pkgver-r$pkgrel depends="binutils$_cross" makedepends_build="paxctl bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev cloog-dev" makedepends_host="gmp-dev mpfr-dev mpc1-dev zlib-dev cloog-dev !libiconv-dev !gettext-dev" makedepends="$makedepends_build $makedepends_host" subpackages=" " [ "$CHOST" = "$CTARGET" ] && subpackages="gcc-doc$_cross" replaces="libstdc++" : ${LANG_CXX:=true} : ${LANG_OBJC:=true} : ${LANG_JAVA:=true} : ${LANG_GO:=true} : ${LANG_FORTRAN:=true} : ${LANG_ADA:=true} LIBGOMP=true LIBGCC=true LIBATOMIC=true LIBITM=true if [ "$CHOST" != "$CTARGET" ] && [ -n "$CHOST" -a -n "$CTARGET" ]; then if [ "$BOOTSTRAP" ]; then LANG_CXX=false LANG_ADA=false LIBGCC=false _builddir="$srcdir/build-cross-pass2" else _builddir="$srcdir/build-cross-final" fi LANG_OBJC=false LANG_JAVA=false LANG_GO=false LANG_FORTRAN=false LIBGOMP=false LIBATOMIC=false LIBITM=false # reset target flags (should be set in crosscreate abuild) # fixup flags. seems gcc treats CPPFLAGS as global without # _FOR_xxx variants. wrap it in CFLAGS and CXXFLAGS. export CFLAGS="$CPPFLAGS $CFLAGS" export CXXFLAGS="$CPPFLAGS $CXXFLAGS" unset CPPFLAGS export CFLAGS_FOR_TARGET=" " export CXXFLAGS_FOR_TARGET=" " export LDFLAGS_FOR_TARGET=" " STRIP_FOR_TARGET="$CTARGET-strip" elif [ "$CBUILD" != "$CHOST" ] && [ -n "$CBUILD" -a -n "$CHOST" ]; then # fixup flags. seems gcc treats CPPFLAGS as global without # _FOR_xxx variants. wrap it in CFLAGS and CXXFLAGS. export CFLAGS="$CPPFLAGS $CFLAGS" export CXXFLAGS="$CPPFLAGS $CXXFLAGS" unset CPPFLAGS # reset flags and cc for build export CC_FOR_BUILD="gcc" export CXX_FOR_BUILD="g++" export CFLAGS_FOR_BUILD=" " export CXXFLAGS_FOR_BUILD=" " export LDFLAGS_FOR_BUILD=" " # Languages that do not need bootstrapping LANG_OBJC=false LANG_JAVA=false LANG_GO=false LANG_FORTRAN=false STRIP_FOR_TARGET=${CROSS_COMPILE}strip _builddir="$srcdir/build-cross-native" else STRIP_FOR_TARGET=${CROSS_COMPILE}strip _builddir="$srcdir/build" fi # Go needs {set,make,swap}context, unimplemented in musl [ "$CTARGET_LIBC" = musl ] && LANG_GO=false # libitm has TEXTRELs in ARM build, so disable for now case "$CTARGET_ARCH" in arm*) LIBITM=false ;; esac # Fortran uses libquadmath if toolchain has __float128 # currently on x86, x86_64 and ia64 LIBQUADMATH=$LANG_FORTRAN case "$CTARGET_ARCH" in x86 | x86_64) LIBQUADMATH=$LANG_FORTRAN ;; *) LIBQUADMATH=false ;; esac $LIBGCC && subpackages="$subpackages libgcc" $LIBQUADMATH && subpackages="$subpackages libquadmath" if $LIBGOMP; then depends="$depends libgomp=$_gccrel" subpackages="$subpackages libgomp" fi _languages=c if $LANG_CXX; then subpackages="$subpackages libstdc++:libcxx g++$_cross:gpp" _languages="$_languages,c++" fi if $LANG_OBJC; then subpackages="$subpackages libobjc gcc-objc$_cross:objc" _languages="$_languages,objc" fi if $LANG_JAVA; then subpackages="$subpackages libgcj gcc-java$_cross:java" _languages="$_languages,java" fi if $LANG_GO; then subpackages="$subpackages libgo gcc-go$_cross:go" _languages="$_languages,go" fi if $LANG_FORTRAN; then subpackages="$subpackages libgfortran gfortran$_cross:gfortran" _languages="$_languages,fortran" fi if $LANG_ADA; then subpackages="$subpackages libgnat gcc-gnat$_cross:gnat" _languages="$_languages,ada" makedepends="$makedepends gcc-gnat" fi source="ftp://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-$pkgver.tar.bz2 ftp://sourceware.org/pub/java/ecj-latest.jar 01_all_gcc48_configure.patch 02_all_gcc48_config.in.patch 03_all_gcc48_Makefile.in.patch 05_all_gcc48_gcc.c.patch 16_all_gcc47_nopie_option.patch 20_all_gcc46_config_crtbeginp.patch 24_all_gcc44_invoke.texi.patch 34_all_gcc48_config_i386.patch 35_all_gcc48_config_arm.patch 40_all_gcc48_config_esp.patch 41_all_gcc48_config_esp_relro.patch 12_all_default-warn-trampolines.patch 15_all_libgfortran-Werror.patch 16_all_libgomp-Werror.patch 48_all_x86_pr53113_libitm-avx.patch 50_all_libiberty-asprintf.patch 51_all_libiberty-pic.patch 67_all_gcc-poison-system-directories.patch 74_all_gcc48_cloog-dl.patch gcc-ice-hack.patch gcc-spec-env.patch libgcc-always-build-gcceh.a.patch pt_gnu_eh_frame.patch uclibc-getipinfo.patch gcc-4.6-pr32219.patch gcc-4.8-dynamic-linker.patch gcc-4.8-musl.patch gcc-4.8-musl-fix-iteratephdr.patch gcc-4.8-musl-libssp.patch boehm-gc-uclibc.patch boehm-gc-musl.patch gcc-pure64.patch pr49423.patch pr57748.patch fix-gcj-musl.patch fix-gcj-iconv-musl.patch gcc-4.8-build-args.patch fix-cxxflags-passing.patch fix-cxxflags-for-target.patch ada-no-pie.patch ada-fixes.patch ada-crossbuild.patch ada-shared.patch ada-musl.patch vanilla.specs hardenednossp.specs hardenednopie.specs hardenednopiessp.specs " # we build out-of-tree _gccdir="$srcdir"/gcc-$pkgver _gcclibdir=/usr/lib/gcc/${CTARGET}/$pkgver _gcclibexec=/usr/libexec/gcc/${CTARGET}/$pkgver prepare() { cd "$_gccdir" # verify we have set CHOST if [ -z "$CHOST" ]; then error "CHOST not set" return 1 fi # Gentoo, PIE and uclibc patches _err= for i in $source; do case "$i" in *.patch) msg "Applying $i" patch -p1 -F3 -i "$srcdir"/$i || _err="$_err $i" ;; esac done if [ -n "$_err" ]; then error "The following patches failed:" for i in $_err; do echo " $i" done return 1 fi # genautomata crashes with a "Bus Error" when compiled with PIC # mostly affecting cross-builds as on native build bootstrapping # somehow seems to build proper genautomata sed -i gcc/Makefile.in -e 's|^build/genautomata$(build_exeext) .*|& -fno-PIC|' \ || return 1 # enable hardened cflags by default # building gcc wih PIE seem to hit some strange bug. we probably run # out of some resource. so we disable PIE for gcc while enabling it # by default for everything else. local _hard_cflags="-DEFAULT_PIE_SSP" sed -e "/^ALL_CFLAGS/iHARD_CFLAGS = ${_hard_cflags}" \ -e 's|^ALL_CFLAGS = |ALL_CFLAGS = $(HARD_CFLAGS) |' \ -e 's|^ALL_CXXFLAGS = |ALL_CXXFLAGS = $(HARD_CFLAGS) |' \ -i gcc/Makefile.in || return 1 # see http://gcc.gnu.org/ml/java/2008-04/msg00027.html mv "$srcdir"/ecj-latest.jar ecj.jar echo ${pkgver} > gcc/BASE-VER } build() { local _dynamic_linker= local _arch_configure= local _libc_configure= local _cross_configure= local _bootstrap_configure= local _symvers= cd "$_gccdir" case "$CTARGET" in x86_64-*-uclibc) _dynamic_linker="--with-dynamic-linker=ld64-uClibc.so.$_uclibc_abiver" ;; *-uclibc) _dynamic_linker="--with-dynamic-linker=ld-uClibc.so.$_uclibc_abiver" ;; x86_64-*-gnu) _dynamic_linker="--with-dynamic-linker=ld-linux-x86-64.so.2" ;; *-gnu) _dynamic_linker="--with-dynamic-linker=ld-linux.so.2" ;; esac [ -n "$_dynamic_linker" ] && _dynamic_linker="--with-dynamic-linker-prefix=/lib $_dynamic_linker" case "$CTARGET" in armv7-*-*-*eabihf) _arch_configure="--with-arch=armv7-a --with-tune=cortex-a15 --with-fpu=vfpv3-d16 --with-float=hard --with-abi=aapcs-linux";; armv6-*-*-*eabihf) _arch_configure="--with-arch=armv6zk --with-tune=arm1176jzf-s --with-fpu=vfp --with-float=hard --with-abi=aapcs-linux";; i486-*-*-*) _arch_configure="--with-arch=i486 --with-tune=generic --enable-cld";; esac case "$CTARGET_LIBC" in musl) # musl does not support mudflap, or libsanitizer # alpine musl provides libssp_nonshared.a, so we don't need libssp either _libc_configure="--disable-libssp --disable-libmudflap --disable-libsanitizer" _symvers="--disable-symvers" export libat_cv_have_ifunc=no ;; uclibc) _libc_configure="--disable-libssp --without-system-libunwind" export gcc_cv_libc_provides_ssp=yes export libat_cv_have_ifunc=no ;; esac [ "$CBUILD" != "$CHOST" ] && _cross_configure="--disable-bootstrap" [ "$CHOST" != "$CTARGET" ] && _cross_configure="--disable-bootstrap --with-sysroot=$CBUILDROOT" case "$BOOTSTRAP" in noheaders) _bootstrap_configure="--with-newlib --without-headers --disable-shared --enable-threads=no" ;; nolibc) _bootstrap_configure="--with-newlib --disable-shared --enable-threads=no" ;; *) _bootstrap_configure="--enable-shared --enable-threads --enable-tls" ;; esac $LIBGOMP || _bootstrap_configure="$_bootstrap_configure --disable-libgomp" $LIBATOMIC || _bootstrap_configure="$_bootstrap_configure --disable-libatomic" $LIBITM || _bootstrap_configure="$_bootstrap_configure --disable-libitm" $LIBQUADMATH || _arch_configure="$_arch_configure --disable-libquadmath" msg "Building the following:" echo "" echo " CBUILD=$CBUILD" echo " CHOST=$CHOST" echo " CTARGET=$CTARGET" echo " CTARGET_ARCH=$CTARGET_ARCH" echo " CTARGET_LIBC=$CTARGET_LIBC" echo " languages=$_languages" echo " dynamic_linker=$_dynamic_linker" echo " arch_configure=$_arch_configure" echo " libc_configure=$_libc_configure" echo " cross_configure=$_cross_configure" echo " bootstrap_configure=$_bootstrap_configure" echo "" mkdir -p "$_builddir" cd "$_builddir" "$_gccdir"/configure --prefix=/usr \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --build=${CBUILD} \ --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-esp \ --enable-cloog-backend \ --enable-languages=$_languages \ $_arch_configure \ $_libc_configure \ $_cross_configure \ $_bootstrap_configure \ $_dynamic_linker \ --with-system-zlib \ || return 1 # fix ada bootstrap # piepatches adds -fstack-check to spec which breaks ada bootstrap # TODO: upstream this to piepatches export ADA_CFLAGS='-fno-stack-check' make || return 1 } package() { cd "$_builddir" make -j1 DESTDIR="${pkgdir}" install || return 1 find "$pkgdir" -name '*.la' -delete || return 1 ln -s gcc "$pkgdir"/usr/bin/cc # binutils provides libiberty.a rm -f "$pkgdir"/usr/lib/libiberty.a # install the specs local i for i in $source; do case "$i" in *.specs) install -m644 "$srcdir"/$i "$pkgdir"/$_gcclibdir/$i || return 1 ;; esac done # we dont support gcj -static # and saving 35MB is not bad. find "$pkgdir" -name libgcj.a -o -name libgtkpeer.a \ -o -name libgjsmalsa.a -o -name libgcj-tools.a \ -o -name libjvm.a -o -name libgij.a -o -name libgcj_bc.a \ -o -name libjavamath.a \ | xargs rm -f \ || return 1 # strip debug info from some statib 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 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 \) \ -a -type f` || return 1 if $LANG_JAVA; then sed -i -e 's/lib: /&%{static:%eJava programs cannot be linked statically}/' \ "$pkdir"/usr/lib/libgcj.spec fi # remove ffi rm -f "$pkgdir"/usr/lib/libffi* "$pkgdir"/usr/share/man/man3/ffi* find "$pkgdir" -name 'ffi*.h' | xargs rm -f mkdir -p "$pkgdir"/usr/share/gdb/python/auto-load/usr/lib mv "$pkgdir"/usr/lib/*-gdb.py \ "$pkgdir"/usr/share/gdb/python/auto-load/usr/lib/ paxctl -c -pmrs "$pkgdir"/$_gcclibexec/cc1 || return 1 # move ada runtime libs if $LANG_ADA; then for i in "$pkgdir"/$_gcclibdir/adalib/libgna*.so; do mv "$i" "$pkgdir"/usr/lib/ || return 1 ln -s ../../../../${i##*/} $i || return 1 done fi if [ "$CHOST" != "$CTARGET" ]; then # cross-gcc: remove any files that would conflict with the # native gcc package rm -rf "$pkgdir"/usr/bin/cc "$pkgdir"/usr/include "$pkgdir"/usr/share fi } libcxx() { pkgdesc="GNU C++ standard runtime library" depends= CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libstdc++.so.* "$subpkgdir"/usr/lib/ || \ cp -a "$pkgdir"/usr/$CTARGET/lib/libstdc++.so.* "$subpkgdir"/usr/lib/ || \ return 1 } gpp() { pkgdesc="GNU C++ standard library and compiler" depends="libstdc++=$_gccrel gcc=$_gccrel libc-dev" mkdir -p "$subpkgdir/$_gcclibexec" \ "$subpkgdir"/usr/bin \ "$subpkgdir"/usr/include \ "$subpkgdir"/usr/lib \ mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/" paxctl -c -pmrs "$subpkgdir/$_gcclibexec/cc1plus" || return 1 mv "$pkgdir"/usr/lib/*++* "$subpkgdir"/usr/lib/ mv "$pkgdir"/usr/include/c++ "$subpkgdir"/usr/include/ mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/ } libobjc() { pkgdesc="GNU Objective-C runtime" replaces="objc" depends= mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libobjc.so.* "$subpkgdir"/usr/lib/ } objc() { pkgdesc="GNU Objective-C" replaces="gcc" depends="libc-dev gcc=$_gccrel libobjc=$_gccrel" mkdir -p "$subpkgdir"/$_gcclibdir/include \ "$subpkgdir"/usr/lib \ || return 1 mv "$pkgdir"/$_gcclibdir/include/objc "$subpkgdir"/$_gcclibdir/include/ \ || return 1 mv "$pkgdir"/usr/lib/libobjc.so "$pkgdir"/usr/lib/libobjc.a \ "$subpkgdir"/usr/lib/ || return 1 } libgcc() { pkgdesc="GNU C compiler runtime libraries" depends= CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libgcc_s.so.* "$subpkgdir"/usr/lib/ || \ cp -a "$pkgdir"/usr/$CTARGET/lib/libgcc_s.so.* "$subpkgdir"/usr/lib/ || \ return 1 } libgomp() { pkgdesc="GCC shared-memory parallel programming API library" depends= replaces="gcc" CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libgomp.so.* "$subpkgdir"/usr/lib/ } java() { pkgdesc="Java support for GCC" depends="zlib-dev gcc=$_gccrel libgcj=$_gccrel" paxctl -c -pm "$pkgdir"/$_gcclibexec/ecj1 || return 1 mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib cd "$pkgdir"/usr/bin mv gcj gcj-dbtool gjavah gcjh jcf-dump "$subpkgdir"/usr/bin/ cd "$pkgdir" for i in $(find usr/ -name ecj1 -o -name jc1 -o -name jvgenmain); do mkdir -p "$subpkgdir"/${i%/*} mv "$pkgdir"/$i "$subpkgdir"/$i || return 1 done for i in "$pkgdir"/usr/lib/libgcj*.so; do if [ -L "$i" ]; then mv "$i" "$subpkgdir"/usr/lib/ fi done mv \ "$pkgdir"/usr/lib/libgij.so \ "$pkgdir"/usr/lib/libgcj.spec \ "$subpkgdir"/usr/lib/ } libgcj() { pkgdesc="Java runtime library for gcc" # libgcj_bc.so moved from gcc-java to libgcj replaces="gcc-java" depends= CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/bin cd "$pkgdir"/usr/bin paxctl -c -pmse "$pkgdir"/usr/bin/gij || return 1 mv aot-compile gappletviewer gc-analyze gij gjar gjarsigner gkeytool\ gnative2ascii gorbd grmic grmid grmiregistry gserialver \ gtnameserv i486-alpine-linux-uclibc-gcj jv-convert \ rebuild-gcj-db \ "$subpkgdir"/usr/bin/ cd "$pkgdir" for i in $(find usr/lib -name jc1 -o -name jvgenmain); do mkdir -p "$subpkgdir"/${i%/*} mv "$pkgdir"/$i "$subpkgdir"/$i || return 1 done mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/gcj-* \ "$pkgdir"/usr/lib/libgcj_bc.so \ "$pkgdir"/usr/lib/libgcj*.so.* \ "$pkgdir"/usr/lib/libgij.so.* \ "$pkgdir"/usr/lib/logging.properties \ "$pkgdir"/usr/lib/security \ "$subpkgdir"/usr/lib/ \ || return 1 mkdir -p "$subpkgdir"/usr/share/ mv "$pkgdir"/usr/share/java "$subpkgdir"/usr/share/ } libgo() { pkgdesc="Go runtime library for GCC" depends= CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libgo.so.* "$subpkgdir"/usr/lib/ } go() { pkgdesc="Go support for GCC" depends="gcc=$_gccrel libgo=$_gccrel" mkdir -p "$subpkgdir"/$_gcclibexec \ "$subpkgdir"/usr/lib \ "$subpkgdir"/usr/bin || return 1 mv "$pkgdir"/usr/lib/go "$subpkgdir"/usr/lib/ || return 1 mv "$pkgdir"/usr/bin/*gccgo "$subpkgdir"/usr/bin/ || return 1 mv "$pkgdir"/$_gcclibexec/go1 "$subpkgdir"/$_gcclibexec/ || return 1 mv "$pkgdir"/usr/lib/libgo.a \ "$pkgdir"/usr/lib/libgo.so \ "$pkgdir"/usr/lib/libgobegin.a \ "$subpkgdir"/usr/lib/ || return 1 } libgfortran() { pkgdesc="Fortran runtime library for GCC" depends= CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libgfortran.so.* "$subpkgdir"/usr/lib/ } libquadmath() { replaces="gcc" pkgdesc="128-bit math library for GCC" depends= CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libquadmath.so.* "$subpkgdir"/usr/lib/ } gfortran() { pkgdesc="GNU Fortran Compiler" depends="gcc=$_gccrel libgfortran=$_gccrel" $LIBQUADMATH && depends="$depends libquadmath=$_gccrel" replaces="gcc" mkdir -p "$subpkgdir"/$_gcclibexec \ "$subpkgdir"/$_gcclibdir \ "$subpkgdir"/usr/lib \ "$subpkgdir"/usr/bin || return 1 mv "$pkgdir"/usr/bin/*gfortran "$subpkgdir"/usr/bin/ || return 1 mv "$pkgdir"/usr/lib/libgfortran.a \ "$pkgdir"/usr/lib/libgfortran.so \ "$subpkgdir"/usr/lib/ || return 1 if $LIBQUADMATH; then mv "$pkgdir"/usr/lib/libquadmath.a \ "$pkgdir"/usr/lib/libquadmath.so \ "$subpkgdir"/usr/lib/ || return 1 fi mv "$pkgdir"/$_gcclibexec/f951 \ "$subpkgdir"/$_gcclibexec mv "$pkgdir"/$_gcclibdir/libgfortranbegin.a \ "$subpkgdir"/$_gcclibdir } libgnat() { pkgdesc="GNU Ada 95 runtime shared libraries" depends= CARCH="$CTARGET_ARCH" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libgna*.so "$subpkgdir"/usr/lib/ } gnat() { pkgdesc="Ada 95 support for GCC" depends="gcc=$_gccrel" [ "$CHOST" = "$CTARGET" ] && depends="$depends libgnat=$_gccrel" mkdir -p "$subpkgdir"/$_gcclibexec \ "$subpkgdir"/$_gcclibdir \ "$subpkgdir"/usr/bin \ || return 1 mv "$pkgdir"/$_gcclibexec/*gnat* "$subpkgdir"/$_gcclibexec/ \ || return 1 mv "$pkgdir"/$_gcclibdir/*ada* "$subpkgdir"/$_gcclibdir/ || return 1 mv "$pkgdir"/usr/bin/*gnat* "$subpkgdir"/usr/bin/ || return 1 } md5sums="a3d7d63b9cb6b6ea049469a0c4a43c9d gcc-4.8.2.tar.bz2 d7cd6a27c8801e66cbaa964a039ecfdb ecj-latest.jar 485b2b9da364ad700f25de1c64d9cd06 01_all_gcc48_configure.patch 2a8d6a9046efc9f44449b012cf12d7fd 02_all_gcc48_config.in.patch 77c070fb506bbe33ca93cee4cccb9b38 03_all_gcc48_Makefile.in.patch bcc6826afc77ae77a5dd5f164b51c746 05_all_gcc48_gcc.c.patch c4e4451863b021963645d904fc847105 16_all_gcc47_nopie_option.patch ad7dbd7ac3fdcfb30d430b1d6069816f 20_all_gcc46_config_crtbeginp.patch 607a1144179e47cfc06df8eb674eb7d0 24_all_gcc44_invoke.texi.patch b0910da9f2eb4fe6a684e680f6336491 34_all_gcc48_config_i386.patch adcc78e93f54b80210bc436041c1a6e7 35_all_gcc48_config_arm.patch 4a3b0066ea21f5435ae51ddeb37ac173 40_all_gcc48_config_esp.patch 8aab4963bceaee4d4448821bc7e1bbba 41_all_gcc48_config_esp_relro.patch f28e9334c58ce14f69a9e988026bc772 12_all_default-warn-trampolines.patch 7eb9ad894dfdf1b3d4a8a407a339a6f1 15_all_libgfortran-Werror.patch 452e457a0ac45e6f8f75eb6d6ba4d04b 16_all_libgomp-Werror.patch 8975abab9ee8ae5028a55e84b930cf02 48_all_x86_pr53113_libitm-avx.patch 326fa30475ba206cc2ef1666ec4314c8 50_all_libiberty-asprintf.patch d8692c56f04b92667096f59d843e95c5 51_all_libiberty-pic.patch ca4f395856bbb80d23398246572c30fa 67_all_gcc-poison-system-directories.patch 9c443d9d0fba2ce97b12f674b7d14c7e 74_all_gcc48_cloog-dl.patch ea0fdebab6c660635736d27f4ea2f113 gcc-ice-hack.patch a695d7648509b4f8e18b389a19e6037c gcc-spec-env.patch 504c7dd8651c5d98229892c4cd9ea591 libgcc-always-build-gcceh.a.patch ab83248e10b2bf4b3d9240de0fefb52b pt_gnu_eh_frame.patch 6cc2385c5bbd6d0da6eaedd53c8bf547 uclibc-getipinfo.patch 32e8e4c0e23ed8f5de95a591cb30f1da gcc-4.6-pr32219.patch 79d00ee1284fac5192456f7f7d3908aa gcc-4.8-dynamic-linker.patch 87a1725ab79bb98b3a45f7763e889290 gcc-4.8-musl.patch 6e5c32243a86ff35b7b47d18c95b31bd gcc-4.8-musl-fix-iteratephdr.patch 0d0a41c02802b85c8f1b78ce28544f92 gcc-4.8-musl-libssp.patch 2c6cb49bb9bfd8b6e690222e66ccc901 boehm-gc-uclibc.patch 0ea0f556d4ef9c260d1353b7fd33970c boehm-gc-musl.patch 2e2b787bb988d9007c9f7ce42178dfe6 gcc-pure64.patch 762a7134017fe1056aaa6388b9b3a2d5 pr49423.patch fb28fd941c110627b7b9ca523d66b8d6 pr57748.patch 14fc0a0b925ef911ce78cd030fe58902 fix-gcj-musl.patch e17bbb0fe802974e20645b4182b4c410 fix-gcj-iconv-musl.patch 0a2041bbf83648e6c4f6d3484f7249ca gcc-4.8-build-args.patch 4aea37d334ab00bb6bba37cd8c481367 fix-cxxflags-passing.patch 87684048ecaaf0e046983bc2782292dd fix-cxxflags-for-target.patch 750e903d5a53ba32618c2142cdd914e1 ada-no-pie.patch 2b4235111d2e66f2c690eb340cb4178b ada-fixes.patch d77c99bf7c03d082a540aaba1193be40 ada-crossbuild.patch 20e2731c02ce50739ebdead2795f9c41 ada-shared.patch 4e47bdae120129462244da0d89a573b3 ada-musl.patch a2f435d81e872a73a8b44a4581832af0 vanilla.specs 17a31b8580de9dd9c06a1ed96886d538 hardenednossp.specs 33ce2d221828a2d03978da52ba609524 hardenednopie.specs 5c431710b72c6ec16ed21bcca83d9f87 hardenednopiessp.specs" sha256sums="09dc2276c73424bbbfda1dbddc62bbbf900c9f185acf7f3e1d773ce2d7e3cdc8 gcc-4.8.2.tar.bz2 98fd128f1d374d9e42fd9d4836bdd249c6d511ebc6c0df17fbc1b9df96c3d781 ecj-latest.jar 8dee116f723861166cfd137d5cc457e0c11fb2be8b1271e199b41e02bf70a102 01_all_gcc48_configure.patch f301cce95609650f57c5212b38daf5288b4e7c5fa37ae2892664d4c8ceaadfbf 02_all_gcc48_config.in.patch 13418c6acf689c82caf512a3edac8c7c6db0488a43ba7b914e39c12721dcfba9 03_all_gcc48_Makefile.in.patch 5fbe104dedff59b5faf9f11a51ea31b26913e8baa23fc724fc0238a4ef03b4e9 05_all_gcc48_gcc.c.patch 40a54195784bb613a27724518b6d6f1dc5475c47acccdade43cc1707d331f7f9 16_all_gcc47_nopie_option.patch 776d0843a86571544b36cfc58eb4ee476bc689b3cfbf61f4a903ff60a271c849 20_all_gcc46_config_crtbeginp.patch 38c9f4fdbf25a2e032a99f85d1a6428dd446ecc0ec3b9df7078ae61afecd368f 24_all_gcc44_invoke.texi.patch 150f17367d7f514fda9e0aac283e059b190a2251d7d9dfa2b5686b2bdc67b725 34_all_gcc48_config_i386.patch 48e22b2794ae70985c418832f7845814d65e78abcf56d38205db4b760a1c5ffa 35_all_gcc48_config_arm.patch ff8c8d8f3f1444e274fb384859896e327101378fbace92c0ee65f02dd14503f1 40_all_gcc48_config_esp.patch 11f1307cd8a0b2619ec9409a382ac63326c23abf8f9db429a167aa70d38c17b2 41_all_gcc48_config_esp_relro.patch ce7774aa13be5da274220258772ccbdd6f54abdad97a3798ba282865c809f042 12_all_default-warn-trampolines.patch 8b1450d5a7756af2b890588005690785a663601e2b1533671b609aa8cce0f718 15_all_libgfortran-Werror.patch 1f106fe03cede7c697bde7d81732e0d3bb2c7197e4967789182a5fd8db532900 16_all_libgomp-Werror.patch cead5b092ab4881e8b830d51c0037a8fb149bab632e7661aa505ba574295e0e4 48_all_x86_pr53113_libitm-avx.patch 38f7c0841d99c6dd3610cd5618b68dd6579713c018eaed856217fc4263bcf6a6 50_all_libiberty-asprintf.patch da6bbb5dc654d5e1df8ecae5c9ebb56265426c405931f14f5878248b8c79f78d 51_all_libiberty-pic.patch 8ba9dec0ecc2620c8ab1dfbeb0708dd4c29021e57d2e0ea23720108b1db3462e 67_all_gcc-poison-system-directories.patch 7d129093a6682418da9313611a90e3052855d8af4505d401f7b8b6a64e8f7b17 74_all_gcc48_cloog-dl.patch 8f7efd182fd7517fdcd8b78de11b75bfd9f2fa623ffec3d762ae6ff9ab77a476 gcc-ice-hack.patch 64b01f29fb853fee5ecda998b66eeaa7ec86ff1fc3b21432bfd69eb543c93e6a gcc-spec-env.patch 1975189156d70f5428cb7f1516533965d1c8734f3009fc89a9b8e289b72326f1 libgcc-always-build-gcceh.a.patch 78e75cb378bdfe870c98ab3cffef37f54be729d3912979191f27ca00651ad6c4 pt_gnu_eh_frame.patch 53184f842477569973c232dac7c85e71b0018cbe5c4962f95dd9e0273f42083e uclibc-getipinfo.patch 89207a8b62137a857ee2c43499d6b5247d37b530d1338844dbb330a6846b2ad2 gcc-4.6-pr32219.patch f3863b997acf8fdf5ad1d3626b41a8a0670b896505e9b7afb517916c7599fb1c gcc-4.8-dynamic-linker.patch fffdcf25b71526be739685f927ab0d66c72afff34ec54dc147ba62b262935007 gcc-4.8-musl.patch 151c11c3303233e6ff06e27aa6dc889140bc46a7b5e4870587c40e37d36ede2c gcc-4.8-musl-fix-iteratephdr.patch 80b76ca30dcaf07481ab102869d741f044c7e5235f462182bc27467baacda9a4 gcc-4.8-musl-libssp.patch 02751ccf223dcfc898c0ce2214cd0859d275e90b742f1a66e38db5c50f94b38c boehm-gc-uclibc.patch 6ccca88695ef84c0d038cd315cad5ae5b799672ecb009fdaab34e68ba60b733c boehm-gc-musl.patch f5473c6aea96d5137defd68898ba31042944a3f3ed26c05b964a40bd876c6f47 gcc-pure64.patch d68d6680b3ab996b4b8dde2ddc351cecb46b560dc743d112e682c596696b67bb pr49423.patch 999fdf60b3a51435e7485a57e12c1110a2af3965e14528f77d5dd0917115011d pr57748.patch 22c78cc4a2658ff574e7ded1e5bc765a4f81f730d12e72d5883fe0bf73e71220 fix-gcj-musl.patch 51782c972ab828eb4ccb3ca3570341d025b2ae9a8e8fd8188cefb29c5f87401b fix-gcj-iconv-musl.patch bd7a6f514fcc457f29e5fda157203f3bcd013aeba5d53b3459196eef3ce752ab gcc-4.8-build-args.patch a395ba4cf047c48cac56985726fddf0948f4425c9f1a0c9ddba1812b2b3d8300 fix-cxxflags-passing.patch a5678380e887dbf600c59273d382e81c10f89d28e422238a617d0a43ad5c5a69 fix-cxxflags-for-target.patch de3c8606015ebda0dc574f904aa4d23c44c5e261b34dce2ef4d08eed21cb99b9 ada-no-pie.patch ca0db7f59e7af0c621751eee9e3775d4c00c4b663f82f9e04c53a2efb16edca1 ada-fixes.patch 324524490c60d84ef040f79589e0f93fbaeb253dbe031484afaf963b881047e9 ada-crossbuild.patch d6c7fc1820a4fa285297c299c255fe2f19ce1695486f20edd098252a97545e6a ada-shared.patch f20c34f3e0a1bf717f5e22fd66b57c8b69f0411d063203c017ed8209f349e1d4 ada-musl.patch 1315d4c430b4d81c61d14a252d7681125fd7d79fde457c014c18c62c4f1aa1de vanilla.specs 50a46bb1c4d209ce687d13e74cc9e4e0b87cef4a8165d22fb9be243c9cf08374 hardenednossp.specs 8eccfcf282fb54aadede7c23a8b5b843c0a63a55485e74d4332ab49025d38e78 hardenednopie.specs af85685ff501f5e0eaaa394628365425486dafe4780f0f683a4536ab60173cdf hardenednopiessp.specs" sha512sums="2a3927481707b3bb7171076b596d9b69084edac82460df6fb35395592dd1e8fc5665577702ca746d5b454dec68b1c4e31b9de6adc9865d482f4b8736ec648b10 gcc-4.8.2.tar.bz2 d4e1bf7538ace56e3d69fa91da5bbd16c272923b4de0a9d8dee23ea2b75f9f38c603de72fc4061df49285c450b63f3df211cee5270e9fffc5447445d1a9c9e4e ecj-latest.jar da16931bd0103388991cfc932540a1641ee3b81c10184baefa1e6a90061f0910efedc1118e45eb4a65a34965315d12a3ff2802a2058b31c8f57fa4f3655f8eee 01_all_gcc48_configure.patch 21770259c7916e55568027926e4a543eea468b04436cc61c28f749be5a6635c48e68b7924a8eb19a76733a9d2f00921ba06faddaedbf14b1cdad5ab1810cc6c6 02_all_gcc48_config.in.patch 42d791f94a91c059ab6f200e071b02355f87e974c15cb9a7c44edd4a18818469d86044d460021bb1dbb79742e51a4c19cfe2e570bb57ad27a85dd0cdf2fbe8de 03_all_gcc48_Makefile.in.patch e98cc321d71e5bb62c6116b30ed6f11044bda440e238026a83dec63f04a0587440bdae50ec211b07976fcd9deb329f9dd1dac1317dae5003088a8a8bddbb97c1 05_all_gcc48_gcc.c.patch 98a4da3137177c5cad7dd7d35ad39cd416aa36f07867714e09ab8c0d8b759d2659063aa87b16ac1b708a283afd2ac54e20b327a32d1147720996d7bc11dcbd63 16_all_gcc47_nopie_option.patch b0dd448e25d4ca8313eb2004b2bb020d5e1c0ff51d347686312625d1102093ba95a3b1267b4ec10bb67f93d62c793f07aa6b6f71bbfd3443d25911ee3f9759fa 20_all_gcc46_config_crtbeginp.patch 5d3f5ea46eef4cdbb3172c65b17dcf55acf936c9319177a7958ac283ea3651f5e00a76da3ee323bc39302210add36861329f085ba54c737f2942c19dd243b7d5 24_all_gcc44_invoke.texi.patch dd5b9b30eb7716cb3c010ca79a83ed6219ff6e6f2557deb4e1d26cecac0f2b14c4ef7bf4dc5c2aec88aae5463763f5f64454b8a627ebd1d0a5c92984017025ad 34_all_gcc48_config_i386.patch 8829f85323d8b11e26e3c19ced4a51875fc63f1483cfdc4d0f579a6cb37e1b6e23fcf33a87a574a6e0007250374ea46d117a136e73a40fbe43f0e39d9b2dd1a8 35_all_gcc48_config_arm.patch a476a0163563c393557c30ea326a168d5ef88d88e8ca38dcacb0d29b7eed7ebcc283ab8d64fb5a34b0b2b20d1fd0075b33d4a1651a1f185f8475014a6d3ff983 40_all_gcc48_config_esp.patch f8428d88409e6c630d5cf4ddb932e7cdc9e1aeb97c9a09f82efe4a1c168937e58b55114f6afdd726e38b08898b6d9bf3c28361e445a1b51c14852124a71b96b9 41_all_gcc48_config_esp_relro.patch 5069e4b741488913a646a9b5d871af8e7f7a606158ea09305d0ddd46257c5b659770627bc2ca3abeaae039da1717b3ba6c9cd90554a441da74eb4ecf24c13074 12_all_default-warn-trampolines.patch c18a99b7303a734fe4dca9d4e90e21d18e5bd71c7d91e1a26c86b1354c73f567590a875941bfe64ce59f0393023b91c606c96b30885c55b98a790c3ab0c84ca7 15_all_libgfortran-Werror.patch 433404fd9bfa172d69fff4a5505e8648cbbbf5f052d2b4235608ff7af0c4063d557d25d80c85c5bd0d1e1ed64b568e7bbc0cdbce11cc74db4c0189af3a01634a 16_all_libgomp-Werror.patch ff16f259fff8d78230593eee8641eab5a72c5c517c6ac5f09597edbc624d964b33f185a0dd5772d6029f757a5edb66431b3eab77dac71e76a0ef155bb7443d2c 48_all_x86_pr53113_libitm-avx.patch c6c314a2d24531b4286436dec7189f83e443c4cfa9b88339a4c324c2d40812d766ed44dcfd4a0c3b67695bb76969a4d8a9784ff95876ceba23def305ef8a48f8 50_all_libiberty-asprintf.patch 0a0bc72b9366158f5d23fff1928e756fdd212433bac6ab1f00d632f241382820db8db5d475ddf11ea020eaf7e2e71b12fb9b1c3c870cf84adf6c2b16f15aabca 51_all_libiberty-pic.patch 47331f034e44aea16f1cbb67d9176f8ce8832d6cb7c13a8d3b438efaa3269cee177bd1dd8a9f353ac19cc6b3db436a995de9ae66d493d2772188630b09fbff51 67_all_gcc-poison-system-directories.patch 6e19b2dc43cff03a6b3ca4e18f76dcfd5b0682c15aac493e94f5c679f5b0a585fbaa09345d200182c0f47541ced2d714b78d65da130bc7d2e9f810362e07037d 74_all_gcc48_cloog-dl.patch 7242876e4bba34235f6f3ea960d72439638bd31547284ca96cb94c97a2d46dd7b38a3709fd159cf86efa1e8a44e3e9125fe82bc3a1cc71153591755827d6c9fd gcc-ice-hack.patch ce9c1f923e2c6d17347ec2d3d8482351a9644194b2753627389294d43bb4f11b9c2ef41eda1b46ad83d09901a0bedebd5b6b8a57a198646030ab61e8d2d8cb48 gcc-spec-env.patch d08d7ead2de0429e5c9055d5b029ec2be9a8c821d22cecaf9b51f633652c493333f98963d9267fa2fa63850c50ae5eefd5f59e5910ec10d20044dac082182a8b libgcc-always-build-gcceh.a.patch 8464197f01d107872dfa6b47e86e95ae8d75c053527bafbdb7a86bcc7aff4bc5b20a8ec40d6e48d1ad455b0187a3cba9db337cff6c0a6245507c4533e4832d99 pt_gnu_eh_frame.patch e3edf75df1f27af8771bd263e1bd607f6207c4eb5b2a5e11032577deba43ea201825e3b5008a720105f24e49d2821dd77a61c7ceba7ed91b3621c0dbd9292fc6 uclibc-getipinfo.patch 9fc5e32f2573ae67b6cf22119d636d10a47c42718635bceff7d457a93a3f664ae1ed10e154f70964ba2d26b0de04f879a8c05de6411112760d40433373dd0a80 gcc-4.6-pr32219.patch db84b6582950378116723116be4f277881f7bdd05add216c58c2b86c0fb3a70abeb7798507a74a64b9b949d5b311167bd4df84a048d2d2d32f5836ea1d34c42e gcc-4.8-dynamic-linker.patch 334a474af73a9c43301c1fbe354cfaa97a0a532409f84a8404ca1b18af89319581e8779c0eac04801e9243e382bfc6869a1925335c998998a2a8a031583e6d64 gcc-4.8-musl.patch b5b0210dfaccfe0b06f0a9090666b1fae2a3faa4140b7930146b29531f0da9beb1f2c1f7e7bc2bd29179f9fe05dc30e246e96220b8ff75a90f75e8350c9058a1 gcc-4.8-musl-fix-iteratephdr.patch e6d9b103c128e5d4eca515b1496d78b05708de770597c883daddd95ea41e77b5ef1be613b989357cc870a7efd9e43b011022c2d302e7056cff7b69e764906ff2 gcc-4.8-musl-libssp.patch e1d6a450dfb40b134ad7f759c4c10174d2490b0093fe47cb33479245f26a3a8c54ebcf6255943c0ccfcb5095600d1c05e530baeed35609c8ffe75caac8e57c49 boehm-gc-uclibc.patch bda845a6aa1854d2c883910b115f79ccfa93dfc2b5eac69a3a236d83eb34cadc140731d616ffc24698c7abc8878dd15f231bcc5119f1860e575a120b311706c7 boehm-gc-musl.patch 4a5aeff0399782c752e6e3f2f48d984b2056dfb5d229b23a24eee1562d241339989b2203f139821cfc03c9b25c9bd7da6ccbbdc7a09d242e4de7f0d606c6f63c gcc-pure64.patch b01ec5b2718e74048102d4a8e0a851f63524c9b9a70631ec93467b2e6080e8db2c500040572f64dce8161ef2c955bc1a7abd77d0e7970143967f9c8e0e3de948 pr49423.patch 018a9f2b7b490066a02671be38e1a4f18caeff98210027e68a1d4bd3d78ff810aa45a5cca163f4c46ee0d120715541a95a6e2487e17f4bb923459dec8edf8f8f pr57748.patch f89ddeb21bc8f97e6a850a6b70b4501a8f3e49a4bc8cc82897488decda5d98ad01cb7f6c8b392d452e9579924a523bc75da6e0648c1c976d42e40af48b10343b fix-gcj-musl.patch 54d67cc008b735e47771314171930c5d8b8f5f5dc97fcf4214824c105c808f3e75d22d5a4fdf5068ed0457fa0d46c60cfb442e276259a4a5e9b8722a027d18e6 fix-gcj-iconv-musl.patch abe9aaf9aa956058d0386a4396a511d176a46bb3906b90e952383646cdc158cbeb0a5dc616a1ccb1ca7d49fd0b5e351532aa15a3b13362abbf1ca4266f54a687 gcc-4.8-build-args.patch 35d6d59f0b7b968f282f56767c9e0823a7bdc5aa0d450aca50fbd802649a7ca608b47671244a3faa208a9b0d6832cabb5a22724157dc817b2c0ad63d09f93282 fix-cxxflags-passing.patch c731f4aaaa65c8950e1b2bd9331410f92d378fd8c7e718532dccaa27ee11984d51d74216c3611e89a802325b81d7f184116839dce2dab50cae9b643c20a82fe7 fix-cxxflags-for-target.patch 4938a38d6ffebebcd8b07a60e7d300935ef57056e5820145c6668dd5141e272d73a67a1bfe84dafda77212058eee768a03aba4356e52867b40a9ba9216a96714 ada-no-pie.patch b37195a126476775e2ef16e0adc9173664c514339fb319f628debd8a4133fa53e022278387c68fc260cf813e58602617e9e629ea8177133bfdf5972398fe1c55 ada-fixes.patch 4d411563f6a3ea06bc3a1f4fa77d10250cc275e2496df6039d93f9b2229bc1f5334e484494dbd08881cf046f98aaca8bdddaa6b4a8f947b936d0bdc9e91f2f2b ada-crossbuild.patch 3f5bc334d9f73d06f5f7c876738d02356acdd08958bea0e4d2095ebf15c2c2ec4e411abdae0297505ae9a1699ca01b17338e853184e84663203b192b0d35fc19 ada-shared.patch 7f6dc922a2c80b1c8c5ed0b6d6e4c1e672984f54bb217f28517929af129892e42c45f7aea4b9c50d8bbc008384b7ae19e1475c79f08b78775709720fe317c8f3 ada-musl.patch 83a0996a48096032bcc674a6d28524f1cd2d81837621ebe4c15b5aedbd551c77ce5576b6307adb673ef0e4ac0431d935ad6a427edca2af5c21b6be9176bfaddb vanilla.specs e4d38905527c500c61c421d782a8ac6ef2b034b15fd81d868486ac330a70922937d3c47e0684e9f3250744569b56a8df199499a4a5c107a6d544dca84458dc12 hardenednossp.specs b56f7c308c5aefd0cfc647abd75939508a6640c53fce7c19da7c7d8ef4405d29b0d88800117fc7ff8d0022b035d511fb6d478e745bb2ed12a1b63f9f8cf3e168 hardenednopie.specs f5ac7282201006548ed2bd835234af64d6f79f13f0b9a3410f5c794537e0ea91601361ae72180f49870b6b0f9af5f16002c86660feb94df346b9b1d9602e9d3a hardenednopiessp.specs"