diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2013-08-02 11:29:58 +0000 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2013-08-02 11:29:58 +0000 |
commit | 22bd329768a8a8404bf8d27248a946d3656b4203 (patch) | |
tree | 9b6f8780144a07072632e7f341747bdfb70415f2 /dev-lang/ghc/ghc-7.6.3-r1.ebuild | |
parent | Introduce disk space checks. Bug #479356. (diff) | |
download | historical-22bd329768a8a8404bf8d27248a946d3656b4203.tar.gz historical-22bd329768a8a8404bf8d27248a946d3656b4203.tar.bz2 historical-22bd329768a8a8404bf8d27248a946d3656b4203.zip |
unbreak ghci on 7.6.3-r1 on x86 arch.
libc_nonshared.a contains PIC objects while ghci needs non-PIC.
They are in libc.a. Picked that.
Package-Manager: portage-2.2.0_alpha190/cvs/Linux x86_64
Manifest-Sign-Key: 0x611FF3AA
Diffstat (limited to 'dev-lang/ghc/ghc-7.6.3-r1.ebuild')
-rw-r--r-- | dev-lang/ghc/ghc-7.6.3-r1.ebuild | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/dev-lang/ghc/ghc-7.6.3-r1.ebuild b/dev-lang/ghc/ghc-7.6.3-r1.ebuild index b693c3524d36..c18fca740127 100644 --- a/dev-lang/ghc/ghc-7.6.3-r1.ebuild +++ b/dev-lang/ghc/ghc-7.6.3-r1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ghc-7.6.3-r1.ebuild,v 1.1 2013/08/01 13:15:33 slyfox Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/ghc/ghc-7.6.3-r1.ebuild,v 1.2 2013/08/02 11:29:49 slyfox Exp $ # Brief explanation of the bootstrap logic: # @@ -615,19 +615,12 @@ src_compile() { fi # ! use binary } -ghc-needs-c_nonshared-for-interpreter-libs() { - local sample_test=${T}/c_nonshared-test.c - echo "int main() {} " > "${sample_test}" || die - $(tc-getCC) -o "${sample_test}".result "${sample_test}" \ - -L"${ROOT}"/usr/$(get_libdir) -lc_nonshared -} - add-c_nonshared-to-ghci-libs() { local ghci_lib local nonshared_dir=${T}/libc_nonshared_objects is_crosscompile && return - ghc-needs-c_nonshared-for-interpreter-libs || return + use elibc_glibc || return get-nonshared-objects() { # ns - 'nonshared' @@ -639,15 +632,18 @@ add-c_nonshared-to-ghci-libs() { # extract mkdir "${nonshared_dir}" || die pushd "${nonshared_dir}" >/dev/null || die - $(tc-getAR) x "${ROOT}"/usr/$(get_libdir)/libc_nonshared.a + $(tc-getAR) x "${ROOT}"/usr/$(get_libdir)/libc.a popd >/dev/null || die + # they are mostly contents of /usr/$(get_libdir)/libc_nonstahed.a + # but 'c_nonstahed' contains PIC variants of symbols. + # ghci uses non-PIC ones for ns_sym in \ stat fstat lstat mknod \ stat64 fstat64 lstat64 \ fstatat fstatat64 mknodat do - ns_srco=${nonshared_dir}/${ns_sym}.oS + ns_srco=${nonshared_dir}/${ns_sym}.o ns_dsto=${nonshared_dir}/${ns_sym}_weakened.o [[ -f ${ns_srco} ]] || continue # here we do The Magic: |