diff options
author | Alexander Huemer <alexander.huemer@sbg.ac.at> | 2009-04-16 00:34:26 +0200 |
---|---|---|
committer | Alexander Huemer <alexander.huemer@sbg.ac.at> | 2009-04-16 00:34:26 +0200 |
commit | 081d9bdb3aeb15f5ac97977b3b84dce1ffe3b698 (patch) | |
tree | ff5d873d8f37226ad614ffde21296881c165c4ea | |
parent | added latest unstable dev-cpp/gtkmm (diff) | |
download | multilib-portage-081d9bdb3aeb15f5ac97977b3b84dce1ffe3b698.tar.gz multilib-portage-081d9bdb3aeb15f5ac97977b3b84dce1ffe3b698.tar.bz2 multilib-portage-081d9bdb3aeb15f5ac97977b3b84dce1ffe3b698.zip |
added latest unstable dev-libs/nss, dev-libs/nspr
-rw-r--r-- | dev-libs/nspr/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/nspr/nspr-4.7.4.ebuild | 93 | ||||
-rw-r--r-- | dev-libs/nss/Manifest | 3 | ||||
-rw-r--r-- | dev-libs/nss/files/nss-3.12-config.patch | 104 | ||||
-rw-r--r-- | dev-libs/nss/nss-3.12.3.ebuild | 135 |
5 files changed, 337 insertions, 0 deletions
diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest index ff7449593..4651401d5 100644 --- a/dev-libs/nspr/Manifest +++ b/dev-libs/nspr/Manifest @@ -3,4 +3,6 @@ AUX nspr-4.6.1-config.patch 2722 RMD160 75701d5dbdd25a05a3bb43539bfa5f5ea850aabd AUX nspr-4.6.1-lang.patch 1718 RMD160 6c3fb440f4b4004289de3f65b996936bcfcbaa45 SHA1 a5ae7b8c95204279fbcb1ac46a242448aa5a894d SHA256 326f5f9d020e73a6ed8e949124eb075f21d856d0b099b8d04035ecc937cd35fb AUX nspr-4.7.0-prtime.patch 964 RMD160 a963c21fb1ce5e8913d3c41753ca37b24e80798d SHA1 b47ffa12022ea83b738e5d847e61cca026ec7f07 SHA256 3fd4f3c68257dced021c0bfa00245d0da2d6c64205135b1cc89f96a3375dffc7 DIST nspr-4.7.3.tar.gz 1254585 RMD160 532417c8c4d04a32d6cfc09ea8f2279d5ee69e72 SHA1 351c34c8f26d11a441bc3130655cd9144e724899 SHA256 b1d2419ef1807c38944fc746fff14fda8506589e5462dc31194a9d1b494b9f49 +DIST nspr-4.7.4.tar.gz 1256846 RMD160 7f6478f889dbddd91271d2182ace910f32a2c375 SHA1 7653b922b1953bb21d25fb445d0ead90ac79dd21 SHA256 5532056aff17d6769953727ac7ba8dc62741612e936c5be84496671f8a2d08cd EBUILD nspr-4.7.3.ebuild 2668 RMD160 e2ee905ffd9cffd8150343f15fb25e2996ffbcd6 SHA1 ab69dd0c387f5c515e845300fe8dd32c7b617f73 SHA256 19b870624f2e26fe84704b1b32e94986485d989051e8f335586de9fef2d1aaa2 +EBUILD nspr-4.7.4.ebuild 2677 RMD160 841025a2a87f763b06bc854a87bed2c0f56a8164 SHA1 0de93975bc3214e5d9c9a455a2160c841951b683 SHA256 e7c22bca507492c05608fe45f235a9f1784040349b158a38678f91ffad2568fd diff --git a/dev-libs/nspr/nspr-4.7.4.ebuild b/dev-libs/nspr/nspr-4.7.4.ebuild new file mode 100644 index 000000000..4b43dce8e --- /dev/null +++ b/dev-libs/nspr/nspr-4.7.4.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/nspr-4.7.4.ebuild,v 1.1 2009/04/15 13:35:06 armin76 Exp $ + +EAPI="2" + +inherit eutils multilib toolchain-funcs multilib-native + +DESCRIPTION="Netscape Portable Runtime" +HOMEPAGE="http://www.mozilla.org/projects/nspr/" +SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${PV}/src/${P}.tar.gz" + +LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="ipv6 debug" + +DEPEND=">=dev-db/sqlite-3.5[lib32?]" + +multilib-native_src_prepare_internal() { + cd "${S}" + mkdir build inst + epatch "${FILESDIR}"/${PN}-4.6.1-config.patch + epatch "${FILESDIR}"/${PN}-4.6.1-config-1.patch + epatch "${FILESDIR}"/${PN}-4.6.1-lang.patch + epatch "${FILESDIR}"/${PN}-4.7.0-prtime.patch + + # Respect LDFLAGS + sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ + mozilla/nsprpub/config/rules.mk +} + +multilib-native_src_configure_internal() { + cd "${S}"/build + + echo > "${T}"/test.c + $(tc-getCC) -c "${T}"/test.c -o "${T}"/test.o + case $(file "${T}"/test.o) in + *64-bit*) myconf="${myconf} --enable-64bit";; + *32-bit*) ;; + *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; + esac + + if use ipv6; then + myconf="${myconf} --enable-ipv6" + fi + + myconf="${myconf} --libdir=/usr/$(get_libdir)/nspr \ + --enable-system-sqlite" + + ECONF_SOURCE="../mozilla/nsprpub" econf \ + $(use_enable debug) \ + ${myconf} || die "econf failed" +} + +multilib-native_src_compile_internal() { + cd ${S}/build + make CC="$(tc-getCC)" CXX="$(tc-getCXX)" || die +} + +multilib-native_src_install_internal() { + # Their build system is royally fucked, as usual + MINOR_VERSION=7 + cd "${S}"/build + emake DESTDIR="${D}" install || die "emake install failed" + + cd "${D}"/usr/$(get_libdir)/nspr + for file in *.so; do + mv ${file} ${file}.${MINOR_VERSION} + ln -s ${file}.${MINOR_VERSION} ${file} + done + # cope with libraries being in /usr/lib/nspr + dodir /etc/env.d + echo "LDPATH=/usr/$(get_libdir)/nspr" > "${D}/etc/env.d/08nspr-${ABI}" + + # install nspr-config + dobin "${S}"/build/config/nspr-config + + # create pkg-config file + insinto /usr/$(get_libdir)/pkgconfig/ + doins "${S}"/build/config/nspr.pc + + # Remove stupid files in /usr/bin + rm "${D}"/usr/bin/{prerr.properties,nspr.pc} +} + +multilib-native_pkg_preinst_internal() { + preserve_old_lib /usr/$(get_libdir)/nspr/lib{nspr,plc,plds}4.so.6 +} + +multilib-native_pkg_postinst_internal() { + preserve_old_lib_notify /usr/$(get_libdir)/nspr/lib{nspr,plc,plds}4.so.6 +} diff --git a/dev-libs/nss/Manifest b/dev-libs/nss/Manifest index c4c783888..7f8de59a4 100644 --- a/dev-libs/nss/Manifest +++ b/dev-libs/nss/Manifest @@ -2,6 +2,9 @@ AUX 3.12-nss-config.in 2400 RMD160 927a5573d72ad8c9d06a56fd094b7523d8cc0784 SHA1 AUX 3.12-nss.pc.in 280 RMD160 e6966434f42fdcdb71977ba80638c74ef4b2ae63 SHA1 2024da0f72759c87375459a4e521caaf97a7922c SHA256 c61ebe55abca04bf6b05024e6c160735f74fe83a1ba48b0314a4110b6828bbc9 AUX nss-3.11-config.patch 3167 RMD160 e4b57c89a518b54070b884f40ca11224ccc60349 SHA1 78acfa3c26bf5ca8f8d741f54c00bcf044d4c82b SHA256 0947675d067f09dee55684e29dc7764834ad640b2adf52d9450fbb1b7f9b728c AUX nss-3.12-config-1.patch 1508 RMD160 ea2f4e2f05cc865ef41af0c39e573b8eb8801f42 SHA1 4897595a91f331ce34155e9872ece3518acb1ac8 SHA256 22d72c155d7b6aa8f1dd797959d5ec3b0975cf9a1bf4607e6b0ee2207112c2b7 +AUX nss-3.12-config.patch 4192 RMD160 22955dd1a51b285748fff9f854946a461a9b43f2 SHA1 bcd834996c24c86e3af49e2b9c855925f80b055e SHA256 44acd5199ceed4a286b6526cb158db75e704fca34d6d3b2cddaaa99b9af7c926 AUX nss-mips64-2.patch 540 RMD160 16c461f453470238922065068dd6530b908bb64f SHA1 27062b98164c946d5116b64a49c7c164b261fdbd SHA256 06ad64812bd49382ff4165bfa452fd697a5ca2c03e8f3ffb9aa1bcfa14499b34 DIST nss-3.12.2.tar.bz2 3974864 RMD160 eebddb26f26268550d106301464e0f98944a5e04 SHA1 a668ddb8e80c90aaa6d958f85745c6595a493f38 SHA256 84fb75ded8db4a4a38cb12a7aeeeade4fed68ff0f5e9f069ffe021d3b36f94a4 +DIST nss-3.12.3.tar.bz2 4066954 RMD160 b5339eda9dfc87385b2c11e2ca53be249b75ed69 SHA1 eeca14a37629287baa10eb7562a5fb927e9dd171 SHA256 68152f9ad62b49c8860306a6056f5c42f1a66095749e97346a2c3001528075f4 EBUILD nss-3.12.2.ebuild 4819 RMD160 1d0650f490c68e6144b3866b8c9276e2d2e07aad SHA1 0c8c041bd0370affe3d360c2cc65a5ceef2d2148 SHA256 a6cf8850bad529588112d8498928fd42d0376869af03ab83492b719d26e466e3 +EBUILD nss-3.12.3.ebuild 4898 RMD160 2fb1838a03d0d0861e0e3905be45136c723bc01c SHA1 508b51572db5c7022d3e7f712d2458ccb219d06d SHA256 d0a6e1dead97ec18c5f26e92870488527f5361720f7d0ef072ed4c3eadbe2c61 diff --git a/dev-libs/nss/files/nss-3.12-config.patch b/dev-libs/nss/files/nss-3.12-config.patch new file mode 100644 index 000000000..085648e11 --- /dev/null +++ b/dev-libs/nss/files/nss-3.12-config.patch @@ -0,0 +1,104 @@ +diff -ur mozilla.orig/security/nss/lib/ckfw/builtins/config.mk mozilla/security/nss/lib/ckfw/builtins/config.mk +--- mozilla.orig/security/nss/lib/ckfw/builtins/config.mk 2009-04-15 15:29:14.000000000 +0000 ++++ mozilla/security/nss/lib/ckfw/builtins/config.mk 2009-04-15 15:31:02.000000000 +0000 +@@ -79,3 +79,10 @@ + endif + endif + endif ++ ++ifeq ($(OS_TARGET),Linux) ++# The -R '$ORIGIN' linker option instructs this library to search for its ++# dependencies in the same directory where it resides. ++DSO_LDOPTS += -Wl,-R,'$$ORIGIN' ++endif ++ +Only in mozilla/security/nss/lib/ckfw/builtins: config.mk.orig +Only in mozilla/security/nss/lib/ckfw/builtins: config.mk.rej +diff -ur mozilla.orig/security/nss/lib/ckfw/capi/config.mk mozilla/security/nss/lib/ckfw/capi/config.mk +--- mozilla.orig/security/nss/lib/ckfw/capi/config.mk 2009-04-15 15:29:14.000000000 +0000 ++++ mozilla/security/nss/lib/ckfw/capi/config.mk 2009-04-15 15:29:42.000000000 +0000 +@@ -71,3 +71,9 @@ + MKSHLIB += -R '$$ORIGIN' + endif + ++ifeq ($(OS_TARGET),Linux) ++# The -R '$ORIGIN' linker option instructs this library to search for its ++# dependencies in the same directory where it resides. ++DSO_LDOPTS += -Wl,-R,'$$ORIGIN' ++endif ++ +Only in mozilla/security/nss/lib/ckfw/capi: config.mk.orig +diff -ur mozilla.orig/security/nss/lib/freebl/Makefile mozilla/security/nss/lib/freebl/Makefile +--- mozilla.orig/security/nss/lib/freebl/Makefile 2009-04-15 15:29:14.000000000 +0000 ++++ mozilla/security/nss/lib/freebl/Makefile 2009-04-15 15:29:42.000000000 +0000 +@@ -143,6 +143,7 @@ + endif + + ifeq ($(OS_TARGET),Linux) ++DSO_LDOPTS += -Wl,-R,'$$ORIGIN' + ifeq ($(CPU_ARCH),x86_64) + ASFILES = arcfour-amd64-gas.s mpi_amd64_gas.s + ASFLAGS += -march=opteron -m64 -fPIC +Only in mozilla/security/nss/lib/freebl: Makefile.orig +diff -ur mozilla.orig/security/nss/lib/nss/config.mk mozilla/security/nss/lib/nss/config.mk +--- mozilla.orig/security/nss/lib/nss/config.mk 2009-04-15 15:29:14.000000000 +0000 ++++ mozilla/security/nss/lib/nss/config.mk 2009-04-15 15:29:42.000000000 +0000 +@@ -83,6 +83,11 @@ + + endif + ++ifeq ($(OS_TARGET),Linux) ++# The -R '$ORIGIN' linker option instructs this library to search for its ++# dependencies in the same directory where it resides. ++DSO_LDOPTS += -Wl,-R,'$$ORIGIN' ++endif + + # $(PROGRAM) has explicit dependencies on $(EXTRA_LIBS) + SHARED_LIBRARY_LIBS = \ +Only in mozilla/security/nss/lib/nss: config.mk.orig +diff -ur mozilla.orig/security/nss/lib/smime/config.mk mozilla/security/nss/lib/smime/config.mk +--- mozilla.orig/security/nss/lib/smime/config.mk 2009-04-15 15:29:14.000000000 +0000 ++++ mozilla/security/nss/lib/smime/config.mk 2009-04-15 15:31:30.000000000 +0000 +@@ -106,3 +106,8 @@ + endif + endif + ++ifeq ($(OS_TARGET),Linux) ++# The -R '$ORIGIN' linker option instructs this library to search for its ++# dependencies in the same directory where it resides. ++DSO_LDOPTS += -Wl,-R,'$$ORIGIN' ++endif +Only in mozilla/security/nss/lib/smime: config.mk.orig +Only in mozilla/security/nss/lib/smime: config.mk.rej +diff -ur mozilla.orig/security/nss/lib/softoken/config.mk mozilla/security/nss/lib/softoken/config.mk +--- mozilla.orig/security/nss/lib/softoken/config.mk 2009-04-15 15:29:14.000000000 +0000 ++++ mozilla/security/nss/lib/softoken/config.mk 2009-04-15 15:29:42.000000000 +0000 +@@ -114,6 +114,12 @@ + endif + endif + ++ifeq ($(OS_TARGET),Linux) ++# The -R '$ORIGIN' linker option instructs this library to search for its ++# dependencies in the same directory where it resides. ++DSO_LDOPTS += -Wl,-R,'$$ORIGIN' ++endif ++ + ifeq ($(OS_TARGET),WINCE) + DEFINES += -DDBM_USING_NSPR + endif +Only in mozilla/security/nss/lib/softoken: config.mk.orig +diff -ur mozilla.orig/security/nss/lib/ssl/config.mk mozilla/security/nss/lib/ssl/config.mk +--- mozilla.orig/security/nss/lib/ssl/config.mk 2009-04-15 15:29:14.000000000 +0000 ++++ mozilla/security/nss/lib/ssl/config.mk 2009-04-15 15:29:42.000000000 +0000 +@@ -130,4 +130,10 @@ + endif + endif + ++ifeq ($(OS_TARGET),Linux) ++# The -R '$ORIGIN' linker option instructs this library to search for its ++# dependencies in the same directory where it resides. ++DSO_LDOPTS += -Wl,-R,'$$ORIGIN' ++endif ++ + endif +Only in mozilla/security/nss/lib/ssl: config.mk.orig diff --git a/dev-libs/nss/nss-3.12.3.ebuild b/dev-libs/nss/nss-3.12.3.ebuild new file mode 100644 index 000000000..bca4d7b95 --- /dev/null +++ b/dev-libs/nss/nss-3.12.3.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nss/nss-3.12.3.ebuild,v 1.1 2009/04/15 13:37:53 armin76 Exp $ + +EAPI="2" + +inherit eutils flag-o-matic multilib toolchain-funcs multilib-native + +NSPR_VER="4.7.4" +RTM_NAME="NSS_${PV//./_}_RTM" +DESCRIPTION="Mozilla's Network Security Services library that implements PKI support" +HOMEPAGE="http://www.mozilla.org/projects/security/pki/nss/" +SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${RTM_NAME}/src/${P}.tar.bz2" +#SRC_URI="http://dev.gentoo.org/~armin76/dist/${P}.tar.bz2 +# mirror://gentoo/${P}.tar.bz2" + +LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="utils" + +S="${WORKDIR}/${P}" + +DEPEND=">=dev-libs/nspr-${NSPR_VER}[lib32?] + >=dev-db/sqlite-3.5[lib32?]" + +multilib-native_src_prepare_internal() { + cd "${S}"/mozilla/security/coreconf + # hack nspr paths + echo 'INCLUDES += -I/usr/include/nspr -I$(DIST)/include/dbm' \ + >> headers.mk || die "failed to append include" + + # cope with nspr being in /usr/$(get_libdir)/nspr + sed -e 's:$(DIST)/lib:/usr/'"$(get_libdir)"/nspr':' \ + -i location.mk + + # modify install path + sed -e 's:SOURCE_PREFIX = $(CORE_DEPTH)/\.\./dist:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \ + -i source.mk + + # Respect LDFLAGS + sed -i -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' rules.mk + + # do not always append -m64/-m32 on 64bit since it breaks multilib build + sed -i -e '/ARCHFLAG.*=/s:^:# :' Linux.mk + + cd "${S}" + epatch "${FILESDIR}"/${PN}-3.12-config.patch + epatch "${FILESDIR}"/${PN}-3.12-config-1.patch + epatch "${FILESDIR}"/${PN}-mips64-2.patch +} + +multilib-native_src_compile_internal() { + strip-flags + + echo > "${T}"/test.c + $(tc-getCC) ${CFLAGS} -c "${T}"/test.c -o "${T}"/test.o + case $(file "${T}"/test.o) in + *64-bit*) export USE_64=1;; + *32-bit*) ;; + *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; + esac + + export NSDISTMODE=copy + export NSS_USE_SYSTEM_SQLITE=1 + export NSS_ENABLE_ECC=1 + export NSPR_LIB_DIR="/usr/$(get_libdir)/nspr" + cd "${S}"/mozilla/security/coreconf + emake -j1 BUILD_OPT=1 XCFLAGS="${CFLAGS}" CC="$(tc-getCC)" || die "coreconf make failed" + cd "${S}"/mozilla/security/dbm + emake -j1 BUILD_OPT=1 XCFLAGS="${CFLAGS}" CC="$(tc-getCC)" || die "dbm make failed" + cd "${S}"/mozilla/security/nss + emake -j1 BUILD_OPT=1 XCFLAGS="${CFLAGS}" CC="$(tc-getCC)" || die "nss make failed" +} + +multilib-native_src_install_internal() { + MINOR_VERSION=12 + cd "${S}"/mozilla/security/dist + + # put all *.a files in /usr/lib/nss (because some have conflicting names + # with existing libraries) + dodir /usr/$(get_libdir)/nss + cp -L */lib/*.so "${D}"/usr/$(get_libdir)/nss || die "copying shared libs failed" + cp -L */lib/*.chk "${D}"/usr/$(get_libdir)/nss || die "copying chk files failed" + cp -L */lib/*.a "${D}"/usr/$(get_libdir)/nss || die "copying libs failed" + + # all the include files + insinto /usr/include/nss + doins private/nss/*.h + doins public/nss/*.h + cd "${D}"/usr/$(get_libdir)/nss + for file in *.so; do + mv ${file} ${file}.${MINOR_VERSION} + ln -s ${file}.${MINOR_VERSION} ${file} + done + + # coping with nss being in a different path. We move up priority to + # ensure that nss/nspr are used specifically before searching elsewhere. + dodir /etc/env.d + echo "LDPATH=/usr/$(get_libdir)/nss" > "${D}/etc/env.d/08nss-${ABI}" + + dodir /usr/bin + dodir /usr/$(get_libdir)/pkgconfig + cp "${FILESDIR}"/3.12-nss-config.in "${D}"/usr/bin/nss-config + cp "${FILESDIR}"/3.12-nss.pc.in "${D}"/usr/$(get_libdir)/pkgconfig/nss.pc + NSS_VMAJOR=`cat ${S}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VMAJOR" | awk '{print $3}'` + NSS_VMINOR=`cat ${S}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VMINOR" | awk '{print $3}'` + NSS_VPATCH=`cat ${S}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VPATCH" | awk '{print $3}'` + + sed -e "s,@libdir@,/usr/"$(get_libdir)"/nss,g" \ + -e "s,@prefix@,/usr,g" \ + -e "s,@exec_prefix@,\$\{prefix},g" \ + -e "s,@includedir@,\$\{prefix}/include/nss,g" \ + -e "s,@MOD_MAJOR_VERSION@,$NSS_VMAJOR,g" \ + -e "s,@MOD_MINOR_VERSION@,$NSS_VMINOR,g" \ + -e "s,@MOD_PATCH_VERSION@,$NSS_VPATCH,g" \ + -i "${D}"/usr/bin/nss-config + chmod 755 "${D}"/usr/bin/nss-config + + sed -e "s,@libdir@,/usr/"$(get_libdir)"/nss,g" \ + -e "s,@prefix@,/usr,g" \ + -e "s,@exec_prefix@,\$\{prefix},g" \ + -e "s,@includedir@,\$\{prefix}/include/nss," \ + -e "s,@NSPR_VERSION@,`nspr-config --version`,g" \ + -e "s,@NSS_VERSION@,$NSS_VMAJOR.$NSS_VMINOR.$NSS_VPATCH,g" \ + -i "${D}"/usr/$(get_libdir)/pkgconfig/nss.pc + chmod 644 "${D}"/usr/$(get_libdir)/pkgconfig/nss.pc + + if use utils; then + cd "${S}"/mozilla/security/dist/*/bin/ + for f in *; do + newbin ${f} nss${f} + done + fi +} |