# Description: The GNU Compiler Collection
-# URL: http://gcc.gnu.org/
+# URL: http://gcc.gnu.org
# Maintainer: CRUX System Team, core-ports at crux dot nu
# Arch Maintainer: CRUX-ARM System Team, devel at crux-arm dot nu
-# Depends on: libmpc zlib
+# Depends on: zlib libmpc
name=gcc
-version=4.6.2
+version=8.3.0
release=1
-
-source=(http://ftp.gnu.org/gnu/gcc/$name-$version/$name-$version.tar.bz2
- $name-nocheck-fixincludes.patch gcc-4.6-gnueabihf.patch)
+source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-$version/$name-$version.tar.xz \
+ $name-nocheck-fixincludes.patch)
build() {
- patch -d $name-$version -p1 -i $SRC/$name-4.6-gnueabihf.patch
patch -d $name-$version -p1 -i $SRC/$name-nocheck-fixincludes.patch
mkdir build
cd build
+
../$name-$version/configure --prefix=/usr \
- --build=$MACHTYPE \
- --mandir=/usr/man \
+ --build=arm-unknown-linux-gnueabihf \
+ --with-abi=aapcs-linux --with-mode=arm \
+ --with-float=hard \
--libexecdir=/usr/lib \
--enable-languages=c,c++,objc \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-clocale=gnu \
--enable-shared \
- --with-float=hard \
--disable-nls \
--with-x=no \
--with-system-zlib \
- --with-pkgversion="CRUX"
- make bootstrap
+ --with-pkgversion="CRUX-ARM"
+
+ make
make -j1 DESTDIR=$PKG install
mkdir $PKG/lib
mv $PKG/usr/lib/gcc/*/$version/include-fixed/{limits.h,syslimits.h} $PKG/usr/lib/gcc/*/$version/include/
- rm $PKG/usr/lib/{libiberty.a,libstdc++.so.*-gdb.py}
- rm -r $PKG/usr/share
- rm -r $PKG/usr/bin/*-linux-gnueabi*
- rm -r $PKG/usr/lib/gcc/*/$version/{install-tools,include-fixed}
+ rm -r $PKG/usr/share/{info,$name-$version}
+ rm -r $PKG/usr/bin/*-unknown-linux-*
+ rm -r $PKG/usr/lib/gcc/*/$version/{install-tools,include-fixed}
+
+ for D in lib; do
+ install -d -m 0755 $PKG/usr/share/gdb/auto-load/usr/${D}
+ mv $PKG/usr/${D}/libstdc++.so.*-gdb.py $PKG/usr/share/gdb/auto-load/usr/${D}
+ done
sed -i "s|-L$SRC[^ ]* ||g" $PKG/usr/lib/{libstdc++.la,libsupc++.la}
}