[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