pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/lang/ghc88 Fix an rpath issue on NetBSD



details:   https://anonhg.NetBSD.org/pkgsrc/rev/327d6e3fff34
branches:  trunk
changeset: 421666:327d6e3fff34
user:      pho <pho%pkgsrc.org@localhost>
date:      Fri Jan 17 07:10:56 2020 +0000

description:
Fix an rpath issue on NetBSD

diffstat:

 lang/ghc88/Makefile                                                       |   3 +-
 lang/ghc88/distinfo                                                       |   7 +-
 lang/ghc88/patches/patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs |  31 ++++++++++
 3 files changed, 37 insertions(+), 4 deletions(-)

diffs (75 lines):

diff -r 08d6fdcc01b4 -r 327d6e3fff34 lang/ghc88/Makefile
--- a/lang/ghc88/Makefile       Fri Jan 17 06:48:07 2020 +0000
+++ b/lang/ghc88/Makefile       Fri Jan 17 07:10:56 2020 +0000
@@ -1,8 +1,9 @@
-# $NetBSD: Makefile,v 1.6 2020/01/15 05:46:55 pho Exp $
+# $NetBSD: Makefile,v 1.7 2020/01/17 07:10:56 pho Exp $
 # -----------------------------------------------------------------------------
 # Package metadata
 #
 DISTNAME=      ghc-8.8.1-src
+PKGREVISION=   1
 PKGNAME=       ${DISTNAME:S/-src$//}
 CATEGORIES=    lang
 MASTER_SITES=  https://downloads.haskell.org/~ghc/${PKGVERSION_NOREV}/
diff -r 08d6fdcc01b4 -r 327d6e3fff34 lang/ghc88/distinfo
--- a/lang/ghc88/distinfo       Fri Jan 17 06:48:07 2020 +0000
+++ b/lang/ghc88/distinfo       Fri Jan 17 07:10:56 2020 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.6 2020/01/15 02:10:29 pho Exp $
+$NetBSD: distinfo,v 1.7 2020/01/17 07:10:56 pho Exp $
 
 SHA1 (ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz) = 04981802730423aa12999e59679be198d540222a
 RMD160 (ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz) = f617e67f2c2f07c7211cb391a4bc2e7b304045e2
@@ -24,13 +24,14 @@
 SHA1 (patch-compiler_main_DynFlags.hs) = 07bb2a5afdd087f4d2da5c035feecc13273aec70
 SHA1 (patch-configure.ac) = f521200b519fdaab1082c4a2fcac9c3dd9135d7b
 SHA1 (patch-ghc_ghc.mk) = 331b947f6a5af09b3fda82697f071941166edbd0
+SHA1 (patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs) = a4c82b1282c0580a7945be8c3b9d38bc760db99f
 SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00
 SHA1 (patch-libraries_base_System_CPUTime_Posix_Times.hsc) = 2bfb779d534d12073287274ce5e90b99e457a860
 SHA1 (patch-libraries_base_System_Environment.hs) = 7d79a91f295915b4408d5f41d5405739d7189215
 SHA1 (patch-libraries_time_lib_Data_Time_Clock_Internal_CTimespec.hsc) = 588270767f8a9cbde0648fc99807891fef65d721
 SHA1 (patch-libraries_time_lib_Data_Time_Clock_Internal_CTimeval.hs) = b2811ec4a845e6b2b44414e940b6108178b597c5
-SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00
+SHA1 (patch-libraries_unix_System_Posix_Env.hsc) = e94936c139ca15d45cac4a7feb74a601567913ab
 SHA1 (patch-libraries_unix_System_Posix_Env_ByteString.hsc) = 3f675fc5d6bf5cc59a2d5ccffeb9ccd51521645a
-SHA1 (patch-libraries_unix_System_Posix_Env.hsc) = e94936c139ca15d45cac4a7feb74a601567913ab
 SHA1 (patch-libraries_unix_System_Posix_Files_Common.hsc) = 6efef280832d376915a8987e4e8aac283408f607
 SHA1 (patch-libraries_unix_System_Posix_Signals.hsc) = 49215dce493a6bbc440f91a3959e592f86fc779b
+SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00
diff -r 08d6fdcc01b4 -r 327d6e3fff34 lang/ghc88/patches/patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/ghc88/patches/patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs Fri Jan 17 07:10:56 2020 +0000
@@ -0,0 +1,31 @@
+$NetBSD: patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs,v 1.1 2020/01/17 07:10:57 pho Exp $
+
+Enable Cabal's rpath overriding functionality on all the platforms
+known to use ELF.
+
+When a Cabal package which defins both a library and an executable is
+to be built, GHC by default embeds an rpath to the *build* directory
+into the executable. This may sound like a bug in GHC but is actually
+not, because GHC doesn't know the fact that the said library is going
+to be installed elsewhere. To overcome this issue, Cabal has a
+functionality to disable the default rpath handling of GHC and
+construct the correct set of rpaths... but only on certain platforms
+for some reason.
+
+--- libraries/Cabal/Cabal/Distribution/Simple/GHC.hs.orig      2020-01-16 22:47:21.132921936 +0000
++++ libraries/Cabal/Cabal/Distribution/Simple/GHC.hs
+@@ -1725,10 +1725,10 @@ getRPaths lbi clbi | supportRPaths hostO
+       case compid of
+         CompilerId GHC ver | ver >= mkVersion [7,10,2] -> True
+         _                                              -> False
+-    supportRPaths OpenBSD     = False
+-    supportRPaths NetBSD      = False
+-    supportRPaths DragonFly   = False
+-    supportRPaths Solaris     = False
++    supportRPaths OpenBSD     = True
++    supportRPaths NetBSD      = True
++    supportRPaths DragonFly   = True
++    supportRPaths Solaris     = True
+     supportRPaths AIX         = False
+     supportRPaths HPUX        = False
+     supportRPaths IRIX        = False



Home | Main Index | Thread Index | Old Index