diff options
-rw-r--r-- | dev-lang/ghc/ChangeLog | 9 | ||||
-rw-r--r-- | dev-lang/ghc/Manifest | 15 | ||||
-rw-r--r-- | dev-lang/ghc/files/ghc-6.12.3-libffi-incorrect-detection-of-selinux.patch | 61 | ||||
-rw-r--r-- | dev-lang/ghc/ghc-6.12.3.ebuild | 8 |
4 files changed, 77 insertions, 16 deletions
diff --git a/dev-lang/ghc/ChangeLog b/dev-lang/ghc/ChangeLog index 2a28d049d593..3e6fb6dae97a 100644 --- a/dev-lang/ghc/ChangeLog +++ b/dev-lang/ghc/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for dev-lang/ghc -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ChangeLog,v 1.200 2010/11/27 12:43:55 kolmodin Exp $ +# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ChangeLog,v 1.201 2011/02/05 15:37:16 slyfox Exp $ + + 05 Feb 2011; Sergei Trofimovich <slyfox@gentoo.org> ghc-6.12.3.ebuild, + +files/ghc-6.12.3-libffi-incorrect-detection-of-selinux.patch: + Backported libffi fix from upstream. It fixes GHCi operation on GRSEC + kernel for TPE restricted users. Thanks to klondike! 27 Nov 2010; Lennart Kolmodin <kolmodin@gentoo.org> -ghc-6.12.1.ebuild: Remove masked GHC 6.12.1. diff --git a/dev-lang/ghc/Manifest b/dev-lang/ghc/Manifest index b8a8f6d71ed4..1ea2b7d0a3b2 100644 --- a/dev-lang/ghc/Manifest +++ b/dev-lang/ghc/Manifest @@ -1,6 +1,3 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - AUX 10ghc 40 RMD160 1c9e367fa4ea2fa2d3a046986b066b157964390a SHA1 33486a4907e8140f4d919813df4ef4e6203d6b20 SHA256 86c80e876343456b1a1407365bfc2a441bf4c6ca23d3549d67bd800abd617e2f AUX depsort.py 1958 RMD160 4192ad9ed14064a9da42ce1faedcf28996094da3 SHA1 2c900abeb6cfcc4327f0e9418b5abd7761ce5879 SHA256 7406f639d17b8acab6a1db7e398e74379b44950d4821bc36901abd3455d63b3d AUX ghc-6.10.2-readline.patch 8612 RMD160 cf3c1539a55225439c7f16c698e622c5f6f0cd47 SHA1 82318ea6285fc9dd3ed31a023e0a349a4950473c SHA256 9be6fe23aed177c6dd16fcea4eb9ba39406ee365cb923b33d084dec451005464 @@ -20,6 +17,7 @@ AUX ghc-6.12.3-ghciless-haddock-3558.patch 7222 RMD160 e2f4347100ce4c1763c3cdc37 AUX ghc-6.12.3-ia64-fixed-relax.patch 1362 RMD160 81224e6cc74d20b80b93c55eaeda7e2a6a7e3ae0 SHA1 d93beaf3fa9fa37b87f6fc6c7fc85d488ff809c3 SHA256 db632a48cef7fdce8fd24759af33527d489121ce3e67cbbcd235608aa0247a31 AUX ghc-6.12.3-ia64-storage-manager-fix.patch 3035 RMD160 067caf41e1ba60b5215b16eafeaec262904e2e2a SHA1 12a9ef095286f22e9b7107af28bff6916c3700d2 SHA256 9e08ad179c7fdc7de1899f89560ec26215968187956f2853639bbe85650fa2ab AUX ghc-6.12.3-ia64-use-libffi-for-foreign-import-wrapper.patch 683 RMD160 4361e22211960ef347a49e5d0fa53d6337d2c7a6 SHA1 6caf69a755034794f470c3f1e5f48e7453d4e949 SHA256 82f48006c95fb9d01c8618f7457cd2744d7a1fada8c70d25544eefa23cbfde2b +AUX ghc-6.12.3-libffi-incorrect-detection-of-selinux.patch 2228 RMD160 a2104ee651e7f751db4ca7e460b3b4816b1358cc SHA1 d9a5d631b46d510715182890fbd91b962d75aa21 SHA256 97410ae73b0e1cc127d5f07b39c3a6e0a3fdaf36491af17c7b7eb0c9c8d716b1 AUX ghc-6.12.3-ppc-use-libffi-for-foreign-import-wrapper.patch 609 RMD160 a26c8a5c7fde2188639484d5cc622de669e5f427 SHA1 03615e6b6428dd693b57d16420f3853ce3d51f47 SHA256 537a96473cec66739534da7cc88bbde37d7f5f0ab158a9921e666985c18fc1b5 AUX ghc-6.4.2-sparc32plus.patch 526 RMD160 970d062362284659c2570394c8f9328d8096ea8e SHA1 40d25c25a3cd6a228f3757b8e298fd8c72710544 SHA256 a05bd16c9308ec9f608aeabe0ea35e2dff6826f262108d1ccb16c4f93a2d3a44 AUX ghc-6.4.2-sparcmangler.patch 837 RMD160 7e3a2a94bb62c3c0da09f08096481cace2b1bb96 SHA1 5faccb311239c4c4d07a2c6dc507d51a18c2bc96 SHA256 3987724420c6d4b552c6fbb3b3ca10fca8aaa73573735aa3de824d3dc65f94af @@ -89,19 +87,12 @@ DIST ghc-bundled-readline-5.2_p13-amd64.tbz2 976677 RMD160 f0543aa3f404d45aad436 DIST ghc-bundled-readline-5.2_p13-x86.tbz2 940742 RMD160 5f9470a99047f004bd0917c62253bff9b663c9a5 SHA1 f5463a8929d2ba792b91085f78d6763cb50ef14e SHA256 bb9766235ed0d6e3c2f3ffe1625ecbe8e4d2e0254f7060e845be3a404835cd2a DIST ghc-testsuite-6.4.2.tar.gz 1181389 RMD160 1eea6a19a9fca6b3d56a6f29b69289cb88af8173 SHA1 7ada60fe2abb9208d841787781d522d5a1110dc2 SHA256 1a864243e922c233049585fa3bf4a86a0ca3e7b3ffebf26245eb037f15dd4d12 EBUILD ghc-6.10.4-r1.ebuild 13011 RMD160 4feb3ad764af5ad16b3dd5a000d49755c8b91c2a SHA1 c8eb3181598c05053e1f27b5fdb2a3a4264377b1 SHA256 f8c163192a9c5a62158bbb5698cef9872fa0e64956689aeafb3f90c8c9670b0a -EBUILD ghc-6.12.3.ebuild 14653 RMD160 191f638a64995360f906d98f3321ddf66a848735 SHA1 6f34062f2a02140500fd2365dfee007167236438 SHA256 e2a7f183aa512c39a8b666a2b3c652cb63f523c506ba9c58345eba273531c14b +EBUILD ghc-6.12.3.ebuild 14837 RMD160 3024428e465b143850d9639a91fbaa590ccfacc2 SHA1 0af3c5e79e75a604bb4980893829e49752dc1b70 SHA256 503bb8f7f53337a95e79b49f69b571ae1c3ef70e8b3b1ab2853ec8c0f9b3eaa2 EBUILD ghc-6.2.2.ebuild 10613 RMD160 32eb80c657fcea0c99e683b313643e063fa67f30 SHA1 e35b8257c2e2d7b8ed9e62835a0b76994f0e91a8 SHA256 570e1f68ec3965ab8aab15ea946e96c6f7be7e037e60a1b9afd26cd479122cca EBUILD ghc-6.4.2.ebuild 13718 RMD160 9cee26621e31ee8ed3e59cfd27cdf1f0689b054c SHA1 62f98f4ed6f74f770810b27d4772c4947129020e SHA256 b6fe46438045cc54225f20b4f4bdd4f33dfd18c303348e68d27626875de28368 EBUILD ghc-6.6.1.ebuild 12333 RMD160 76cd8b4fe72842cfcd0e2bf20f5c11e788472bd9 SHA1 3e5c4fc62c8fd1e6d12963a852ccea332d4b46a1 SHA256 31e22a90f41f66b127e428788f854e3ac4c08cae3cca2f326e2bb88e670e9de6 EBUILD ghc-6.6.ebuild 10978 RMD160 f67c1aa1d68f5a277d5d6db6004269f576b95d80 SHA1 7c18bc6d59b1c948651fad042a8928af8aa07a81 SHA256 8e3efaf74dd46ca2bcf3a0f5e75700b7ad4e8083795c3604cc247a0fa6e6d8bf EBUILD ghc-6.8.2-r1.ebuild 9147 RMD160 48d75d1fb56e58c4f87e95c6e1664bdabbb3eba4 SHA1 b8510681b9f2535a87f0cbef3768a771071ea1c5 SHA256 90eef3470c0ae305c0248ce2248333e703039a2c16ce6d567a88f9601b28690d EBUILD ghc-6.8.2.ebuild 9201 RMD160 0b0685249c09afbb3a03f8c54e458eabf6e0a90f SHA1 9dc6947b948770e710aae71ed2ccb301609b8ffb SHA256 724109ab0e94f8919bb0ea92a96f48be2a10bea5ee339e2b750bf81669e96231 -MISC ChangeLog 36060 RMD160 d461f07643c522dfe0b8dc80d741e084cff6fcb1 SHA1 77a0e9561e09d3ed2a4aa579b5b5eaac18515cfb SHA256 b62e1bfe0c9b5c91f930bc71fb9138285d170866400cdfeaf8937ca49c773d65 +MISC ChangeLog 36324 RMD160 156606c15346b7042b1c18764e3e1b74dde14fbc SHA1 e84bf915c8e7adb6a8495576b70b4b672a88c0d5 SHA256 d159ad6bd7185af142b74a645535c76c00dd7c92ef340090ac496178b931e367 MISC metadata.xml 442 RMD160 9cfa0af9084477c8a70ecf0ac3fb3093ae0cd602 SHA1 be2833090f093ac1c8fc2f5c6f3f253bdbdd6b96 SHA256 2bacbdfcaea11289949a687626f59f99af8fda9ec495b2c349ce5898d9f0dcd4 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.16 (GNU/Linux) - -iEYEARECAAYFAkzw/PwACgkQ1n/CYbXjntL0mQCfV6oBQBv2aV5TBt20u1FaNJRK -FBsAni0dvx7TkGvfsBd/DDoDM54zxgZa -=G+kh ------END PGP SIGNATURE----- diff --git a/dev-lang/ghc/files/ghc-6.12.3-libffi-incorrect-detection-of-selinux.patch b/dev-lang/ghc/files/ghc-6.12.3-libffi-incorrect-detection-of-selinux.patch new file mode 100644 index 000000000000..9d839fc7b3e3 --- /dev/null +++ b/dev-lang/ghc/files/ghc-6.12.3-libffi-incorrect-detection-of-selinux.patch @@ -0,0 +1,61 @@ +From 6d011f0865dc99d9306b5768ccd1eaa0355d994e Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich <slyfox@gentoo.org> +Date: Sat, 5 Feb 2011 11:53:33 +0200 +Subject: [PATCH] libffi: backport incorrect detection of selinux + +This patch unbreaks ghci on GRSEC kernels hardened with +TPE (Trusted Path Execution) protection. + +TPE forbids mmap('rwx') files opened for writes: + fd = open (a_file_in_tmp, O_RDWR); + mmap (..., PROT_READ | PROT_WRITE | PROT_EXEC, fd); + +while allows anonymous RWX mappings: + mmap (...MAP_ANONYMOUS , PROT_READ | PROT_WRITE | PROT_EXEC, -1); + +Thanks to klondike for finding it out. + +Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> +--- + libffi/ghc.mk | 2 ++ + libffi/libffi.selinux-detection-3.0.8.patch | 15 +++++++++++++++ + 2 files changed, 17 insertions(+), 0 deletions(-) + create mode 100644 libffi/libffi.selinux-detection-3.0.8.patch + +diff --git a/libffi/ghc.mk b/libffi/ghc.mk +index 1b1b118..a40f23c 100644 +--- a/libffi/ghc.mk ++++ b/libffi/ghc.mk +@@ -117,6 +117,8 @@ $(libffi_STAMP_CONFIGURE): + # This patch is just the resulting delta from running + # automake && autoreconf && libtoolize --force --copy + cd libffi/build && "$(PATCH)" -p1 < ../libffi.autotools-update-3.0.8.patch ++ # don't report nonselinux systems as selinux ++ cd libffi/build && "$(PATCH)" -p0 < ../libffi.selinux-detection-3.0.8.patch + + # Because -Werror may be in SRC_CC_OPTS/SRC_LD_OPTS, we need to turn + # warnings off or the compilation of libffi might fail due to warnings +diff --git a/libffi/libffi.selinux-detection-3.0.8.patch b/libffi/libffi.selinux-detection-3.0.8.patch +new file mode 100644 +index 0000000..a919f28 +--- /dev/null ++++ b/libffi/libffi.selinux-detection-3.0.8.patch +@@ -0,0 +1,15 @@ ++src/closures.c (selinux_enabled_check): Fix strncmp usage bug. ++ ++http://github.com/atgreen/libffi/commit/eaf444eabc4c78703c0f98ac0197b1619c1b1bef ++ ++--- src/closures.c +++++ src/closures.c ++@@ -146,7 +146,7 @@ ++ p = strchr (p + 1, ' '); ++ if (p == NULL) ++ break; ++- if (strncmp (p + 1, "selinuxfs ", 10) != 0) +++ if (strncmp (p + 1, "selinuxfs ", 10) == 0) ++ { ++ free (buf); ++ fclose (f); +-- +1.7.3.4 + diff --git a/dev-lang/ghc/ghc-6.12.3.ebuild b/dev-lang/ghc/ghc-6.12.3.ebuild index 8778fc6498f7..fc14bad839e8 100644 --- a/dev-lang/ghc/ghc-6.12.3.ebuild +++ b/dev-lang/ghc/ghc-6.12.3.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2010 Gentoo Foundation +# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ghc-6.12.3.ebuild,v 1.19 2010/11/14 18:10:55 slyfox Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ghc-6.12.3.ebuild,v 1.20 2011/02/05 15:37:16 slyfox Exp $ # Brief explanation of the bootstrap logic: # @@ -235,6 +235,10 @@ src_unpack() { # http://hackage.haskell.org/trac/ghc/ticket/3558 epatch "${FILESDIR}/ghc-6.12.3-ghciless-haddock-3558.patch" + # This patch unbreaks ghci on GRSEC kernels hardened with + # TPE (Trusted Path Execution) protection. + epatch "${FILESDIR}/ghc-6.12.3-libffi-incorrect-detection-of-selinux.patch" + # as we have changed the build system eautoreconf fi |