# Depends on: zlib libmpc
name=gcc
-version=4.6.1
+version=5.3.0
release=1
-source=(ftp://sources.redhat.com/pub/gcc/releases/$name-$version/$name-{core,g++}-$version.tar.bz2
- $name-$version-gnueabihf.patch)
-
+source=(ftp://gcc.gnu.org/pub/gcc/releases/$name-$version/$name-$version.tar.bz2
+ $name-nocheck-fixincludes.patch)
build() {
+ patch -d $name-$version -p1 -i $SRC/$name-nocheck-fixincludes.patch
cd $name-$version
-
- patch -p1 -i $SRC/$name-$version-gnueabihf.patch
- sed -i 's|REVISION|REVISION " (CRUX)"|' $name/version.c
- # apply a sed substitutio that will suppress the installation of libiberty.a
+
+ sed -i 's|REVISION|REVISION " (CRUX-ARM 64b)"|' $name/version.c
+ # apply a sed substitution that will suppress the installation of libiberty.a
sed 's|install_to_$(INSTALL_DEST) ||' -i libiberty/Makefile.in
mkdir $SRC/build
cd $SRC/build
+ export CXXFLAGS="-O2 -pipe"
LDFLAGS="-Wl,-rpath-link,$CROSSTOOLS/$CTARGET/lib" \
../$name-$version/configure --build=$CHOST \
--host=$CTARGET \
--disable-nls \
--with-x=no \
--with-system-zlib \
- --with-pkgversion="CRUX"
+ --with-pkgversion="CRUX-ARM 64b"
# prevent GCC from looking in the wrong directories for headers and libraries
sed "/^HOST_\(GMP\|PPL\|CLOOG\)\(LIBS\|INC\)/s:-[IL]/\(lib\|include\)::" -i Makefile
make
- make DESTDIR=$PKG install
+ # prevent libtool from adding host lib paths for relink at install
+ # based on patch submitted by Vincent Cadet for libtool bug #21455
+ # see https://lists.gnu.org/archive/html/bug-libtool/2015-09/msg00012.html
+ for lt_file in $(find $SRC/build/$CTARGET -name libtool) ; do
+ sed -i 's/\(add_dir=\"\)\$add_dir \(-L\$inst_prefix_dir\$libdir\"\)/\1\2/' $lt_file
+ done
+
+ make -j1 DESTDIR=$PKG install
mkdir $PKG/lib
ln -sf ../usr/bin/cpp $PKG/lib/cpp
mv $PKG/usr/lib/gcc/*/$version/include-fixed/{limits.h,syslimits.h} $PKG/usr/lib/gcc/*/$version/include/
- rm $PKG/usr/lib/libstdc++.so.6.0.16-gdb.py
+ rm $PKG/usr/lib64/libstdc++.so.6.0.21-gdb.py
rm -r $PKG/usr/share
rm -r $PKG/usr/lib/gcc/*/$version/{install-tools,include-fixed}
- sed -i "s|-L$SRC[^ ]* ||g" $PKG/usr/lib/{libstdc++.la,libsupc++.la}
+ sed -i "s|-L$SRC[^ ]* ||g" $PKG/usr/lib64/{libstdc++.la,libsupc++.la}
}