From e7354877248edca198b0f359567350a80749cc1c Mon Sep 17 00:00:00 2001 From: Michał Masłowski Date: Tue, 1 Nov 2011 01:07:06 +0100 Subject: Use lib32 for glibc, symlink ld.so.1 to /lib. --- core/glibc/PKGBUILD | 44 ++++++++++++++++++++++++++++++++------------ 1 file changed, 32 insertions(+), 12 deletions(-) (limited to 'core') diff --git a/core/glibc/PKGBUILD b/core/glibc/PKGBUILD index 98fdb5107..4d21e0173 100644 --- a/core/glibc/PKGBUILD +++ b/core/glibc/PKGBUILD @@ -6,7 +6,7 @@ pkgname=glibc pkgver=2.14 -pkgrel=6.1 +pkgrel=6.2 _glibcdate=20110908 pkgdesc="GNU C Library" arch=('i686' 'x86_64' 'mips64el') @@ -130,14 +130,20 @@ build() { extra_addons=",ports" fi - echo "slibdir=/lib" >> configparms + if [[ ${CARCH} != "mips64el" ]]; then + echo "slibdir=/lib" >> configparms + libdir=/usr/lib + else + echo "slibdir=/lib32" >> configparms + libdir=/usr/lib32 + fi # remove hardening options from CFLAGS for building libraries CFLAGS=${CFLAGS/-fstack-protector/} CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/} ${srcdir}/glibc/configure --prefix=/usr \ - --libdir=/usr/lib --libexecdir=/usr/lib \ + --libdir=$libdir --libexecdir=$libdir \ --with-headers=/usr/include \ --enable-add-ons=nptl,libidn$extra_addons \ --enable-kernel=2.6.27 \ @@ -171,11 +177,19 @@ package() { cd ${srcdir}/glibc-build make install_root=${pkgdir} install + if [[ ${CARCH} != "mips64el" ]]; then + libdir=usr/lib + slibdir=lib + else + libdir=usr/lib32 + slibdir=lib32 + fi + rm -f ${pkgdir}/etc/ld.so.{cache,conf} install -dm755 ${pkgdir}/etc/rc.d install -dm755 ${pkgdir}/usr/sbin - install -dm755 ${pkgdir}/usr/lib/locale + install -dm755 ${pkgdir}/${libdir}/locale install -m644 ${srcdir}/glibc/nscd/nscd.conf ${pkgdir}/etc/nscd.conf install -m755 ${srcdir}/nscd ${pkgdir}/etc/rc.d/nscd install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/sbin @@ -198,6 +212,12 @@ package() { mkdir ${pkgdir}/lib64 cd ${pkgdir}/lib64 ln -v -s ../lib/ld* . + elif [[ ${CARCH} = "mips64el" ]]; then + # Previously our binaries used /lib/ld.so.1 as the interpreter, we + # don't want the upgrade to fail due to this. + mkdir ${pkgdir}/lib + cd ${pkgdir}/lib + ln -s ../lib32/ld* . fi # manually strip files as stripping libpthread-*.so and libthread_db.so @@ -208,16 +228,16 @@ package() { strip $STRIP_BINARIES sbin/{ldconfig,sln} \ usr/bin/{gencat,getconf,getent,iconv,locale} \ usr/bin/{localedef,pcprofiledump,rpcgen,sprof} \ - usr/lib/getconf/* \ + $libdir/getconf/* \ usr/sbin/{iconvconfig,nscd} [[ $CARCH = "i686" ]] && strip $STRIP_BINARIES usr/bin/lddlibc4 - strip $STRIP_STATIC usr/lib/*.a \ - lib/{{ld,libpthread}-${pkgver},libthread_db-1.0}.so + strip $STRIP_STATIC $libdir/*.a \ + $slibdir/{{ld,libpthread}-${pkgver},libthread_db-1.0}.so - strip $STRIP_SHARED lib/{libanl,libBrokenLocale,libc,libcidn,libcrypt}-${pkgver}.so \ - lib/libnss_{compat,dns,files,hesiod,nis,nisplus}-${pkgver}.so \ - lib/{libdl,libm,libnsl,libresolv,librt,libutil}-${pkgver}.so \ - lib/{libmemusage,libpcprofile,libSegFault}.so \ - usr/lib/{pt_chown,{audit,gconv}/*.so} + strip $STRIP_SHARED $slibdir/{libanl,libBrokenLocale,libc,libcidn,libcrypt}-${pkgver}.so \ + $slibdir/libnss_{compat,dns,files,hesiod,nis,nisplus}-${pkgver}.so \ + $slibdir/{libdl,libm,libnsl,libresolv,librt,libutil}-${pkgver}.so \ + $slibdir/{libmemusage,libpcprofile,libSegFault}.so \ + $libdir/{pt_chown,{audit,gconv}/*.so} } -- cgit v1.2.3-54-g00ecf