diff options
author | Duncan Coutts <dcoutts@gentoo.org> | 2006-03-11 17:38:47 +0000 |
---|---|---|
committer | Duncan Coutts <dcoutts@gentoo.org> | 2006-03-11 17:38:47 +0000 |
commit | a95490c890d29c4624d54663c52e453c000392c6 (patch) | |
tree | ed99e8e978b5b5b56787f0acbea535565f492fc9 /dev-lang/ghc-bin | |
parent | Changed SRC_URI to reflect changes upstream. Fixes bug #124237. Thanks to Bee... (diff) | |
download | gentoo-2-a95490c890d29c4624d54663c52e453c000392c6.tar.gz gentoo-2-a95490c890d29c4624d54663c52e453c000392c6.tar.bz2 gentoo-2-a95490c890d29c4624d54663c52e453c000392c6.zip |
Relocate paths only in the scripts that need relocating. Use /bin/bash rather than /bin/sh for the driver scripts. Add a fix to set the CFLAGS in the ghc driver script correctly. Other minor tidy-ups.
(Portage version: 2.1_pre5-r4)
Diffstat (limited to 'dev-lang/ghc-bin')
-rw-r--r-- | dev-lang/ghc-bin/ChangeLog | 7 | ||||
-rw-r--r-- | dev-lang/ghc-bin/Manifest | 24 | ||||
-rw-r--r-- | dev-lang/ghc-bin/files/digest-ghc-bin-6.4.1 | 12 | ||||
-rw-r--r-- | dev-lang/ghc-bin/ghc-bin-6.4.1.ebuild | 53 |
4 files changed, 84 insertions, 12 deletions
diff --git a/dev-lang/ghc-bin/ChangeLog b/dev-lang/ghc-bin/ChangeLog index bad98d00db6b..6b54b32328ba 100644 --- a/dev-lang/ghc-bin/ChangeLog +++ b/dev-lang/ghc-bin/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for dev-lang/ghc-bin # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc-bin/ChangeLog,v 1.39 2006/03/01 16:10:54 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc-bin/ChangeLog,v 1.40 2006/03/11 17:38:47 dcoutts Exp $ + + 11 Mar 2006; Duncan Coutts <dcoutts@gentoo.org> ghc-bin-6.4.1.ebuild: + Relocate paths only in the scripts that need relocating. Use /bin/bash + rather than /bin/sh for the driver scripts. Add a fix to set the CFLAGS + in the ghc driver script correctly. Other minor tidy-ups. 01 Mar 2006; Markus Rothe <corsair@gentoo.org> ghc-bin-6.4.1.ebuild: Added ~ppc64; bug #88362 diff --git a/dev-lang/ghc-bin/Manifest b/dev-lang/ghc-bin/Manifest index 2d557cecab2e..41cff1ed3471 100644 --- a/dev-lang/ghc-bin/Manifest +++ b/dev-lang/ghc-bin/Manifest @@ -1,9 +1,27 @@ -MD5 9391f9832b7d1a9eb8f6e0387628feb2 ChangeLog 6263 +MD5 59e90b0cae1ffc6fc9868bbb51b91ebe ChangeLog 6543 +RMD160 a47ae439a9c311782a6375b5976291b65dfa6b78 ChangeLog 6543 +SHA256 d5abe03dfc0c298176db5c8c0800a42292c5ddf53866838d2a41a42da2812dac ChangeLog 6543 MD5 a82ba08a8abb4ae38bcc8d467c665e7b files/10ghc 40 +RMD160 1c9e367fa4ea2fa2d3a046986b066b157964390a files/10ghc 40 +SHA256 86c80e876343456b1a1407365bfc2a441bf4c6ca23d3549d67bd800abd617e2f files/10ghc 40 MD5 aeec673d67613d60a91b5d8d3a11b184 files/digest-ghc-bin-6.2.2-r1 218 +RMD160 ec9088c935c58ffdadeb3310819ede63712793e2 files/digest-ghc-bin-6.2.2-r1 218 +SHA256 27da3cb3e1e5829050642fa2570133da844326acaece3d7d4b01f6aea339adb0 files/digest-ghc-bin-6.2.2-r1 218 MD5 3919aa4d517b8bc37bc59b8e7dc4a334 files/digest-ghc-bin-6.4 356 -MD5 fdc0000c2d2ae1a70708d8d6a92646a9 files/digest-ghc-bin-6.4.1 422 +RMD160 13ea1e427826db4d10d4d9e96b88bfe2506e0884 files/digest-ghc-bin-6.4 356 +SHA256 5e83dc0703f66384d8b2a45993ef6b4ffc2bbd2bd01c8d4ffd8234a25e984bd8 files/digest-ghc-bin-6.4 356 +MD5 a1806b8567f78c7616c1d2ac1758aea4 files/digest-ghc-bin-6.4.1 1542 +RMD160 4c45ee724adf484f47a24c2bf702f21d7a424806 files/digest-ghc-bin-6.4.1 1542 +SHA256 ea67fa2e4d05db11a2d343098a3595d5d5a4293146584a9f4de9c2a60ed92fe2 files/digest-ghc-bin-6.4.1 1542 MD5 d4c41357e843c4af8ce3e6a4c1596627 ghc-bin-6.2.2-r1.ebuild 1032 -MD5 8927174f07e0edc9bc4ae7711befbce5 ghc-bin-6.4.1.ebuild 1243 +RMD160 461f55af3bb3f3476e728c13dd74218b92e7f3f5 ghc-bin-6.2.2-r1.ebuild 1032 +SHA256 c9ab4aff68caa9f4aba1dd53d170d462546fce28edd78435595666ad60e9332b ghc-bin-6.2.2-r1.ebuild 1032 +MD5 dbc252a61d057179ef51fa3a12be76f3 ghc-bin-6.4.1.ebuild 2663 +RMD160 f6189554b5e7d920f8122bcd08b25cebfe053db4 ghc-bin-6.4.1.ebuild 2663 +SHA256 7b531bfb4fb21c5868f05a8cf0465f80d5e60351bae68a6e3a273d086fda2d75 ghc-bin-6.4.1.ebuild 2663 MD5 9e5e3b68f1863c338a231811b31c00f1 ghc-bin-6.4.ebuild 1137 +RMD160 4b91634424e684abe68dbfbc5556cf62614329a3 ghc-bin-6.4.ebuild 1137 +SHA256 a6bcd36a94ce3232d6351e08415ebf591ff011f3604e6183d24da7f6728b4847 ghc-bin-6.4.ebuild 1137 MD5 c694674dcbef799cd4fdb6914683ebff metadata.xml 223 +RMD160 7783e6057effb8b8f0b79cffe8b557b32c633839 metadata.xml 223 +SHA256 1d00c8be162a6cb87b3de440b3e63e10b39c12d56e8fbfe592e75aed872b2508 metadata.xml 223 diff --git a/dev-lang/ghc-bin/files/digest-ghc-bin-6.4.1 b/dev-lang/ghc-bin/files/digest-ghc-bin-6.4.1 index e2582c71c3fd..74e4ae10cb4a 100644 --- a/dev-lang/ghc-bin/files/digest-ghc-bin-6.4.1 +++ b/dev-lang/ghc-bin/files/digest-ghc-bin-6.4.1 @@ -1,6 +1,18 @@ MD5 1d0a0e281fd057d1332d4268da49801a ghc-bin-6.4.1-alpha.tbz2 37043978 +RMD160 35b5de80cf635f1cdcda40d8e2a03306f255fdc3 ghc-bin-6.4.1-alpha.tbz2 37043978 +SHA256 6d025031c34c8fb95265f39e373853468c8d7597b06f4af086c1d01b4bcb527e ghc-bin-6.4.1-alpha.tbz2 37043978 MD5 d7f170508b4c7b5cd40b0d5e92685c1e ghc-bin-6.4.1-amd64.tbz2 17639473 +RMD160 8853c7314b8bf55018c26b5bdda7791347bed7ef ghc-bin-6.4.1-amd64.tbz2 17639473 +SHA256 3204824f51b8a0aa9b91dea58f702f905ba0e77a6d8706bb8e3396e4931bfe17 ghc-bin-6.4.1-amd64.tbz2 17639473 MD5 1b54055eaf0c4916da963481fa8b43e7 ghc-bin-6.4.1-ppc.tbz2 25575569 +RMD160 efabde19967193323ed11894930e46554affe14f ghc-bin-6.4.1-ppc.tbz2 25575569 +SHA256 6b212f71d5e466d609c66380b76bd3efdb6bf3bfb13fd781ecea3b5757694787 ghc-bin-6.4.1-ppc.tbz2 25575569 MD5 1be59597f2a984fd3f69f9e3d076602f ghc-bin-6.4.1-ppc64.tbz2 28245351 +RMD160 45b0498ae5baa5691bed0f78d8d8a32ee25439b9 ghc-bin-6.4.1-ppc64.tbz2 28245351 +SHA256 9421ac68ac5af55da9fb06866bb5afb3ce61bf74aeeb1896f79077bb1dba8e45 ghc-bin-6.4.1-ppc64.tbz2 28245351 MD5 cd0f80c503e5b4c956d7725c3764718e ghc-bin-6.4.1-sparc.tbz2 31121002 +RMD160 2eeb3b4d8af76978d46daf44831e44ed3b4f5d8a ghc-bin-6.4.1-sparc.tbz2 31121002 +SHA256 36c0f660c5178ae91e8b40fdd8213a52238264217db59c0c4f9ff3dc0179d5e7 ghc-bin-6.4.1-sparc.tbz2 31121002 MD5 a8c95e84f15acf1cf741a50a773eb626 ghc-bin-6.4.1-x86.tbz2 23234832 +RMD160 9e6ac0880f1d0e38039e7715d7efac81f74496c7 ghc-bin-6.4.1-x86.tbz2 23234832 +SHA256 edaea7c4d2f5da7ce9c4a57c9869af133ca72f25d89f899f26a3dedf82c64d98 ghc-bin-6.4.1-x86.tbz2 23234832 diff --git a/dev-lang/ghc-bin/ghc-bin-6.4.1.ebuild b/dev-lang/ghc-bin/ghc-bin-6.4.1.ebuild index 1304d1ea7e5a..0f4826166ea9 100644 --- a/dev-lang/ghc-bin/ghc-bin-6.4.1.ebuild +++ b/dev-lang/ghc-bin/ghc-bin-6.4.1.ebuild @@ -1,12 +1,11 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc-bin/ghc-bin-6.4.1.ebuild,v 1.6 2006/03/01 16:10:54 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc-bin/ghc-bin-6.4.1.ebuild,v 1.7 2006/03/11 17:38:47 dcoutts Exp $ -inherit multilib - -IUSE="" # use the non-binary version if you want to have more choice +inherit base multilib DESCRIPTION="Glasgow Haskell Compiler" +HOMEPAGE="http://www.haskell.org/ghc/" # list all arches for proper digest building: SRC_URI="x86? ( mirror://gentoo/${P}-x86.tbz2 ) amd64? ( mirror://gentoo/${P}-amd64.tbz2 ) @@ -14,12 +13,11 @@ SRC_URI="x86? ( mirror://gentoo/${P}-x86.tbz2 ) sparc? ( mirror://gentoo/${P}-sparc.tbz2 ) ppc? ( mirror://gentoo/${P}-ppc.tbz2 ) ppc64? ( mirror://gentoo/${P}-ppc64.tbz2 )" -HOMEPAGE="http://www.haskell.org" LICENSE="as-is" KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86" -# add these when they are ready: ~ppc64 SLOT="0" +IUSE="" # use the non-binary version if you want to have more choice RESTRICT="nostrip" # already stripped @@ -35,14 +33,53 @@ PROVIDE="virtual/ghc" S="${WORKDIR}" +src_unpack() { + base_src_unpack + cd "${S}" + + # relocate from /usr to /opt/ghc + sed -i -e "s|/usr|${LOC}|g" \ + usr/bin/ghc-${PV} usr/bin/ghci-${PV} usr/bin/ghc-pkg-${PV} \ + usr/$(get_libdir)/ghc-${PV}/package.conf + + # fix hardened gcc flags in the ghc driver script + if grep -q GHC_CFLAGS usr/bin/ghc; then + # Note! this will not be needed in the next version because the + # ghc-bin .tbz2 files will have been generated from a version of + # the ghc ebuild which inserted the right flags into the right files + ewarn "QA: ghc driver script does not need fixing for this version!" + else + # We start by removing all the previous -optc-* flags. + # Then we add $GHC_CFLAGS to the exec line. We replace a line that + # never needed to be there in the first place (ie '#!/bin/bash') with + # our line for setting GHC_CFLAGS= to the right set of flags. + GHC_CFLAGS="-optc-nopie -optl-nopie -optc-fno-stack-protector" + sed -i -e '$s|-optc[a-z-]*||g' \ + -e 's|${TOPDIROPT}|${TOPDIROPT} ${GHC_CFLAGS}|' \ + -e "s|#!/bin/bash|GHC_CFLAGS=\"${GHC_CFLAGS}\"|" \ + usr/bin/ghc-${PV} + + # For ghci we don't need these C flags at all + sed -i -e '$s|-optc[a-z-]*||g' \ + -e 's|#!/bin/bash||' \ + usr/bin/ghci-${PV} + + # We also change /bin/sh to /bin/bash in all the driver scripts since + # we think /sbin/sh can't handle ${1+"$@"}. Again, this will be fixed + # in the next rebuild of the ghc-bin .tbz2 files. + sed -i -e "s|/bin/sh|/bin/bash|" \ + usr/bin/ghc-${PV} usr/bin/ghci-${PV} usr/bin/ghc-pkg-${PV} + fi +} + src_compile() { - sed -i "s|/usr|${LOC}|g" usr/bin/* "usr/$(get_libdir)/ghc-${PV}/package.conf" mkdir -p ./${LOC} mv usr/* ./${LOC} + rmdir usr } src_install () { - cp -pr * "${D}" + mv * "${D}" insinto /etc/env.d doins "${FILESDIR}/10ghc" } |