[arch-commits] Commit in gcc-uclibc/trunk (PKGBUILD)
Thomas Bächler
thomas at archlinux.org
Sat Sep 26 23:25:12 UTC 2009
Date: Saturday, September 26, 2009 @ 19:25:12
Author: thomas
Revision: 53204
Update gcc to 4.4.1, make it work for both architectures and split into compiler and runtime
Modified:
gcc-uclibc/trunk/PKGBUILD
----------+
PKGBUILD | 69 +++++++++++++++++++++++++++++++++++++++++++------------------
1 file changed, 49 insertions(+), 20 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2009-09-26 23:02:08 UTC (rev 53203)
+++ PKGBUILD 2009-09-26 23:25:12 UTC (rev 53204)
@@ -1,26 +1,27 @@
# $Id$
# Maintainer: Jan de Groot <jgc at archlinux.org>
-# Maintainer: Allan McRae <allan at archlinux.org>
+# Maintainer: Thomas Bächler <thomas at archlinux.org>
-# toolchain build order: kernel-headers->glibc->binutils->gcc-libs->gcc->binutils->glibc
+# toolchain build order: kernel-headers->binutils-uclibc->uclibc->gcc-uclibc
-pkgname=gcc-uclibc
-pkgver=4.4.0
+pkbase=gcc-uclibc
+pkgname=('gcc-uclibc' 'gcc-libs-uclibc')
+pkgver=4.4.1
pkgrel=1
-_snapshot=4.4-20090526
+#_snapshot=4.4-20090526
_libstdcppmanver=4.4.0
-pkgdesc="The GNU Compiler Collection"
arch=('i686' 'x86_64')
license=('GPL' 'LGPL' 'custom')
-groups=('base-devel')
url="http://gcc.gnu.org"
-depends=('binutils-uclibc>=2.19.1' 'uclibc' 'mpfr>=2.4.1' 'cloog-ppl>=0.15.3' 'kernel-headers')
-makedepends=('flex')
+makedepends=('flex' 'binutils-uclibc>=2.19.1' 'uclibc' 'mpfr>=2.4.1' 'cloog-ppl>=0.15.3' 'kernel-headers')
options=('!libtool')
-source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-core-${pkgver}.tar.bz2
- ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-core-${_snapshot}.tar.bz2
+source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-core-${pkgver}.tar.bz2
+ #ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-core-${_snapshot}.tar.bz2
gcc-hash-style-both.patch
- gcc_pure64.patch)
+ gcc_pure64.patch)
+sha256sums=('4fbd2a5e0212e9bb30a2ea8d3901d8a12c0e3edc9b29f3a4859298145152fc49'
+ 'a600550d3d2b2fb8ee6a547c68c3a08a2af7579290b340c35ee5598c9bb305a5'
+ '2d369cf93c6e15c3559c3560bce581e0ae5f1f34dc86bca013ac67ef1c1a9ff9')
build() {
if ! locale -a | grep ^de_DE; then
@@ -28,15 +29,20 @@
return 1
fi
- #cd ${srcdir}/gcc-${pkgver}
- cd ${srcdir}/gcc-${_snapshot}
+ cd "${srcdir}/gcc-${pkgver}"
+ #cd ${srcdir}/gcc-${_snapshot}
# Don't install libiberty
sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in
- patch -Np1 -i "${srcdir}/gcc_pure64.patch" || return 1
- patch -Np0 -i ${srcdir}/gcc-hash-style-both.patch || return 1
+ if [ "${CARCH}" = "x86_64" ]; then
+ patch -Np1 -i "${srcdir}/gcc_pure64.patch" || return 1
+ target="x86_64-unknown-linux-uclibc"
+ else
+ target="i686-pc-linux-uclibc"
+ fi
+ patch -Np0 -i "${srcdir}"/gcc-hash-style-both.patch || return 1
- echo ${pkgver} > gcc/BASE-VER
+ echo "${pkgver}" > gcc/BASE-VER
mkdir build
cd build
@@ -46,12 +52,35 @@
--enable-threads=posix --mandir=/usr/share/man --infodir=/usr/share/info \
--enable-__cxa_atexit --disable-multilib --libdir=/usr/lib \
--libexecdir=/usr/lib --enable-clocale=gnu --disable-libstdcxx-pch \
- --with-tune=generic --disable-nls --target=x86_64-unknown-linux-uclibc \
+ --with-tune=generic --disable-nls --target=${target} \
--disable-decimal-float || return 1
make || return 1
- make -j1 DESTDIR=${pkgdir} install || return 1
+}
+package_gcc-uclibc() {
+ depends=('gcc-libs-uclibc' 'binutils-uclibc>=2.19.1' 'uclibc' 'mpfr>=2.4.1' 'cloog-ppl>=0.15.3' 'kernel-headers')
+ pkgdesc="The GNU Compiler Collection for uclibc"
+
+ cd "${srcdir}/gcc-${pkgver}/build"
+ make -j1 DESTDIR="${pkgdir}" install || return 1
+
rmdir "${pkgdir}/usr/include"
rm -rf "${pkgdir}/usr/share/info"
- rm -rf "${pkgdir}/usr/share/man/man7"
+ rm -rf "${pkgdir}/usr{,share}/man"
+ rm "${pkgdir}"/usr/${target}/lib/*.so*
}
+
+package_gcc-libs-uclibc() {
+ depends=('uclibc')
+ pkgdesc="The GNU Compiler Collection runtime libraries for uclibc"
+
+ cd "${srcdir}/gcc-${pkgver}/build"
+ make -j1 DESTDIR="${pkgdir}" install || return 1
+
+ rmdir "${pkgdir}/usr/include"
+ rm -rf "${pkgdir}/usr/lib/gcc"
+ rm -rf "${pkgdir}/usr/bin"
+ rm -rf "${pkgdir}/usr/share/info"
+ rm -rf "${pkgdir}/usr{,share}/man"
+ rm "${pkgdir}"/usr/${target}/lib/*.a
+}
More information about the arch-commits
mailing list