diff options
author | Antonio Rojas | 2018-11-28 21:45:01 +0000 |
---|---|---|
committer | Antonio Rojas | 2018-11-28 21:45:01 +0000 |
commit | b37a747180aea519e8c6e9ab27d603112141fa9a (patch) | |
tree | 5cf8e9875ca40c83e4f58f4cb266ce9cbc3c711a | |
download | aur-b37a747180aea519e8c6e9ab27d603112141fa9a.tar.gz |
Dropped from repos
-rw-r--r-- | .SRCINFO | 25 | ||||
-rw-r--r-- | PKGBUILD | 63 | ||||
-rw-r--r-- | gcc-3.4.3-no_multilib_amd64.patch | 11 | ||||
-rw-r--r-- | gcc-3.4.6-ucontext.patch | 21 | ||||
-rw-r--r-- | siginfo.patch | 14 |
5 files changed, 134 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..c5ab07c51780 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,25 @@ +pkgbase = lib32-libstdc++5 + pkgdesc = Legacy GNU Standard C++ library version 3 (32 bit) + pkgver = 3.3.6 + pkgrel = 7 + url = http://gcc.gnu.org + arch = x86_64 + license = GPL + license = LGPL + makedepends = gcc-multilib + makedepends = binutils + depends = lib32-gcc-libs + options = !makeflags + source = ftp://gcc.gnu.org/pub/gcc/releases/gcc-3.3.6/gcc-core-3.3.6.tar.bz2 + source = ftp://gcc.gnu.org/pub/gcc/releases/gcc-3.3.6/gcc-g++-3.3.6.tar.bz2 + source = gcc-3.4.3-no_multilib_amd64.patch + source = gcc-3.4.6-ucontext.patch + source = siginfo.patch + md5sums = 18c52e6fb8966b7700665dca289d077f + md5sums = 6b3d00b8d079805be1b895f7f6ce47a0 + md5sums = 8504bb22dae9d49e8b6d70d7e6910f1b + md5sums = 982ec78eed2887657189aefbe0c642d0 + md5sums = bf36b281a9fc81f624f31f2623a3ad0e + +pkgname = lib32-libstdc++5 + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..c6ab77f4d6cd --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,63 @@ +# Maintainer: Florian Pritz <bluewind@xinu.at> + +pkgname=lib32-libstdc++5 +pkgver=3.3.6 +pkgrel=7 +pkgdesc="Legacy GNU Standard C++ library version 3 (32 bit)" +arch=(x86_64) +url="http://gcc.gnu.org" +license=('GPL' 'LGPL') +depends=('lib32-gcc-libs') +makedepends=('gcc-multilib' 'binutils') +options=('!makeflags') +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++}-${pkgver}.tar.bz2 + gcc-3.4.3-no_multilib_amd64.patch + gcc-3.4.6-ucontext.patch + siginfo.patch) +md5sums=('18c52e6fb8966b7700665dca289d077f' + '6b3d00b8d079805be1b895f7f6ce47a0' + '8504bb22dae9d49e8b6d70d7e6910f1b' + '982ec78eed2887657189aefbe0c642d0' + 'bf36b281a9fc81f624f31f2623a3ad0e') + +prepare() { + cd ${srcdir}/gcc-${pkgver} + + patch -Np1 -i $srcdir/gcc-3.4.3-no_multilib_amd64.patch + patch -Np1 -i $srcdir/gcc-3.4.6-ucontext.patch + patch -Np0 -i $srcdir/siginfo.patch + + # fix build issue with recent gcc + sed -i "s#O_CREAT#O_CREAT, 0666#" gcc/collect2.c + # No fixincludes + sed -i -e 's@\./fixinc\.sh@-c true@' gcc/Makefile.in +} + +build(){ + export CC="gcc -m32" + export CPP="cpp -m32" + export CXX="g++ -m32" + export CFLAGS="-march=${CARCH/_/-} -O2 -pipe" + export CPPFLAGS="-march=${CARCH/_/-} -O2 -pipe" + export CXXFLAGS="-march=${CARCH/_/-} -O2 -pipe" + cd ${srcdir}/gcc-${pkgver} + + mkdir ../gcc-build + cd ../gcc-build + # We build the full multilib libstdc++5 here, no idea how to restrict + # the build process to the 32 bit version only. + ../gcc-${pkgver}/configure --prefix=/usr --enable-shared \ + --enable-languages=c++ --enable-threads=posix --enable-__cxa_atexit \ + --enable-multilib --libdir=/usr/lib32 + make all-target-libstdc++-v3 BOOT_CFLAGS="${CFLAGS}" STAGE1_CFLAGS="-O" +} + +package() { + cd ${srcdir}/gcc-build + make DESTDIR=${pkgdir} install-target-libstdc++-v3 + + # Only install the lib32 files + rm -rf ${pkgdir}/usr/{include,share,lib} + rm -f ${pkgdir}/usr/lib32/*.a + rm -f ${pkgdir}/usr/lib32/libstdc++.so +} diff --git a/gcc-3.4.3-no_multilib_amd64.patch b/gcc-3.4.3-no_multilib_amd64.patch new file mode 100644 index 000000000000..1ceff7678cfe --- /dev/null +++ b/gcc-3.4.3-no_multilib_amd64.patch @@ -0,0 +1,11 @@ +--- gcc-3.4.3/gcc/config/i386/t-linux64 ++++ gcc-3.4.3/gcc/config/i386/t-linux64 +@@ -6,7 +6,7 @@ + + MULTILIB_OPTIONS = m64/m32 + MULTILIB_DIRNAMES = 64 32 +-MULTILIB_OSDIRNAMES = ../lib64 ../lib ++MULTILIB_OSDIRNAMES = . ../lib + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib diff --git a/gcc-3.4.6-ucontext.patch b/gcc-3.4.6-ucontext.patch new file mode 100644 index 000000000000..536186d169f4 --- /dev/null +++ b/gcc-3.4.6-ucontext.patch @@ -0,0 +1,21 @@ +--- gcc-3.4.6/gcc/config/i386/linux64.h ++++ gcc-3.4.6/gcc/config/i386/linux64.h +@@ -90,7 +90,7 @@ + if (*(unsigned char *)(pc_+0) == 0x48 \ + && *(unsigned long *)(pc_+1) == 0x050f0000000fc0c7) \ + { \ +- struct ucontext *uc_ = (CONTEXT)->cfa; \ ++ ucontext_t *uc_ = (CONTEXT)->cfa; \ + sc_ = (struct sigcontext *) &uc_->uc_mcontext; \ + } \ + else \ +@@ -160,7 +160,7 @@ + struct siginfo *pinfo; \ + void *puc; \ + struct siginfo info; \ +- struct ucontext uc; \ ++ ucontext_t uc; \ + } *rt_ = (CONTEXT)->cfa; \ + sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \ + } \ + diff --git a/siginfo.patch b/siginfo.patch new file mode 100644 index 000000000000..4292c1aff49c --- /dev/null +++ b/siginfo.patch @@ -0,0 +1,14 @@ +--- gcc/config/i386/linux.h.orig 2014-04-28 10:00:16.556121683 +0000 ++++ gcc/config/i386/linux.h 2014-04-28 10:00:43.105959247 +0000 +@@ -257,9 +257,9 @@ + { \ + struct rt_sigframe { \ + int sig; \ +- struct siginfo *pinfo; \ ++ siginfo_t *pinfo; \ + void *puc; \ +- struct siginfo info; \ ++ siginfo_t info; \ + struct ucontext uc; \ + } *rt_ = (CONTEXT)->cfa; \ + sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \ |