diff options
author | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
---|---|---|
committer | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
commit | 415856bdd4f48ab4f2732996f0bae58595092bbe (patch) | |
tree | ede2018b591f6dfb477fe9341ba17b9bc000fab9 /multilib/gcc-multilib |
Tue Apr 5 14:26:38 UTC 2011
Diffstat (limited to 'multilib/gcc-multilib')
-rw-r--r-- | multilib/gcc-multilib/PKGBUILD | 267 | ||||
-rw-r--r-- | multilib/gcc-multilib/gcc-ada.install | 22 | ||||
-rw-r--r-- | multilib/gcc-multilib/gcc-fortran.install | 18 | ||||
-rw-r--r-- | multilib/gcc-multilib/gcc-hash-style-both.patch | 163 | ||||
-rw-r--r-- | multilib/gcc-multilib/gcc-libs.install | 14 | ||||
-rw-r--r-- | multilib/gcc-multilib/gcc.install | 22 | ||||
-rw-r--r-- | multilib/gcc-multilib/gcc_pure64.patch | 24 |
7 files changed, 530 insertions, 0 deletions
diff --git a/multilib/gcc-multilib/PKGBUILD b/multilib/gcc-multilib/PKGBUILD new file mode 100644 index 000000000..b3ec427ea --- /dev/null +++ b/multilib/gcc-multilib/PKGBUILD @@ -0,0 +1,267 @@ +# $Id: PKGBUILD 38863 2011-02-02 11:14:23Z ibiru $ +# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc +# NOTE: libtool requires rebuilt with each new gcc version + +pkgbase='gcc-multilib' +pkgname=('gcc-multilib' 'gcc-libs-multilib' 'lib32-gcc-libs' 'gcc-fortran-multilib' 'gcc-objc-multilib' 'gcc-ada-multilib') +pkgver=4.5.2 +pkgrel=6 +_snapshot=4.5-20110127 +_libstdcppmanver=4.5.2 # Note: check source directory name when updating this +pkgdesc="The GNU Compiler Collection for multilib" +arch=('x86_64') +license=('GPL' 'LGPL' 'custom') +url="http://gcc.gnu.org" +makedepends=('binutils-multilib>=2.21' 'libmpc' 'cloog-ppl>=0.15.9-2' 'elfutils' 'gcc-ada-multilib' 'dejagnu' + 'glibc>=2.11.1-2' 'lib32-glibc>=2.12.1') +options=('!libtool' '!emptydirs') +source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++,fortran,objc,ada,testsuite}-${pkgver}.tar.bz2 + ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-{core,g++,fortran,objc,ada,testsuite}-${_snapshot}.tar.bz2 + ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api-${_libstdcppmanver}.man.tar.bz2 + gcc_pure64.patch + gcc-hash-style-both.patch) +md5sums=('7dbdf06186dc98955221b2f7b987645b' + '4893036a98d8bedf44fe0741dfec6e1f' + 'c741c614e975c858cffb9e78b0b5124f' + 'b141fadc984cc0c1c0f15feb16db14e5' + '067672b640d0b912298791c1837606bc' + 'daffd2ba5917a263cdff5f38dcf8c323' + '2776eab5ebb7f9cc62dd2199a3a24382' + '22cec272f9cc2801d3cd348feaca888b' + '6fd395bacbd7b6e47c7b74854b478363') + +if [ -n "${_snapshot}" ]; then + _basedir="${srcdir}/gcc-${_snapshot}" +else + _basedir="${srcdir}/gcc-${pkgver}" +fi + +build() { + cd ${_basedir} + + # "Add" ppl-0.11 compatibility + sed -i "/ppl_minor_version=/s#10#11#" configure + + # Do not install libiberty + sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + patch -Np1 -i ${srcdir}/gcc_pure64.patch + patch -Np0 -i ${srcdir}/gcc-hash-style-both.patch + + echo ${pkgver} > gcc/BASE-VER + + cd ${srcdir} + mkdir gcc-build && cd gcc-build + ${_basedir}/configure --prefix=/usr \ + --enable-languages=c,c++,fortran,objc,obj-c++,ada \ + --enable-shared --enable-threads=posix --enable-__cxa_atexit \ + --enable-clocale=gnu --enable-gnu-unique-object \ + --enable-lto --enable-plugin \ + --enable-gold --with-plugin-ld=ld.gold \ + --enable-multilib --disable-libstdcxx-pch \ + --with-system-zlib --with-ppl \ + --with-cloog --with-cloog-include=/usr/include/cloog-ppl \ + --libdir=/usr/lib --libexecdir=/usr/lib \ + --mandir=/usr/share/man --infodir=/usr/share/info + make + + # increase stack size to prevent test failures + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827 + ulimit -s 32768 + + # do not abort on error as some are "expected" + make -k check || true + ${_basedir}/contrib/test_summary +} + +package_gcc-libs-multilib() +{ + pkgdesc="Runtime libraries shipped by GCC for multilib" + depends=('glibc>=2.11.1-2' "lib32-gcc-libs=$pkgver-$pkgrel") + provides=("gcc-libs=$pkgver-$pkgrel") + conflicts=('gcc-libs') + install=gcc-libs.install + + cd gcc-build + make -j1 -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared + for lib in libmudflap libgomp libssp libstdc++-v3/src; do + make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES + done + make -j1 -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install + make -j1 -C $CHOST/libgomp DESTDIR=${pkgdir} install-info + + make -j1 DESTDIR=${pkgdir} install-target-libgfortran + + make -j1 DESTDIR=${pkgdir} install-target-libobjc + # I thought I said to only install the lib... + rm -rf ${pkgdir}/usr/lib/gcc/ + rm -rf ${pkgdir}/usr/lib32 + + # remove static libraries + find ${pkgdir} -name *.a -delete + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-libs-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_lib32-gcc-libs() +{ + pkgdesc="Runtime libraries shipped by GCC (32-bit)" + depends=('lib32-glibc>=2.12.1' "gcc-libs>=$pkgver") + + cd gcc-build + make -j1 -C $CHOST/32/libgcc DESTDIR=${pkgdir} install-shared + for lib in libmudflap libgomp libssp libstdc++-v3/src; do + make -j1 -C $CHOST/32/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES + done + + make -j1 DESTDIR=${pkgdir} install-target-libgfortran + + make -j1 DESTDIR=${pkgdir} install-target-libobjc + + # I thought I said to only install the lib... + rm -rf ${pkgdir}/usr/lib + + # remove static libraries + find ${pkgdir} -name *.a -delete + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/lib32-gcc-libs/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-multilib() +{ + pkgdesc="The GNU Compiler Collection - C and C++ frontends for multilib" + depends=('binutils-multilib>=2.21' 'libmpc>=0.8.1-2' 'cloog-ppl>=0.15.9-2' 'elfutils' \ + "gcc-libs-multilib=$pkgver-$pkgrel") + groups=('multilib-devel') + provides=("gcc=$pkgver-$pkgrel") + conflicts=('gcc') + install=gcc.install + + cd gcc-build + + # much, much easier to install the lot and clean-up the mess + make -j1 DESTDIR=${pkgdir} install + rm $pkgdir/usr/bin/{*gfortran,gnat*} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{{,32/}ada{include,lib},finclude,include/objc}/* + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{cc1obj{,plus},f951,gnat1,{,32/}libgfortranbegin.a} + rm $pkgdir/usr/lib{,32}/{*.so*,lib{gfortran,objc}.a} + rm $pkgdir/usr/share/info/{gfortran,gnat*,libgomp}.info + rm $pkgdir/usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo + rm $pkgdir/usr/share/man/man1/gfortran.1 + + # many packages require these symlinks + install -dm755 ${pkgdir}/lib + ln -sf /usr/bin/cpp ${pkgdir}/lib/cpp + ln -sf gcc ${pkgdir}/usr/bin/cc + ln -sf g++ ${pkgdir}/usr/bin/c++ + + # POSIX conformance launcher scripts for c89 and c99 + cat > $pkgdir/usr/bin/c89 <<"EOF" +#!/bin/sh +fl="-std=c89" +for opt; do + case "$opt" in + -ansi|-std=c89|-std=iso9899:1990) fl="";; + -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF + + cat > $pkgdir/usr/bin/c99 <<"EOF" +#!/bin/sh +fl="-std=c99" +for opt; do + case "$opt" in + -std=c99|-std=iso9899:1999) fl="";; + -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF + + chmod 755 $pkgdir/usr/bin/c{8,9}9 + + # install the libstdc++ man pages + install -dm755 ${pkgdir}/usr/share/man/man3 + install -m644 ${srcdir}/libstdc++-api-${_libstdcppmanver}.man/man3/* \ + ${pkgdir}/usr/share/man/man3/ + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-fortran-multilib() +{ + pkgdesc="Fortran front-end for GCC for multilib" + depends=("gcc-multilib=$pkgver-$pkgrel") + provides=("gcc-fortran=$pkgver-$pkgrel") + conflicts=('gcc-fortran') + install=gcc-fortran.install + + cd gcc-build + make -j1 DESTDIR=$pkgdir install-target-libgfortran + make -j1 -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS + make -j1 -C gcc DESTDIR=$pkgdir fortran.install-{common,man,info} + install -Dm755 gcc/f951 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/f951 + + # remove libraries included in gcc-libs + rm -f ${pkgdir}/usr/lib{,32}/libgfortran.so* + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-fortran-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-objc-multilib() +{ + pkgdesc="Objective-C front-end for GCC for multilib" + depends=("gcc-multilib=$pkgver-$pkgrel") + provides=("gcc-objc=$pkgver-$pkgrel") + conflicts=('gcc-objc') + + cd gcc-build + make -j1 DESTDIR=$pkgdir install-target-libobjc + install -dm755 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ + install -m755 gcc/cc1obj{,plus} $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ + + # remove libraries included in gcc-libs + rm -f ${pkgdir}/usr/lib{,32}/libobjc.so* + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-objc-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-ada-multilib() +{ + pkgdesc="Ada front-end for GCC (GNAT) for multilib" + depends=("gcc-multilib=$pkgver-$pkgrel") + provides=("gcc-ada=$pkgver-$pkgrel") + conflicts=('gcc-ada') + install=gcc-ada.install + + cd gcc-build + make -j1 -C gcc DESTDIR=$pkgdir ada.install-{common,info} + install -m755 gcc/gnat1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver + make -j1 -C $CHOST/32/libada DESTDIR=${pkgdir} \ + INSTALL="install" INSTALL_DATA="install -m644" install-gnatlib + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-ada-multilib/RUNTIME.LIBRARY.EXCEPTION +} + diff --git a/multilib/gcc-multilib/gcc-ada.install b/multilib/gcc-multilib/gcc-ada.install new file mode 100644 index 000000000..81794685f --- /dev/null +++ b/multilib/gcc-multilib/gcc-ada.install @@ -0,0 +1,22 @@ +infodir=usr/share/info +filelist=(gnat-style.info gnat_rm.info gnat_ugn.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/multilib/gcc-multilib/gcc-fortran.install b/multilib/gcc-multilib/gcc-fortran.install new file mode 100644 index 000000000..2aeab7123 --- /dev/null +++ b/multilib/gcc-multilib/gcc-fortran.install @@ -0,0 +1,18 @@ +infodir=usr/share/info +file="gfortran.info" + +post_install() { + [ -x usr/bin/install-info ] || return 0 + install-info $infodir/$file.gz $infodir/dir 2> /dev/null +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null +} + +# vim:set ts=2 sw=2 et: diff --git a/multilib/gcc-multilib/gcc-hash-style-both.patch b/multilib/gcc-multilib/gcc-hash-style-both.patch new file mode 100644 index 000000000..fbb210598 --- /dev/null +++ b/multilib/gcc-multilib/gcc-hash-style-both.patch @@ -0,0 +1,163 @@ +#! /bin/sh -e + +# DP: Link using --hash-style=both (alpha, amd64, ia64, i386, powerpc, ppc64, s390, sparc) + +dir= +if [ $# -eq 3 -a "$2" = '-d' ]; then + pdir="-d $3" + dir="$3/" +elif [ $# -ne 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi +case "$1" in + -patch) + patch $pdir -f --no-backup-if-mismatch -p0 < $0 + #cd ${dir}gcc && autoconf + ;; + -unpatch) + patch $pdir -f --no-backup-if-mismatch -R -p0 < $0 + #rm ${dir}gcc/configure + ;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +esac +exit 0 + +2006-07-11 Jakub Jelinek <jakub@redhat.com> + + * config/i386/linux.h (LINK_SPEC): Add --hash-style=both. + * config/i386/linux64.h (LINK_SPEC): Likewise. + * config/rs6000/sysv4.h (LINK_OS_LINUX_SPEC): Likewise. + * config/rs6000/linux64.h (LINK_OS_LINUX_SPEC32, + LINK_OS_LINUX_SPEC64): Likewise. + * config/s390/linux.h (LINK_SPEC): Likewise. + * config/ia64/linux.h (LINK_SPEC): Likewise. + * config/sparc/linux.h (LINK_SPEC): Likewise. + * config/sparc/linux64.h (LINK_SPEC, LINK_ARCH32_SPEC, + LINK_ARCH64_SPEC): Likewise. + * config/alpha/linux-elf.h (LINK_SPEC): Likewise. + +--- gcc/config/alpha/linux-elf.h.orig 2007-08-04 08:55:58.000000000 +0200 ++++ gcc/config/alpha/linux-elf.h 2007-09-01 15:47:26.605865578 +0200 +@@ -39,7 +39,7 @@ + + #define ELF_DYNAMIC_LINKER LINUX_DYNAMIC_LINKER + +-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ ++#define LINK_SPEC "-m elf64alpha --hash-style=both %{G*} %{relax:-relax} \ + %{O*:-O3} %{!O*:-O1} \ + %{shared:-shared} \ + %{!shared: \ +--- gcc/config/s390/linux.h.orig 2007-08-04 08:55:59.000000000 +0200 ++++ gcc/config/s390/linux.h 2007-09-01 15:47:26.605865578 +0200 +@@ -77,7 +77,7 @@ + + #undef LINK_SPEC + #define LINK_SPEC \ +- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ ++ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --hash-style=both \ + %{shared:-shared} \ + %{!shared: \ + %{static:-static} \ +--- gcc/config/sparc/linux.h.orig 2007-08-04 08:56:01.000000000 +0200 ++++ gcc/config/sparc/linux.h 2007-09-01 15:47:26.605865578 +0200 +@@ -132,7 +132,7 @@ + + + #undef LINK_SPEC +-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ ++#define LINK_SPEC "-m elf32_sparc --hash-style=both -Y P,/usr/lib %{shared:-shared} \ + %{!mno-relax:%{!r:-relax}} \ + %{!shared: \ + %{!ibcs: \ +--- gcc/config/sparc/linux64.h.orig 2007-08-04 08:56:01.000000000 +0200 ++++ gcc/config/sparc/linux64.h 2007-09-01 15:47:26.605865578 +0200 +@@ -166,7 +166,7 @@ + { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ + { "link_arch", LINK_ARCH_SPEC }, + +-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,%R/usr/lib %{shared:-shared} \ ++#define LINK_ARCH32_SPEC "-m elf32_sparc --hash-style=both -Y P,%R/usr/lib %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ +@@ -175,7 +175,7 @@ + %{static:-static}}} \ + " + +-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \ ++#define LINK_ARCH64_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ +@@ -256,7 +256,7 @@ + #else /* !SPARC_BI_ARCH */ + + #undef LINK_SPEC +-#define LINK_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \ ++#define LINK_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ +--- gcc/config/i386/linux.h.orig 2007-08-04 08:56:07.000000000 +0200 ++++ gcc/config/i386/linux.h 2007-09-01 15:47:26.605865578 +0200 +@@ -108,7 +108,7 @@ + { "dynamic_linker", LINUX_DYNAMIC_LINKER } + + #undef LINK_SPEC +-#define LINK_SPEC "-m %(link_emulation) %{shared:-shared} \ ++#define LINK_SPEC "-m %(link_emulation) --hash-style=both %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ +--- gcc/config/i386/linux64.h.orig 2007-08-04 08:56:07.000000000 +0200 ++++ gcc/config/i386/linux64.h 2007-09-01 15:48:27.336781690 +0200 +@@ -65,7 +65,7 @@ + #endif + + #undef LINK_SPEC +-#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} \ ++#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} --hash-style=both \ + %{shared:-shared} \ + %{!shared: \ + %{!static: \ +--- gcc/config/ia64/linux.h.orig 2006-12-12 18:59:53.000000000 +0100 ++++ gcc/config/ia64/linux.h 2007-09-01 15:47:26.605865578 +0200 +@@ -40,7 +40,7 @@ + #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2" + + #undef LINK_SPEC +-#define LINK_SPEC "\ ++#define LINK_SPEC "--hash-style=both \ + %{shared:-shared} \ + %{!shared: \ + %{!static: \ +--- gcc/config/rs6000/sysv4.h.orig 2007-08-08 23:37:49.000000000 +0200 ++++ gcc/config/rs6000/sysv4.h 2007-09-01 15:47:26.615865729 +0200 +@@ -901,7 +901,7 @@ + #define LINUX_DYNAMIC_LINKER \ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) + +-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ ++#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}" + +--- gcc/config/rs6000/linux64.h.orig 2007-08-04 08:56:12.000000000 +0200 ++++ gcc/config/rs6000/linux64.h 2007-09-01 15:47:26.615865729 +0200 +@@ -354,11 +354,11 @@ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64) + + +-#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \ ++#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER32 "}}}" + +-#define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \ ++#define LINK_OS_LINUX_SPEC64 "-m elf64ppc --hash-style=both %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}}" + diff --git a/multilib/gcc-multilib/gcc-libs.install b/multilib/gcc-multilib/gcc-libs.install new file mode 100644 index 000000000..b5fbf9211 --- /dev/null +++ b/multilib/gcc-multilib/gcc-libs.install @@ -0,0 +1,14 @@ +infodir=usr/share/info +file="libgomp.info" + +post_upgrade() { + [ -x usr/bin/install-info ] || return 0 + install-info $infodir/$file.gz $infodir/dir 2> /dev/null +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null +} + +# vim:set ts=2 sw=2 et: diff --git a/multilib/gcc-multilib/gcc.install b/multilib/gcc-multilib/gcc.install new file mode 100644 index 000000000..a7a405288 --- /dev/null +++ b/multilib/gcc-multilib/gcc.install @@ -0,0 +1,22 @@ +infodir=usr/share/info +filelist=(cpp.info cppinternals.info gcc.info gccinstall.info gccint.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/multilib/gcc-multilib/gcc_pure64.patch b/multilib/gcc-multilib/gcc_pure64.patch new file mode 100644 index 000000000..8c6b08171 --- /dev/null +++ b/multilib/gcc-multilib/gcc_pure64.patch @@ -0,0 +1,24 @@ +diff -Naur gcc-4.2.0.orig/gcc/config/i386/linux64.h gcc-4.2.0/gcc/config/i386/linux64.h +--- gcc-4.2.0.orig/gcc/config/i386/linux64.h 2007-05-16 19:21:19.000000000 -0400 ++++ gcc-4.2.0/gcc/config/i386/linux64.h 2007-05-18 17:04:05.000000000 -0400 +@@ -49,7 +49,7 @@ + done. */ + + #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" ++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2" + + #undef LINK_SPEC + #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \ +diff -Naur gcc-4.2.0.orig/gcc/config/i386/t-linux64 gcc-4.2.0/gcc/config/i386/t-linux64 +--- gcc-4.2.0.orig/gcc/config/i386/t-linux64 2007-05-16 19:21:19.000000000 -0400 ++++ gcc-4.2.0/gcc/config/i386/t-linux64 2007-05-18 17:04:36.000000000 -0400 +@@ -6,7 +6,7 @@ + + MULTILIB_OPTIONS = m64/m32 + MULTILIB_DIRNAMES = 64 32 +-MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) ++MULTILIB_OSDIRNAMES = ../lib ../lib32 + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib |