Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=multilib.git;a=commitdiff;h=4954cb169e6d79695d3450ee16c3fc6da1a098e4
commit 4954cb169e6d79695d3450ee16c3fc6da1a098e4 Author: crazy <cr...@frugalware.org> Date: Fri Oct 14 16:44:33 2016 +0200 gcc-6.2.1-6-x86_64 * is multilib too \o/ * removed GO since we don't need this anymore diff --git a/source/devel/gcc/FrugalBuild b/source/devel/gcc/FrugalBuild index 846091d..e467c6d 100644 --- a/source/devel/gcc/FrugalBuild +++ b/source/devel/gcc/FrugalBuild @@ -3,6 +3,10 @@ # Contributor: James Buren <r...@frugalware.org> # Contributor: Miklos Vajna <vmik...@frugalware.org> + +## TODO: split libcilkrts ? now in gcc package +## -> https://www.cilkplus.org/ + USE_SHARED=${USE_SHARED:-"y"} USE_BRANCH=${USE_BRANCH:-"y"} @@ -10,7 +14,6 @@ USE_LANGS=${USE_LANGS:-"y"} USE_CXX=${USE_CXX:-"$USE_LANGS"} USE_FORTRAN=${USE_FORTRAN:-"$USE_LANGS"} USE_OBJC=${USE_OBJC:-"$USE_LANGS"} -USE_GO=${USE_GO:-"$USE_LANGS"} # Activate required langage Fuse $USE_OBJC && USE_CXX="y" @@ -24,21 +27,21 @@ else pkgver=6.2.0 gccver=$pkgver fi -pkgrel=5 +pkgrel=6 pkgdesc="The GNU Compiler Collection" url="http://gcc.gnu.org" -depends=('binutils>=2.27-3' 'glibc>=2.24-3' 'libmpc>=1.0.3-6' 'zlib>=1.2.8-7') +depends=('binutils>=2.27-3' 'glibc>=2.24-6' 'libmpc>=1.0.3-6' 'zlib>=1.2.8-7') makedepends=('kernel-headers>=4.7') provides=('c-compiler') groups=('devel' 'devel-core') archs=('i686' 'x86_64') options+=('scriptlet' 'noccache' 'static') if Fuse $USE_BRANCH; then - _pkgver=20160908 + _pkgver=20161013 ## well something up2date="Flasttar ftp://gcc.gnu.org/pub/gcc/snapshots/LATEST-${pkgver/%.*/}/ | sed 's/6_/${pkgver}_/g' | sed 's/_${_pkgver}//g'" source=(ftp://gcc.gnu.org/pub/gcc/snapshots/${pkgver/%.*}-${_pkgver}/gcc-${pkgver/%.*}-${_pkgver}.tar.bz2) - sha1sums=('7cc96ea766f967979b529ae0d0cb60db92d8bf99') + sha1sums=('02de76f527e2a09222f901830ccabd414df95a8b') _F_cd_path="gcc-${pkgver/%.*}-${_pkgver}" else @@ -75,15 +78,6 @@ if Fuse $USE_OBJC; then subreplaces=("${subreplaces[@]}" 'objc objc-bootstrap' '' '') subconflicts=("${subconflicts[@]}" '' '' '') fi -if Fuse $USE_GO; then - subpkgs=("${subpkgs[@]}" 'libgo' 'gcc-go') - subdescs=("${subdescs[@]}" 'Go runtime' 'Go support for GCC') - subrodepends=("${subrodepends[@]}" 'libgcc' 'libgo gcc') - subbackup=("${subbackup[@]}" '' '') - subgroups=("${subgroups[@]}" 'lib-extra' 'devel-extra') - subreplaces=("${subreplaces[@]}" '' '') - subconflicts=("${subconflicts[@]}" '' 'go') -fi if Fuse $USE_FORTRAN; then subpkgs=("${subpkgs[@]}" 'libquadmath' 'libgfortran' 'gcc-gfortran') @@ -136,35 +130,37 @@ build() Fconfopts+=" --disable-libquadmath --disable-libquadmath-support" fi - Fuse $USE_GO && langlist="$langlist,go" - - if [ "$CARCH" == "arm" ]; then - Fconfopts+=" --enable-softfloat \ - --with-float=soft \ - --disable-bootstrap \ - --enable-target-optspace" + if [ "$CARCH" == "x86_64" ]; then + Fconfopts+=" --enable-multilib" + else + Fconfopts+=" --disable-multilib" fi _F_conf_configure=../$_F_cd_path/configure - CC="$FCC gcc" CFLAGS="$CFLAGS" CXXFLAGS="$CFLAGS" XCFLAGS="$CFLAGS" \ - TCFLAGS="$CFLAGS" + CFLAGS="$CFLAGS" CXXFLAGS="$CXXFLAGS" XCFLAGS="$CFLAGS" TCFLAGS="$CFLAGS" Fconf \ --enable-languages=$langlist \ --enable-lto \ + --disable-libgo \ --enable-shared \ + --enable-bootstrap \ + --disable-libunwind-exceptions \ + --verbose \ --enable-threads=posix \ --with-system-zlib \ --libdir=/usr/lib \ --libexecdir=/usr/lib \ - --disable-multilib \ --disable-werror \ --with-bugurl="http://bugs.frugalware.org/" \ --with-pkgversion="Frugalware Linux" \ --enable-plugin \ - --enable-checking=release + --enable-checking=release \ + --host=$CHOST \ + --build=$CHOST \ + --target=$CHOST if Fuse $USE_SHARED; then - Fexec make STAGE_CC_WRAPPER="$FCC" BOOT_CFLAGS="$CFLAGS" || Fdie + Fexec make STAGE_CC_WRAPPER="$FCC" BOOT_CFLAGS="$CFLAGS" || Fdie else Fexec make all-gcc || Fdie fi @@ -201,71 +197,93 @@ build() if Fuse $USE_FORTRAN; then - Fln gfortran /usr/bin/f95 - # libquadmath - Fsplit libquadmath usr/lib/libquadmath.* - Fsplit libquadmath usr/share/info/libquadmath.info - # libgfortran - #Fsplit libgfortran usr/lib/gcc/$gcchost/$gccver/libgfortranbegin.* - Fsplit libgfortran usr/lib/libgfortran.* - # gcc-gfortran - Fsplit gcc-gfortran usr/bin/{gfortran,$gcchost-gfortran,f95} - Fsplit gcc-gfortran usr/share/man/man1/gfortran.1* - Fsplit gcc-gfortran usr/share/info/gfortran* - Fsplit gcc-gfortran usr/lib/gcc/$gcchost/$gccver/f951 + + if [ "$CARCH" == "x86_64" ]; then + Fsplit libquadmath usr/lib32/libquadmath.* + Fsplit libgfortran usr/lib32/libgfortran.* + fi + Fln gfortran /usr/bin/f95 + # libquadmath + Fsplit libquadmath usr/lib/libquadmath.* + Fsplit libquadmath usr/share/info/libquadmath.info + # libgfortran + #Fsplit libgfortran usr/lib/gcc/$gcchost/$gccver/libgfortranbegin.* + Fsplit libgfortran usr/lib/libgfortran.* + # gcc-gfortran + Fsplit gcc-gfortran usr/bin/{gfortran,$gcchost-gfortran,f95} + Fsplit gcc-gfortran usr/share/man/man1/gfortran.1* + Fsplit gcc-gfortran usr/share/info/gfortran* + Fsplit gcc-gfortran usr/lib/gcc/$gcchost/$gccver/f951 fi if Fuse $USE_OBJC; then - # libobjc - Fsplit libobjc usr/lib/gcc/$gcchost/$gccver/include/objc/ - Fsplit libobjc usr/lib/libobjc* - # gcc-objc - Fsplit gcc-objc usr/lib/gcc/$gcchost/$gccver/cc1obj - # gcc-objc++ - Fsplit gcc-objc++ usr/lib/gcc/$gcchost/$gccver/cc1objplus + + if [ "$CARCH" == "x86_64" ]; then + Fsplit libobjc usr/lib32/libobjc* + fi + # libobjc + Fsplit libobjc usr/lib/gcc/$gcchost/$gccver/include/objc/ + Fsplit libobjc usr/lib/libobjc* + # gcc-objc + Fsplit gcc-objc usr/lib/gcc/$gcchost/$gccver/cc1obj + # gcc-objc++ + Fsplit gcc-objc++ usr/lib/gcc/$gcchost/$gccver/cc1objplus fi if Fuse $USE_CXX; then - Fln g++ /usr/bin/c++ - # libstdc++ - Fsplit libstdc++ usr/include/c++/ - Fmv usr/lib/libstdc++.*-gdb.py usr/share/gcc-$gccver/python/libstdcxx - Fsplit libstdc++ usr/lib/libstdc++.* - ## this is a experimental lib in 5.3++ .. only static - Fsplit libstdc++ usr/lib/libstdc++fs.* - Fsplit libstdc++ usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo - #gcc-g++ - Fsplit gcc-g++ usr/share/gcc-$gccver/ - Fsplit gcc-g++ usr/bin/{,$gcchost-}{c++,g++} - Fsplit gcc-g++ usr/lib/libsupc++.* - Fsplit gcc-g++ usr/lib/gcc/$gcchost/$gccver/cc1plus - Fsplit gcc-g++ usr/share/man/man1/g++.1 + + if [ "$CARCH" == "x86_64" ]; then + Fmv usr/lib32/libstdc++.*-gdb.py usr/share/gcc-$gccver/python/libstdcxx + Fsplit libstdc++ usr/lib32/libstdc++.* + Fsplit libstdc++ usr/lib32/libstdc++fs.* + Fsplit gcc-g++ usr/lib32/libsupc++.* + fi + Fln g++ /usr/bin/c++ + # libstdc++ + Fsplit libstdc++ usr/include/c++/ + Fmv usr/lib/libstdc++.*-gdb.py usr/share/gcc-$gccver/python/libstdcxx + Fsplit libstdc++ usr/lib/libstdc++.* + ## this is a experimental lib in 5.3++ .. only static + Fsplit libstdc++ usr/lib/libstdc++fs.* + Fsplit libstdc++ usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo + #gcc-g++ + Fsplit gcc-g++ usr/share/gcc-$gccver/ + Fsplit gcc-g++ usr/bin/{,$gcchost-}{c++,g++} + Fsplit gcc-g++ usr/lib/libsupc++.* + Fsplit gcc-g++ usr/lib/gcc/$gcchost/$gccver/cc1plus + Fsplit gcc-g++ usr/share/man/man1/g++.1 fi if Fuse $USE_SHARED; then - # libgcc - Fsplit libgcc usr/lib/libgcc_* - # libssp - Fsplit libssp usr/lib/libssp* - Fsplit libssp usr/lib/gcc/$gcchost/$gccver/include/ssp/ - # libgomp - Fsplit libgomp usr/share/info/libgomp.info - Fsplit libgomp usr/lib/gcc/$gcchost/$gccver/include/omp.h - Fsplit libgomp usr/lib/libgomp.* - # libatomic - Fsplit libatomic usr/lib/libatomic.* + + if [ "$CARCH" == "x86_64" ]; then + Fsplit libgcc usr/lib32/libgcc_* + Fsplit libssp usr/lib32/libssp* + Fsplit libgomp usr/lib32/libgomp.* + Fsplit libatomic usr/lib32/libatomic.* + fi + # libgcc + Fsplit libgcc usr/lib/libgcc_* + # libssp + Fsplit libssp usr/lib/libssp* + Fsplit libssp usr/lib/gcc/$gcchost/$gccver/include/ssp/ + # libgomp + Fsplit libgomp usr/share/info/libgomp.info + Fsplit libgomp usr/lib/gcc/$gcchost/$gccver/include/omp.h + Fsplit libgomp usr/lib/libgomp.* + # libatomic + Fsplit libatomic usr/lib/libatomic.* fi - if Fuse $USE_GO; then - # libgo - Fsplit libgo usr/lib/go/ - Fsplit libgo usr/lib/libgo* - Fsplit libgo usr/lib/libnetgo.* - # gcc-go - Fsplit gcc-go usr/bin/go - Fsplit gcc-go usr/bin/gofmt - Fsplit gcc-go usr/bin/{,$gcchost-}gccgo - Fsplit gcc-go usr/lib/gcc/$gcchost/$gccver/go1 - Fsplit gcc-go usr/lib/gcc/$gcchost/$gccver/cgo - Fsplit gcc-go usr/share/man/man1/*go*.1 - Fsplit gcc-go usr/share/info/gccgo.info + + + if [ "$CARCH" == "x86_64" ]; then + ## maybe llvm32 will need these too , not-so-sure :) + for i in /usr/lib/gcc/$gcchost/$gccver/32/{crtbegin.o,crtend.o,libgcc.a}; do + Fln $i /usr/lib32/$(basename $i) + done + + cat stage1-gcc/specs > $Fdestdir/usr/lib/gcc/$gcchost/$gccver/32/specs || Fdie fi + + cat stage1-gcc/specs > $Fdestdir/usr/lib/gcc/$gcchost/$gccver/specs || Fdie + # llvm needs these. for i in /usr/lib/gcc/$gcchost/$gccver/{crtbegin.o,crtend.o,libgcc.a}; do Fln $i /usr/lib/$(basename $i) _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git