summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncan Coutts <dcoutts@gentoo.org>2006-05-12 15:44:52 +0000
committerDuncan Coutts <dcoutts@gentoo.org>2006-05-12 15:44:52 +0000
commit9b64ad351cc6f640a5cc1d569ee3d8aad73c099a (patch)
tree73f05314ffc05289af0942ed405c501b5d2d0eef /dev-lang/ghc
parentLocking down to versions of openal that work, and removing older version as i... (diff)
downloadgentoo-2-9b64ad351cc6f640a5cc1d569ee3d8aad73c099a.tar.gz
gentoo-2-9b64ad351cc6f640a5cc1d569ee3d8aad73c099a.tar.bz2
gentoo-2-9b64ad351cc6f640a5cc1d569ee3d8aad73c099a.zip
Re-enable alut package and add hack for ia64
(Portage version: 2.1_pre10-r5)
Diffstat (limited to 'dev-lang/ghc')
-rw-r--r--dev-lang/ghc/ChangeLog6
-rw-r--r--dev-lang/ghc/files/digest-ghc-6.4.23
-rw-r--r--dev-lang/ghc/ghc-6.4.2.ebuild59
3 files changed, 47 insertions, 21 deletions
diff --git a/dev-lang/ghc/ChangeLog b/dev-lang/ghc/ChangeLog
index 7e75984e3385..84f252a5bfbe 100644
--- a/dev-lang/ghc/ChangeLog
+++ b/dev-lang/ghc/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for dev-lang/ghc
# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ChangeLog,v 1.100 2006/05/07 15:09:42 cparrott Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ChangeLog,v 1.101 2006/05/12 15:44:52 dcoutts Exp $
+
+ 12 May 2006; Duncan Coutts <dcoutts@gentoo.org>
+ +files/ghc-6.4.2-alut.patch, ghc-6.4.2.ebuild:
+ Re-enable alut package and add hack for ia64
05 May 2006; Chris Parrott <cparrott@gentoo.org> ghc-6.4.2.ebuild:
Temporarily disabled openal USE flag, pending fix to openal bindings.
diff --git a/dev-lang/ghc/files/digest-ghc-6.4.2 b/dev-lang/ghc/files/digest-ghc-6.4.2
index 2a258e9747fc..535bdc990220 100644
--- a/dev-lang/ghc/files/digest-ghc-6.4.2
+++ b/dev-lang/ghc/files/digest-ghc-6.4.2
@@ -1,3 +1,6 @@
+MD5 2719f349e10f883963ffe4b1537106b6 ghc-6.4.2-alut.patch.gz 6670
+RMD160 e6ab2a114f44f6f176a98c9cd6ab1e336662a958 ghc-6.4.2-alut.patch.gz 6670
+SHA256 e116b385df3bb5a5feb92ce92a92bdb0f24115361aedb1bddc9a7e6ce682d8b9 ghc-6.4.2-alut.patch.gz 6670
MD5 a394bf14e94c3bca5507d568fcc03375 ghc-6.4.2-src.tar.bz2 6954958
RMD160 19943eb2673e663973e64739cdf23720b6f36d38 ghc-6.4.2-src.tar.bz2 6954958
SHA256 d517e52e0204a077c54cda11b67bf9b6ac3daa47ac7bccf1561afc7c572e6be0 ghc-6.4.2-src.tar.bz2 6954958
diff --git a/dev-lang/ghc/ghc-6.4.2.ebuild b/dev-lang/ghc/ghc-6.4.2.ebuild
index 3a3c6819e9a6..1f7ef122588e 100644
--- a/dev-lang/ghc/ghc-6.4.2.ebuild
+++ b/dev-lang/ghc/ghc-6.4.2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ghc-6.4.2.ebuild,v 1.3 2006/05/07 15:09:42 cparrott Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ghc-6.4.2.ebuild,v 1.4 2006/05/12 15:44:52 dcoutts Exp $
# Brief explanation of the bootstrap logic:
#
@@ -27,25 +27,27 @@ EXTRA_SRC_URI="${MY_PV}"
[[ -z "${IS_SNAPSHOT}" ]] && EXTRA_SRC_URI="stable/dist"
SRC_URI="http://www.haskell.org/ghc/dist/${EXTRA_SRC_URI}/${MY_P}-src.tar.bz2
- test? ( http://haskell.org/ghc/dist/ghc-testsuite-${MY_PV}.tar.gz )"
+ test? ( http://haskell.org/ghc/dist/ghc-testsuite-${MY_PV}.tar.gz )
+ mirror://gentoo/${P}-alut.patch.gz"
LICENSE="as-is"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE="test doc X opengl" # openal temporarily disabled pending fix
+IUSE="test doc X opengl openal"
S="${WORKDIR}/${MY_P}"
PROVIDE="virtual/ghc"
-# openal temporarily disabled pending fix
RDEPEND="
>=sys-devel/gcc-2.95.3
>=dev-lang/perl-5.6.1
>=dev-libs/gmp-4.1
>=sys-libs/readline-4.2
X? ( || ( x11-libs/libX11 virtual/x11 ) )
- opengl? ( virtual/opengl virtual/glu virtual/glut )"
+ opengl? ( virtual/opengl
+ virtual/glu virtual/glut
+ openal? ( media-libs/openal ) )"
# ghc cannot usually be bootstrapped using later versions ...
DEPEND="${RDEPEND}
@@ -58,18 +60,24 @@ DEPEND="${RDEPEND}
PDEPEND=">=dev-haskell/cabal-1.1.4"
-# Portage's resolution of virtuals fails on virtual/ghc in some Portage releases,
-# the following function causes the build to fail with an informative error message
-# in such a case.
-# pkg_setup() {
-# if ! has_version virtual/ghc; then
-# eerror "This ebuild needs a version of GHC to bootstrap from."
-# eerror "Please emerge dev-lang/ghc-bin to get a binary version."
-# eerror "You can either use the binary version directly or emerge"
-# eerror "dev-lang/ghc afterwards."
-# die "virtual/ghc version required to build"
-# fi
-# }
+pkg_setup() {
+ if use openal && ! use opengl; then
+ ewarn "The OpenAL bindings require the OpenGL bindings, however"
+ ewarn "USE=\"-opengl\" so the OpenAL bindings will not be built."
+ ewarn "To build the OpenAL bindings emerge with USE=\"openal opengl\""
+ fi
+
+ # Portage's resolution of virtuals fails on virtual/ghc in some Portage
+ # releases, the following function causes the build to fail with an
+ # informative error message in such a case.
+ #if ! has_version virtual/ghc; then
+ # eerror "This ebuild needs a version of GHC to bootstrap from."
+ # eerror "Please emerge dev-lang/ghc-bin to get a binary version."
+ # eerror "You can either use the binary version directly or emerge"
+ # eerror "dev-lang/ghc afterwards."
+ # die "virtual/ghc version required to build"
+ #fi
+}
append-ghc-cflags() {
local flag compile assemble link
@@ -129,6 +137,9 @@ src_unpack() {
base_src_unpack
ghc_setup_cflags
+ cd ${S}
+ epatch "${WORKDIR}/${P}-alut.patch"
+
# Modify the ghc driver script to use GHC_CFLAGS
echo "SCRIPT_SUBST_VARS += GHC_CFLAGS" >> "${S}/ghc/driver/ghc/Makefile"
echo "GHC_CFLAGS = ${GHC_CFLAGS}" >> "${S}/ghc/driver/ghc/Makefile"
@@ -136,6 +147,11 @@ src_unpack() {
# If we're using the testsuite then move it to into the build tree
use test && mv "${WORKDIR}/testsuite" "${S}/"
+
+ # This is a hack for ia64. We can persuade ghc to avoid mangler errors
+ # if we turn down the optimisations in one problematic module.
+ use ia64 && sed -i -e 's/OPTIONS_GHC/OPTIONS_GHC -O0 -optc-O/' \
+ "${S}/libraries/base/GHC/Float.lhs"
}
src_compile() {
@@ -186,12 +202,15 @@ src_compile() {
echo "SplitObjs=NO" >> mk/build.mk
fi
- # openal temporarily disabled pending fix
+ # We've patched some configure.ac files to fix the OpenAL/ALUT bindings.
+ # So we need to autoreconf.
+ eautoreconf
+
econf \
$(use_enable opengl opengl) \
$(use_enable opengl glut) \
- --disable-openal \
- --disable-alut \
+ $(use_enable openal openal) \
+ $(use_enable openal alut) \
$(use_enable X x11) \
$(use_enable X hgl) \
|| die "econf failed"