Enable building dynamic haskell executables since dev-lang/ghc-7.10.1_rc3.
authorSergei Trofimovich <slyfox@gentoo.org>
Sat, 28 Mar 2015 13:32:40 +0000 (13:32 +0000)
committerSergei Trofimovich <slyfox@gentoo.org>
Sat, 28 Mar 2015 13:32:40 +0000 (13:32 +0000)
eclass/ChangeLog
eclass/ghc-package.eclass
eclass/haskell-cabal.eclass

index 449627532d77e812f4d45f04ad8a7f1b03761af9..1ee03e8696fa3ccfcf7967c18f34558f1603b9bb 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1574 2015/03/26 16:15:33 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1575 2015/03/28 13:32:40 slyfox Exp $
+
+  28 Mar 2015; Sergei Trofimovich <slyfox@gentoo.org> ghc-package.eclass,
+  haskell-cabal.eclass:
+  Enable building dynamic haskell executables since dev-lang/ghc-7.10.1_rc3.
 
   26 Mar 2015; <grknight@gentoo.org> php-ext-source-r2.eclass:
   Add deprecation warning when USE_PHP is empty
index 4c5e1bf41be34f50c3a4c36a1602650fddb3d9f8..6184a56ffc49657e337ae634e6ddf98f38d94aa9 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ghc-package.eclass,v 1.40 2015/01/01 21:23:03 slyfox Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ghc-package.eclass,v 1.41 2015/03/28 13:32:40 slyfox Exp $
 
 # @ECLASS: ghc-package.eclass
 # @MAINTAINER:
@@ -126,13 +126,6 @@ ghc-supports-smp() {
        $(ghc-getghc) --info | grep "Support SMP" | grep -q "YES"
 }
 
-# @FUNCTION: ghc-supports-dynamic-by-default
-# @DESCRIPTION:
-# checks if ghc links against shared haskell libraries by default
-ghc-supports-dynamic-by-default() {
-       $(ghc-getghc) --info | grep "Dynamic by default" | grep -q "YES"
-}
-
 # @FUNCTION: ghc-supports-interpreter
 # @DESCRIPTION:
 # checks if ghc has interpreter mode (aka GHCi)
index 33acb69982a02f471778b2da15506a1b5a31850a..daf95021553250a668f90e424b6a3e010c0b7001 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/haskell-cabal.eclass,v 1.49 2015/03/15 17:03:27 slyfox Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/haskell-cabal.eclass,v 1.50 2015/03/28 13:32:40 slyfox Exp $
 
 # @ECLASS: haskell-cabal.eclass
 # @MAINTAINER:
@@ -388,8 +388,14 @@ cabal-configure() {
 
        if $(ghc-supports-shared-libraries); then
                # maybe a bit lower
-               if $(ghc-supports-dynamic-by-default); then
-                       cabalconf+=(--enable-shared)
+               cabalconf+=(--enable-shared)
+
+               # Experimental support for dynamically linked binaries.
+               # We are enabling it since 7.10.1_rc3
+               if version_is_at_least "7.10.0.20150316" "$(ghc-version)"; then
+                       # Known to break on ghc-7.8/Cabal-1.18
+                       # https://ghc.haskell.org/trac/ghc/ticket/9625
+                       cabalconf+=(--enable-executable-dynamic)
                fi
        fi