summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD16
1 files changed, 13 insertions, 3 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 636b38fbd91..015fb1f97aa 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,7 +8,7 @@ _pkgver_minor=4
pkgver=${_pkgver}.${_pkgver_minor}
_islver=0.12.2
_cloogver=0.18.1
-pkgrel=2
+pkgrel=3
pkgdesc="The GNU Compiler Collection"
arch=('i686' 'x86_64')
license=('GPL' 'LGPL' 'FDL' 'custom')
@@ -21,13 +21,15 @@ source=("ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2"
"ftp://gcc.gnu.org/pub/gcc/infrastructure/cloog-${_cloogver}.tar.gz"
"0000-gcc-4.9.ucontext.patch"
"0001-gcc-4.9-SIGSEGV.patch"
- "0002-gcc-4.9-__res_state.patch")
+ "0002-gcc-4.9-__res_state.patch"
+ "0003-gcc-4.9-ustate.patch")
md5sums=('87c24a4090c1577ba817ec6882602491'
'e039bfcfb6c2ab039b8ee69bf883e824'
'e34fca0540d840e5d0f6427e98c92252'
'4a0dc704f1d92ceb4dd8608811241cec'
'e787a03f0c38434490515a5823eca0b8'
- 'c64d1e20274ff4fbfacdd11bef2e1273')
+ 'c64d1e20274ff4fbfacdd11bef2e1273'
+ 'b27134678242f358c9b81cd73a1bcba1')
_basedir=gcc-${pkgver}
_libdir="usr/lib/gcc/$CHOST/$pkgver"
@@ -65,6 +67,8 @@ prepare() {
echo 'Failed to remove ^struct ucontext_t'
false
fi
+
+ patch -Nbup0 -i "${srcdir}/0003-gcc-4.9-ustate.patch"
mkdir ${srcdir}/gcc-build
}
@@ -80,6 +84,9 @@ build() {
# GCC 4.9 doesn't understand -fno-plt
CFLAGS=${CFLAGS/-fno-plt/}
CXXFLAGS=${CXXFLAGS/-fno-plt/}
+
+ # The GCC 4.9 library is otherwise found incorrectly zhen invoking host tools
+ export LD_PRELOAD=/usr/lib/libstdc++.so
${srcdir}/${_basedir}/configure --prefix=/usr \
--build=${CHOST} \
@@ -115,6 +122,9 @@ package()
{
cd ${srcdir}/gcc-build
+ # The GCC 4.9 library is otherwise found incorrectly zhen invoking host tools
+ export LD_PRELOAD=/usr/lib/libstdc++.so
+
make -j1 DESTDIR=${pkgdir} install
## Lazy way of dealing with conflicting man and info pages and locales...