Skip to content

Commit

Permalink
gcc: add the recent 8, 9, 10 versions
Browse files Browse the repository at this point in the history
The update was wished for by the FU people from Knut Reinert.

Current state:

 - gcc 10.1.0
 - gcc  9.3.0
 - gcc  8.4.0
thomas committed Jun 23, 2020
1 parent 42ff748 commit fb9defe
Showing 3 changed files with 219 additions and 0 deletions.
73 changes: 73 additions & 0 deletions gcc-10.1.0-0.build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
#! /bin/bash

# Note: Depending on the value in /proc/sys/vm/overcommit_memory (0|2)
# results of make check differ, but neither one succeeds.

PKG=gcc
VERSION=10.1.0
BUILD=0
URL=http://ftp.gnu.org/gnu/gcc/gcc-${VERSION}/gcc-${VERSION}.tar.gz

PREFIX=/pkg/$PKG-$VERSION-$BUILD
if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi

set -xe
umask 022

BUILD_TMPDIR=/dev/shm/$PKG-$VERSION-$BUILD.build.tmp
test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR )
mkdir -p $BUILD_TMPDIR/home
export TMPDIR=$BUILD_TMPDIR
export HOME=$BUILD_TMPDIR/home

exec </dev/null

mkdir -p $PREFIX
cat >$PREFIX/profile <<-EOF
PATH=$PREFIX/bin:\$PATH
if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH} ; fi
EOF
. $PREFIX/profile

export MAKEFLAGS="-j $(nproc)"

BUILDDIR=$PREFIX/build

mkdir -p $BUILDDIR
cd $BUILDDIR

test -e gcc-${VERSION}.tar.gz || wget --no-verbose $URL
test -d gcc-$VERSION || tar xvf gcc-${VERSION}.tar.gz
cd gcc-$VERSION
mkdir -p objdir
cd objdir
# Note on languages: go and lto are not part of the mpi default install,
# here they are enabled just for testing/fun
$BUILDDIR/gcc-$VERSION/configure \
--prefix=$PREFIX \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-clocale=gnu \
--enable-languages=c,fortran,c++,objc,obj-c++,go,lto \
--disable-multilib \
--with-system-zlib \
--with-diagnostics-color=auto-if-env

make
# /dev/shm/gcc-8.4.0-0/build/gcc-8.4.0/objdir/check.log
make -k check 2>&1 | tee check.log
make install

cd $PREFIX
mkdir -vp lib
ln -sfv ${PREFIX}/bin/cpp lib/
ln -sfv gcc bin/cc

install -v -dm755 lib/bfd-plugins
ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/$VERSION/liblto_plugin.so lib/bfd-plugins/

# and dump these ...
rm -v lib64/*-gdb.py

exit
73 changes: 73 additions & 0 deletions gcc-8.4.0-0.build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
#! /bin/bash

# Note: Depending on the value in /proc/sys/vm/overcommit_memory (0|2)
# results of make check differ, but neither one succeeds.

PKG=gcc
VERSION=8.4.0
BUILD=0
URL=http://ftp.gnu.org/gnu/gcc/gcc-${VERSION}/gcc-${VERSION}.tar.gz

PREFIX=/pkg/$PKG-$VERSION-$BUILD
if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi

set -xe
umask 022

BUILD_TMPDIR=/dev/shm/$PKG-$VERSION-$BUILD.build.tmp
test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR )
mkdir -p $BUILD_TMPDIR/home
export TMPDIR=$BUILD_TMPDIR
export HOME=$BUILD_TMPDIR/home

exec </dev/null

mkdir -p $PREFIX
cat >$PREFIX/profile <<-EOF
PATH=$PREFIX/bin:\$PATH
if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH} ; fi
EOF
. $PREFIX/profile

export MAKEFLAGS="-j $(nproc)"

BUILDDIR=$PREFIX/build

mkdir -p $BUILDDIR
cd $BUILDDIR

test -e gcc-${VERSION}.tar.gz || wget --no-verbose $URL
test -d gcc-$VERSION || tar xvf gcc-${VERSION}.tar.gz
cd gcc-$VERSION
mkdir -p objdir
cd objdir
# Note on languages: go and lto are not part of the mpi default install,
# here they are enabled just for testing/fun
$BUILDDIR/gcc-$VERSION/configure \
--prefix=$PREFIX \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-clocale=gnu \
--enable-languages=c,fortran,c++,objc,obj-c++,go,lto \
--disable-multilib \
--with-system-zlib \
--with-diagnostics-color=auto-if-env

make
# /dev/shm/gcc-8.4.0-0/build/gcc-8.4.0/objdir/check.log
make -k check 2>&1 | tee check.log
make install

cd $PREFIX
mkdir -vp lib
ln -sfv ${PREFIX}/bin/cpp lib/
ln -sfv gcc bin/cc

install -v -dm755 lib/bfd-plugins
ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/$VERSION/liblto_plugin.so lib/bfd-plugins/

# and dump these ...
rm -v lib64/*-gdb.py

exit
73 changes: 73 additions & 0 deletions gcc-9.3.0-0.build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
#! /bin/bash

# Note: Depending on the value in /proc/sys/vm/overcommit_memory (0|2)
# results of make check differ, but neither one succeeds.

PKG=gcc
VERSION=9.3.0
BUILD=0
URL=http://ftp.gnu.org/gnu/gcc/gcc-${VERSION}/gcc-${VERSION}.tar.gz

PREFIX=/pkg/$PKG-$VERSION-$BUILD
if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi

set -xe
umask 022

BUILD_TMPDIR=/dev/shm/$PKG-$VERSION-$BUILD.build.tmp
test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR )
mkdir -p $BUILD_TMPDIR/home
export TMPDIR=$BUILD_TMPDIR
export HOME=$BUILD_TMPDIR/home

exec </dev/null

mkdir -p $PREFIX
cat >$PREFIX/profile <<-EOF
PATH=$PREFIX/bin:\$PATH
if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH} ; fi
EOF
. $PREFIX/profile

export MAKEFLAGS="-j $(nproc)"

BUILDDIR=$PREFIX/build

mkdir -p $BUILDDIR
cd $BUILDDIR

test -e gcc-${VERSION}.tar.gz || wget --no-verbose $URL
test -d gcc-$VERSION || tar xvf gcc-${VERSION}.tar.gz
cd gcc-$VERSION
mkdir -p objdir
cd objdir
# Note on languages: go and lto are not part of the mpi default install,
# here they are enabled just for testing/fun
$BUILDDIR/gcc-$VERSION/configure \
--prefix=$PREFIX \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-clocale=gnu \
--enable-languages=c,fortran,c++,objc,obj-c++,go,lto \
--disable-multilib \
--with-system-zlib \
--with-diagnostics-color=auto-if-env

make
# /dev/shm/gcc-8.4.0-0/build/gcc-8.4.0/objdir/check.log
make -k check 2>&1 | tee check.log
make install

cd $PREFIX
mkdir -vp lib
ln -sfv ${PREFIX}/bin/cpp lib/
ln -sfv gcc bin/cc

install -v -dm755 lib/bfd-plugins
ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/$VERSION/liblto_plugin.so lib/bfd-plugins/

# and dump these ...
rm -v lib64/*-gdb.py

exit

0 comments on commit fb9defe

Please sign in to comment.