Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 345602 Details for
Bug 465964
dev-libs/nspr-4.9* fails to compile with clang due to CC call and restrictive testing in src_configure - also fails to do multilib builds
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
nspr-4.9.6.ebuild.patch
nspr-4.9.6.ebuild.patch (text/plain), 3.95 KB, created by
cmuelle8
on 2013-04-15 09:49:14 UTC
(
hide
)
Description:
nspr-4.9.6.ebuild.patch
Filename:
MIME Type:
Creator:
cmuelle8
Created:
2013-04-15 09:49:14 UTC
Size:
3.95 KB
patch
obsolete
>--- nspr-4.9.6.ebuild 2013-03-29 02:24:59.000000000 +0100 >+++ nspr-4.9.6-r1.ebuild 2013-04-15 11:35:04.000000000 +0200 >@@ -2,12 +2,10 @@ > # Distributed under the terms of the GNU General Public License v2 > # $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/nspr-4.9.6.ebuild,v 1.1 2013/03/29 01:24:59 anarchy Exp $ > >-EAPI=3 >+EAPI=5 > WANT_AUTOCONF="2.1" > >-inherit autotools eutils multilib toolchain-funcs versionator >- >-MIN_PV="$(get_version_component_range 2)" >+inherit autotools eutils versionator multilib-minimal > > DESCRIPTION="Netscape Portable Runtime" > HOMEPAGE="http://www.mozilla.org/projects/nspr/" >@@ -40,56 +38,65 @@ > # Respect LDFLAGS > sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ > "${S}"/mozilla/nsprpub/config/rules.mk || die >+ >+ # not all generated makefiles are put into ${S}/build >+ # in-source build needs copying, we can't just set BUILD_DIR="${S}/build" >+ multilib_copy_sources > } > >-src_configure() { >- cd "${S}"/build >+multilib_src_configure() { >+ cd build > >- # We use the standard BUILD_xxx but nspr uses HOST_xxx >- tc-export_build_env BUILD_CC >- export HOST_CC=${BUILD_CC} HOST_CFLAGS=${BUILD_CFLAGS} HOST_LDFLAGS=${BUILD_LDFLAGS} >- tc-export AR CC CXX RANLIB >- [[ ${CBUILD} != ${CHOST} ]] \ >- && export CROSS_COMPILE=1 \ >- || unset CROSS_COMPILE >- >- local myconf >- echo > "${T}"/test.c >- ${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test.c -o "${T}"/test.o || die >- case $(file "${T}"/test.o) in >- *32-bit*x86-64*|*64-bit*|*ppc64*|*x86_64*) myconf+=" --enable-64bit";; >- *32-bit*|*ppc*|*i386*) ;; >- *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; >- esac >+ # "real" cross-compiling, i.e. non-multilib needs testing - 2013-04-12 >+ if tc-is-cross-compiler; then >+ tc-export AR CC CXX RANLIB >+ >+ # most probably not needed >+ #export ac_cv_path_AR="${AR}" >+ >+ # build system swaps the meaning of BUILD and HOST >+ tc-export_build_env BUILD_CC >+ export HOST_CC=${BUILD_CC} \ >+ HOST_CFLAGS=${BUILD_CFLAGS} \ >+ HOST_LDFLAGS=${BUILD_LDFLAGS} \ >+ CROSS_COMPILE=1 >+ fi >+ >+ # econf sets --host=${CHOST}, eclasses might set --build=${CBUILD} >+ # switch CHOST and CBUILD for a proper econf - do not export these >+ local CHOST="${CBUILD:-${CHOST}}" >+ local CTARGET="${CTARGET:-${CHOST}}" >+ local CBUILD="${CTARGET}" > >- # Ancient autoconf needs help finding the right tools. > LC_ALL="C" ECONF_SOURCE="../mozilla/nsprpub" \ >- ac_cv_path_AR="${AR}" \ > econf \ > --libdir="${EPREFIX}/usr/$(get_libdir)" \ >+ $(if has_multilib_profile; then test64=$(get_libdir) >+ else test64=${CTARGET}; test64=${test64%%-*}; fi >+ if [[ -z "${test64##*64}" ]]; then echo "--enable-64bit" ; fi >+ ) \ > $(use_enable debug) \ >- $(use_enable !debug optimize) \ >- ${myconf} >+ $(use_enable !debug optimize) > } > >-src_compile() { >- cd "${S}"/build >- emake || die "failed to build" >+multilib_src_compile() { >+ emake -C build || die "failed to build" > } > >-src_install() { >- # Their build system is royally confusing, as usual >- MINOR_VERSION=${MIN_PV} # Used for .so version >- cd "${S}"/build >- emake DESTDIR="${D}" install || die "emake install failed" >- >- cd "${ED}"/usr/$(get_libdir) >- einfo "removing static libraries as upstream has requested!" >- rm -f *.a || die "failed to remove static libraries." >- >- # install nspr-config >- dobin "${S}"/build/config/nspr-config || die "failed to install nspr-config" >+multilib_src_install() { >+ emake -C build DESTDIR="${D}" install || die "emake install failed" > > # Remove stupid files in /usr/bin >+ einfo "removing static libraries as upstream has requested!" >+ rm -f "${ED}"/usr/$(get_libdir)/*.a || die "failed to remove static libraries." > rm -f "${ED}"/usr/bin/prerr.properties || die "failed to cleanup unneeded files" >+ >+ # Append version magic >+ find "${ED}/usr/$(get_libdir)" -name "*.so" -exec mv {}{,.${PV}} \; \ >+ || die "appending version magic failed" >+ >+ # Install nspr-config >+ is_final_abi && { >+ dobin build/config/nspr-config || die "failed to install nspr-config" >+ } > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 465964
:
345602
|
345604
|
345706
|
345708
|
345918
|
366188