summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2010-08-29 18:30:50 +0000
committerSergei Trofimovich <slyfox@gentoo.org>2010-08-29 18:30:50 +0000
commitcecba05a692fedab06c43306f48933bdc693a7bc (patch)
tree28d97b3c1aae1c752912b918ac6fab0023d36db8 /dev-lang/helium
parentalpha/ia64/m68k/s390/sh/sparc stable wrt #329791 (diff)
downloadgentoo-2-cecba05a692fedab06c43306f48933bdc693a7bc.tar.gz
gentoo-2-cecba05a692fedab06c43306f48933bdc693a7bc.tar.bz2
gentoo-2-cecba05a692fedab06c43306f48933bdc693a7bc.zip
Fixed build failure with forced --as-needed (bug #334403). Removed binary stripping, CFLAGS are now respected too.
(Portage version: 2.1.8.3/cvs/Linux x86_64)
Diffstat (limited to 'dev-lang/helium')
-rw-r--r--dev-lang/helium/ChangeLog8
-rw-r--r--dev-lang/helium/files/helium-1.6-respect-cflags-ldflags-nostrip.patch59
-rw-r--r--dev-lang/helium/helium-1.6.ebuild5
3 files changed, 69 insertions, 3 deletions
diff --git a/dev-lang/helium/ChangeLog b/dev-lang/helium/ChangeLog
index f76c2ee610fc..04c70b9788d0 100644
--- a/dev-lang/helium/ChangeLog
+++ b/dev-lang/helium/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-lang/helium
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/helium/ChangeLog,v 1.24 2010/07/24 14:39:07 slyfox Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/helium/ChangeLog,v 1.25 2010/08/29 18:30:50 slyfox Exp $
+
+ 29 Aug 2010; Sergei Trofimovich <slyfox@gentoo.org> helium-1.6.ebuild,
+ +files/helium-1.6-respect-cflags-ldflags-nostrip.patch:
+ Fixed build failure with forced --as-needed (bug #334403). Thanks to Diego
+ E. 'Flameeyes' Pettenò <flameeyes@gentoo.org> who reported it. Removed
+ binary stripping, CFLAGS are now respected too.
24 Jul 2010; Sergei Trofimovich <slyfox@gentoo.org> helium-1.6.ebuild:
Fixed build breakage against ghc-6.8+ (bug #247044). Thanks to Diego E.
diff --git a/dev-lang/helium/files/helium-1.6-respect-cflags-ldflags-nostrip.patch b/dev-lang/helium/files/helium-1.6-respect-cflags-ldflags-nostrip.patch
new file mode 100644
index 000000000000..6c035ad3b8fc
--- /dev/null
+++ b/dev-lang/helium/files/helium-1.6-respect-cflags-ldflags-nostrip.patch
@@ -0,0 +1,59 @@
+Original report: https://bugs.gentoo.org/attachment.cgi?id=244509
+
+The patch is not ideal as lvm/src/configure runs
+compiler tests without those flags enabled, but
+they are broken anyways.
+
+Added CFLAGS, LDFLAGS, remover STRIP call in C part of lvm.
+diff --git a/lvm/src/configure b/lvm/src/configure
+index 9aa1a1d..2789828 100755
+--- a/helium-1.6/lvm/src/configure
++++ b/helium-1.6/lvm/src/configure
+@@ -647,7 +647,7 @@ fi
+ echo "CC=$ccomp" >> makefile
+ echo "LINK=$link" >> makefile
+ echo "STRIP=$strip" >> makefile
+-echo "LINKOPTS=$cclinkopts" >> makefile
++echo "LINKOPTS=$cclinkopts \$(LDFLAGS)" >> makefile
+ echo "EXE=$exe" >> makefile
+ echo "DLL=$dll" >> makefile
+ echo "CP=cp" >> makefile
+@@ -662,7 +662,7 @@ case "$config" in
+ echo "CONFIGPATH=../config" >> makefile;;
+ esac
+
+-echo "CCOPTS=$cccompopts -I\$(CONFIGPATH)" >> makefile
++echo "CCOPTS=$cccompopts -I\$(CONFIGPATH) \$(CFLAGS)" >> makefile
+
+ rm -f tst$exe hasgot.c *.obj
+
+diff --git a/lvm/src/lib/makefile b/lvm/src/lib/makefile
+index d9a0004..78cce0f 100644
+--- a/helium-1.6/lvm/src/lib/makefile
++++ b/helium-1.6/lvm/src/lib/makefile
+@@ -55,7 +55,6 @@ OBJS = $(SRCS:.hs=.o)
+ # The main target
+ $(MAIN)$(EXE): $(OBJS)
+ $(HC) -o $@ $(HC_OPTS) $(OBJS)
+- $(STRIP) $@
+
+ common/ghc/Special.hi: common/ghc/Special.hs
+ $(HC) -c $< -cpp -fglasgow-exts $(HC_OPTS)
+diff --git a/lvm/src/runtime/makefile b/lvm/src/runtime/makefile
+index 310a7b6..bde3550 100644
+--- a/helium-1.6/lvm/src/runtime/makefile
++++ b/helium-1.6/lvm/src/runtime/makefile
+@@ -47,11 +47,10 @@ OBJS = $(SRCS:.c=.o)
+
+
+ #lvmrun$(EXE): $(OBJS)
+-# $(LINK) -o $@ $(LINKOPT) $(OBJS) -g
++# $(LINK) -o $@ $(OBJS) -g $(LINKOPT)
+
+ lvmrun$(EXE): $(OBJS)
+- $(LINK) -o $@ $(LINKOPT) $(OBJS)
+- $(STRIP) $@
++ $(LINK) -o $@ $(OBJS) $(LINKOPT)
+
+ core/evaluator.o: core/evaluator.c
+ $(CC) -o $@ -c $< $(CCOPT_FAST)
diff --git a/dev-lang/helium/helium-1.6.ebuild b/dev-lang/helium/helium-1.6.ebuild
index 9ef411864001..8e2528edad25 100644
--- a/dev-lang/helium/helium-1.6.ebuild
+++ b/dev-lang/helium/helium-1.6.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/helium/helium-1.6.ebuild,v 1.4 2010/07/24 22:11:55 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/helium/helium-1.6.ebuild,v 1.5 2010/08/29 18:30:50 slyfox Exp $
inherit autotools eutils
@@ -25,6 +25,7 @@ RDEPEND="dev-libs/gmp
src_unpack() {
unpack ${A}
epatch "${P}-ghc.patch"
+ epatch "${FILESDIR}/helium-1.6-respect-cflags-ldflags-nostrip.patch"
# split base only
sed -e 's/^GHCFLAGS =.*$/& -package containers/' \
@@ -67,7 +68,7 @@ src_unpack() {
-i "${S}/$bad_file"
done
- # cabal is their friend (oneOf bwcame polymorphic and breaks the test)
+ # cabal is their friend (oneOf became polymorphic and breaks the test)
sed -e 's/Text.ParserCombinators.Parsec/&.Pos/g' \
-e 's/oneOf/newPos/g' \
-i "${S}/helium/configure.in"