diff options
author | 2010-07-21 14:00:18 +0000 | |
---|---|---|
committer | 2010-07-21 14:00:18 +0000 | |
commit | aa062f5a9c88485c41ec975492a67cfa8786b86d (patch) | |
tree | dfb7dcdc443abf0cc66f36d15552800587d15b04 /dev-libs/nspr | |
parent | Version bump (diff) | |
download | historical-aa062f5a9c88485c41ec975492a67cfa8786b86d.tar.gz historical-aa062f5a9c88485c41ec975492a67cfa8786b86d.tar.bz2 historical-aa062f5a9c88485c41ec975492a67cfa8786b86d.zip |
Migrate changes from Gentoo Prefix overlay. Convert to EAPI3, add patches, etc. Approved by mozilla team in IRC, reference bug 328119
Package-Manager: portage-2.1.8.3/cvs/Linux x86_64
Diffstat (limited to 'dev-libs/nspr')
-rw-r--r-- | dev-libs/nspr/ChangeLog | 9 | ||||
-rw-r--r-- | dev-libs/nspr/Manifest | 9 | ||||
-rw-r--r-- | dev-libs/nspr/files/nspr-4.7.1-solaris.patch | 14 | ||||
-rw-r--r-- | dev-libs/nspr/files/nspr-4.7.4-solaris.patch | 62 | ||||
-rw-r--r-- | dev-libs/nspr/files/nspr-4.8.3-aix-gcc.patch | 145 | ||||
-rw-r--r-- | dev-libs/nspr/files/nspr-4.8.3-aix-soname.patch | 43 | ||||
-rw-r--r-- | dev-libs/nspr/files/nspr-4.8.4-darwin-install_name.patch | 25 | ||||
-rw-r--r-- | dev-libs/nspr/nspr-4.8.4-r1.ebuild | 45 |
8 files changed, 335 insertions, 17 deletions
diff --git a/dev-libs/nspr/ChangeLog b/dev-libs/nspr/ChangeLog index 05de56e28451..721e05cb003d 100644 --- a/dev-libs/nspr/ChangeLog +++ b/dev-libs/nspr/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-libs/nspr # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/ChangeLog,v 1.144 2010/07/02 09:14:32 gmsoft Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/ChangeLog,v 1.145 2010/07/21 14:00:18 darkside Exp $ + + 21 Jul 2010; Jeremy Olexa <darkside@gentoo.org> + +files/nspr-4.7.1-solaris.patch, +files/nspr-4.7.4-solaris.patch, + +files/nspr-4.8.3-aix-gcc.patch, +files/nspr-4.8.3-aix-soname.patch, + nspr-4.8.4-r1.ebuild, +files/nspr-4.8.4-darwin-install_name.patch: + Migrate changes from Gentoo Prefix overlay. Convert to EAPI3, add patches, + etc. Approved by mozilla team in IRC, reference bug 328119 02 Jul 2010; Guy Martin <gmsoft@gentoo.org> nspr-4.8.4.ebuild: hppa stable, #324735 diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest index 5cc8a189c803..e6abbc7d75c0 100644 --- a/dev-libs/nspr/Manifest +++ b/dev-libs/nspr/Manifest @@ -2,13 +2,18 @@ AUX nspr-4.6.1-config-1.patch 565 RMD160 62fef94c85f636249c83cb6f4a7cc00a71adf3f AUX nspr-4.6.1-config.patch 2722 RMD160 75701d5dbdd25a05a3bb43539bfa5f5ea850aabd SHA1 e8deaea05baf51eb6795db4e89ab89162d5d4632 SHA256 01bba00a314375cbb056c4e26e059515a6a0df92c62229799abca9f3fa9c7842 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 +AUX nspr-4.7.1-solaris.patch 516 RMD160 aaa024e1afabfae51a0060db328536e1a624ed3a SHA1 6766a9939830e8277f2342db806235ab2e30ab14 SHA256 e47a0abb5b106af38fdfab2ca8661b4a1596d48ff7ca988280728dc6b8a49447 +AUX nspr-4.7.4-solaris.patch 2011 RMD160 08060ba3885a1a659ad5a5505715ced0dd669d5f SHA1 9b0e2021e9dca56f741b505e5aa5ca56da47bbb1 SHA256 9e72078c941229e7112b4bc184e195821c9243bfb9411e9eeefcdb889866ff9f AUX nspr-4.8-config.patch 1429 RMD160 1988289c042f97ad8c3681b7febbbea45a3de9a6 SHA1 0055fb2f27865e3bcc6d6a9e6f79b633443295d6 SHA256 7cb63ea677ad9c92dde4513b16258f092b463738cb145edd95dd671bcfaa2150 AUX nspr-4.8-pkgconfig-gentoo-2.patch 4711 RMD160 3709911449facde45d1bebc60e9e1593aa691af5 SHA1 c41c608247aa712f783a1ec8ea2943b79dee44eb SHA256 5cd96bcb47f9678d4aac95d91d975101d31f038b05bd3f5b191a262d733b8943 AUX nspr-4.8-pkgconfig-gentoo-3.patch 4726 RMD160 c8e93e2a06b90d6e69a12dce4cfabaebf05b552b SHA1 5d4c67e7b3c0760fd8bb576b8623cbe967b01253 SHA256 f1197ff0f220425d38cae47667ea585cc999fb182cb5c13896e4449fde2d5b6d +AUX nspr-4.8.3-aix-gcc.patch 3673 RMD160 01b03fb2be761c72dd3eb9c7e9f03bb9c3cf9efc SHA1 7919b736f4ebe12d8067ba400325487c06df3d04 SHA256 b801bc5e93c57e54a076f1b1ed85fc6c4d5d6f344e830929e0a2c4046930a17f +AUX nspr-4.8.3-aix-soname.patch 1164 RMD160 da8fe1e17cade02ab6a4862ef901dd6c1606a1e3 SHA1 7a919bf08fa9d7a68815cdceda9082f5db8be445 SHA256 cec2e8b1cdf9e81f6b36c7981a5cb017fbf18192586c00d3e80ad897917bfcaa +AUX nspr-4.8.4-darwin-install_name.patch 1102 RMD160 eb565bc36822129e05f2fa45aaa52284333f2aee SHA1 5f7a057a457c3176aa255dfe1503cb23b5f37f09 SHA256 ca17efc9a60f4372b5da9c29ddf1143726381b9825907f8e3162974224636fab DIST nspr-4.8.4.tar.gz 1196103 RMD160 654b86f773130f74a19df3a06e40917a4cef9eb7 SHA1 c4af8c2956674ff0f17b4247516716e92db40cf6 SHA256 8c119a1702acf7568e5de887e84b34470a929639ee5a89271df2ba57a31f6746 DIST nspr-4.8.tar.gz 1170419 RMD160 f63468de3613793a8b564e967f3a963aab977c99 SHA1 ac30ec18bf0d070a9663d1a8c2d258004f3f42ad SHA256 a2de84aa21a7bbabd93c4f172123d58c6432c2358807bb260ac338b2dc61dbfe -EBUILD nspr-4.8.4-r1.ebuild 2734 RMD160 6de4bcde9664eb8ed9fffeb55da7240f825adf2e SHA1 765c223028e7408c920528af2df1909a465eb3f8 SHA256 289828766b1bdec7046fa5888907637dd08da3d3813f504ebf703d90277a6276 +EBUILD nspr-4.8.4-r1.ebuild 3481 RMD160 31760c3d42e433304c193dff6dfed75fa468a330 SHA1 a6603db67412f385841a8ed8908112cc64eefa35 SHA256 c5557f6e9cc0b7251fd1d7389a1e0a0de4cd443bb04a056c2f27662361c7bfe4 EBUILD nspr-4.8.4.ebuild 2721 RMD160 be8a7bf8d6c4f2e4f281db3e197eb7cac88d3df4 SHA1 e7432949225152478d4b1baff6e39c907afc7ce9 SHA256 ec3c804f585140c324f020100e3a65ead502edd6737e94ce0712660401a2b1ec EBUILD nspr-4.8.ebuild 2547 RMD160 a712f9f925c0bd045904a56d8b3a7ce09c44b9bb SHA1 26005a81d7cfd5ff5d571431da4452cff7cde536 SHA256 c49138f629d41b2958583b212a137908c5508228be87756217057c5c2e036e8d -MISC ChangeLog 18708 RMD160 1ee4a0b1ecba2119e7a70324f3a6c7cc832a78bc SHA1 dc2e60253abec35b3df5cfba5c41dc386508eb48 SHA256 0b1b15b2f6bb2e2b08b47d4af420e82517de1fa526a38f5f6cc0ecbf3f85bb48 +MISC ChangeLog 19107 RMD160 5e713f26b660f9fd2c6839f65a125238adaf3e9b SHA1 0707cbd7cbccc085af9e48cbaecb7bd5104ab52f SHA256 42887b8e3e845323914d67f08e21dfe3a3ea9a9afa4430a7916a2f49f0f84bd2 MISC metadata.xml 160 RMD160 d5a9f0bf8989621c2bde30facb53bcae00aba709 SHA1 5015c07af2083f20f9552d7fb11afb5ea69af345 SHA256 0cc5126362a12cee42ec1197c528a804cf36859329dd2c6d9225726831d14b8b diff --git a/dev-libs/nspr/files/nspr-4.7.1-solaris.patch b/dev-libs/nspr/files/nspr-4.7.1-solaris.patch new file mode 100644 index 000000000000..5d9e810a5fe7 --- /dev/null +++ b/dev-libs/nspr/files/nspr-4.7.1-solaris.patch @@ -0,0 +1,14 @@ +Same magic as haubi did for glib compilation, which works again here +resolving a linker problem on Solaris with GNU ld. Bug #222625 + +--- mozilla/nsprpub/pr/src/Makefile.in.orig 2008-06-22 22:24:56.671065000 +0200 ++++ mozilla/nsprpub/pr/src/Makefile.in 2008-06-23 14:38:52.320417000 +0200 +@@ -95,7 +95,7 @@ + endif + + ifdef USE_PTHREADS +-OS_LIBS = -lpthread ${LIBRT} -lsocket -lnsl -ldl -lc ++OS_LIBS = -pthread ${LIBRT} -lsocket -lnsl -ldl -lc + else + ifdef LOCAL_THREADS_ONLY + OS_LIBS = -lsocket -lnsl -ldl -lc diff --git a/dev-libs/nspr/files/nspr-4.7.4-solaris.patch b/dev-libs/nspr/files/nspr-4.7.4-solaris.patch new file mode 100644 index 000000000000..a0f14d555a3f --- /dev/null +++ b/dev-libs/nspr/files/nspr-4.7.4-solaris.patch @@ -0,0 +1,62 @@ +* drop Solaris linker stuff + +--- nspr-4.7.4/mozilla/nsprpub/configure.in ++++ nspr-4.7.4/mozilla/nsprpub/configure.in +@@ -1988,26 +1988,14 @@ + CPU_ARCH=`uname -p` + MDCPUCFG_H=_solaris.cfg + PR_MD_CSRCS=solaris.c +- LD=/usr/ccs/bin/ld + MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' + RESOLVE_LINK_SYMBOLS=1 +- case "${OS_RELEASE}" in +- 5.8|5.9) +- ;; +- *) +- # It is safe to use the -Bdirect linker flag on Solaris 10 or later. +- USE_B_DIRECT=1 +- ;; +- esac + if test -n "$GNU_CC"; then + DSO_CFLAGS=-fPIC + if `$CC -print-prog-name=ld` -v 2>&1 | grep -c GNU >/dev/null; then + GCC_USE_GNU_LD=1 + fi +- DSO_LDOPTS='-shared -Wl,-h,$(notdir $@),-z,combreloc,-z,defs,-z,ignore' +- if test -n "$USE_B_DIRECT"; then +- DSO_LDOPTS="$DSO_LDOPTS,-Bdirect" +- fi ++ DSO_LDOPTS='-shared -Wl,-soname -Wl,$(notdir $@)' + else + DSO_CFLAGS=-KPIC + DSO_LDOPTS='-G -h $(notdir $@) -z combreloc -z defs -z ignore' +--- nspr-4.7.4/mozilla/nsprpub/configure ++++ nspr-4.7.4/mozilla/nsprpub/configure +@@ -4765,26 +4765,14 @@ + CPU_ARCH=`uname -p` + MDCPUCFG_H=_solaris.cfg + PR_MD_CSRCS=solaris.c +- LD=/usr/ccs/bin/ld + MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' + RESOLVE_LINK_SYMBOLS=1 +- case "${OS_RELEASE}" in +- 5.8|5.9) +- ;; +- *) +- # It is safe to use the -Bdirect linker flag on Solaris 10 or later. +- USE_B_DIRECT=1 +- ;; +- esac + if test -n "$GNU_CC"; then + DSO_CFLAGS=-fPIC + if `$CC -print-prog-name=ld` -v 2>&1 | grep -c GNU >/dev/null; then + GCC_USE_GNU_LD=1 + fi +- DSO_LDOPTS='-shared -Wl,-h,$(notdir $@),-z,combreloc,-z,defs,-z,ignore' +- if test -n "$USE_B_DIRECT"; then +- DSO_LDOPTS="$DSO_LDOPTS,-Bdirect" +- fi ++ DSO_LDOPTS='-shared -Wl,-soname -Wl,$(notdir $@)' + else + DSO_CFLAGS=-KPIC + DSO_LDOPTS='-G -h $(notdir $@) -z combreloc -z defs -z ignore' diff --git a/dev-libs/nspr/files/nspr-4.8.3-aix-gcc.patch b/dev-libs/nspr/files/nspr-4.8.3-aix-gcc.patch new file mode 100644 index 000000000000..4dc4ea335d91 --- /dev/null +++ b/dev-libs/nspr/files/nspr-4.8.3-aix-gcc.patch @@ -0,0 +1,145 @@ +NSPR does not know that gcc does work on AIX: +https://bugzilla.mozilla.org/show_bug.cgi?id=547991 + +--- ./mozilla/nsprpub/configure.in.orig 2010-02-23 14:36:55 +0100 ++++ ./mozilla/nsprpub/configure.in 2010-02-23 14:37:08 +0100 +@@ -871,8 +871,13 @@ + AC_DEFINE(HAVE_FCNTL_FILE_LOCKING) + USE_IPV6=1 + AIX_LINK_OPTS='-brtl -bnso -berok' ++ if test -n "$GNU_CC"; then ++ LD='$(CC)' ++ DSO_LDOPTS='-shared -Wl,-G,-bernotok,-bexpall,-blibpath:/usr/lib:/lib' ++ fi + ;; + esac ++ test -z "$GNU_CC" && + CFLAGS="$CFLAGS -qro -qroconst" + AIX_WRAP='$(DIST)/lib/aixwrap.o' + AIX_TMP='./_aix_tmp.o' +--- ./mozilla/nsprpub/configure.orig 2010-02-23 14:36:58 +0100 ++++ ./mozilla/nsprpub/configure 2010-02-23 14:37:08 +0100 +@@ -3099,8 +3099,13 @@ + + USE_IPV6=1 + AIX_LINK_OPTS='-brtl -bnso -berok' ++ if test -n "$GNU_CC"; then ++ LD='$(CC)' ++ DSO_LDOPTS='-shared -Wl,-G,-bernotok,-bexpall,-blibpath:/usr/lib:/lib' ++ fi + ;; + esac ++ test -z "$GNU_CC" && + CFLAGS="$CFLAGS -qro -qroconst" + AIX_WRAP='$(DIST)/lib/aixwrap.o' + AIX_TMP='./_aix_tmp.o' +--- ./mozilla/nsprpub/lib/ds/Makefile.in.orig 2010-02-23 14:40:10 +0100 ++++ ./mozilla/nsprpub/lib/ds/Makefile.in 2010-02-23 14:40:58 +0100 +@@ -68,11 +68,19 @@ + endif # WINNT + + ifeq ($(OS_ARCH), AIX) ++ifndef NS_USE_GCC + ifeq ($(CLASSIC_NSPR),1) + OS_LIBS = -lc + else + OS_LIBS = -lc_r + endif ++else ++ifeq ($(CLASSIC_NSPR),1) ++OS_LIBS = ++else ++OS_LIBS = -pthread ++endif ++endif + endif + + ifeq ($(OS_ARCH),IRIX) +--- ./mozilla/nsprpub/lib/libc/src/Makefile.in.orig 2010-02-23 14:45:41 +0100 ++++ ./mozilla/nsprpub/lib/libc/src/Makefile.in 2010-02-23 14:47:58 +0100 +@@ -77,11 +77,19 @@ + endif # WINNT + + ifeq ($(OS_ARCH), AIX) ++ifndef NS_USE_GCC + ifeq ($(CLASSIC_NSPR),1) + OS_LIBS = -lc + else + OS_LIBS = -lc_r + endif ++else ++ifeq ($(CLASSIC_NSPR),1) ++OS_LIBS = ++else ++OS_LIBS = -pthread ++endif ++endif + endif + + ifeq ($(OS_ARCH),IRIX) +--- ./mozilla/nsprpub/pr/src/Makefile.in.orig 2010-02-23 14:37:04 +0100 ++++ ./mozilla/nsprpub/pr/src/Makefile.in 2010-02-23 14:52:16 +0100 +@@ -110,19 +110,29 @@ + endif + + ifeq ($(OS_ARCH),AIX) ++ifndef NS_USE_GCC + DSO_LDOPTS += -binitfini::_PR_Fini ++endif + OS_LIBS = -lodm -lcfg + ifeq ($(CLASSIC_NSPR),1) + ifeq ($(OS_RELEASE),4.1) + OS_LIBS += -lsvld -lc + else ++ifndef NS_USE_GCC + OS_LIBS += -ldl -lc ++else ++OS_LIBS += -ldl ++endif + endif + else + ifeq ($(OS_RELEASE),4.1) + OS_LIBS += -lpthreads -lsvld -lC_r -lC -lc_r -lm /usr/lib/libc.a + else ++ifndef NS_USE_GCC + OS_LIBS += -lpthreads -ldl -lC_r -lC -lc_r -lm /usr/lib/libc.a ++else ++OS_LIBS += -pthread -ldl -lm ++endif + endif + endif + endif +--- mozilla/nsprpub/pr/tests/Makefile.in.orig 2010-02-23 15:14:03 +0100 ++++ mozilla/nsprpub/pr/tests/Makefile.in 2010-02-23 15:17:58 +0100 +@@ -341,9 +341,17 @@ + + # AIX + ifeq ($(OS_ARCH),AIX) ++ ifndef NS_USE_GCC + LDOPTS += -blibpath:$(ABSOLUTE_LIB_DIR):/usr/lib:/lib ++ else ++ LDOPTS += -Wl,-blibpath:$(ABSOLUTE_LIB_DIR):/usr/lib:/lib ++ endif + ifneq ($(OS_ARCH)$(OS_RELEASE),AIX4.1) ++ ifndef NS_USE_GCC + LDOPTS += -brtl ++ else ++ LDOPTS += -Wl,-brtl ++ endif + EXTRA_LIBS = -ldl + endif + endif +--- mozilla/nsprpub/lib/tests/Makefile.in.orig 2010-02-23 15:35:37 +0100 ++++ mozilla/nsprpub/lib/tests/Makefile.in 2010-02-23 15:35:37 +0100 +@@ -127,7 +127,11 @@ + + # AIX + ifeq ($(OS_ARCH),AIX) ++ifndef NS_USE_GCC + LDOPTS += -blibpath:$(PWD)/$(dist_libdir):/usr/lib:/lib ++else ++LDOPTS += -Wl,-blibpath:$(PWD)/$(dist_libdir):/usr/lib:/lib ++endif + LIBPR = -lnspr$(MOD_MAJOR_VERSION)_shr + LIBPLC = -lplc$(MOD_MAJOR_VERSION)_shr + endif diff --git a/dev-libs/nspr/files/nspr-4.8.3-aix-soname.patch b/dev-libs/nspr/files/nspr-4.8.3-aix-soname.patch new file mode 100644 index 000000000000..667e699c202e --- /dev/null +++ b/dev-libs/nspr/files/nspr-4.8.3-aix-soname.patch @@ -0,0 +1,43 @@ +NSPR does not set the soname on any platform yet: +https://bugzilla.mozilla.org/show_bug.cgi?id=452873 + +Supporting something like "soname" on AIX is tricky: +http://bugs.gentoo.org/show_bug.cgi?id=213277 + +--- mozilla/nsprpub/config/rules.mk.orig 2010-02-23 15:55:00 +0100 ++++ mozilla/nsprpub/config/rules.mk 2010-02-23 16:04:31 +0100 +@@ -132,14 +132,17 @@ + else + ifdef MKSHLIB + SHARED_LIBRARY = $(OBJDIR)/lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX) ++ifeq ($(OS_ARCH), AIX) ++IMPORT_LIBRARY = $(OBJDIR)/lib$(LIBRARY_NAME).$(DLL_SUFFIX) ++endif + endif + endif + + endif + endif + + ifndef TARGETS +-ifeq (,$(filter-out WINNT WINCE OS2,$(OS_ARCH))) ++ifeq (,$(filter-out WINNT WINCE OS2 AIX,$(OS_ARCH))) + TARGETS = $(LIBRARY) $(SHARED_LIBRARY) $(IMPORT_LIBRARY) + ifndef BUILD_OPT + ifdef MSC_VER +@@ -327,6 +330,15 @@ + else + ifeq (,$(filter-out WIN95 WINCE,$(OS_TARGET))) + $(IMPORT_LIBRARY): $(SHARED_LIBRARY) ++else ++ifdef IMPORT_LIBRARY ++$(IMPORT_LIBRARY): $(SHARED_LIBRARY) ++ ( echo '#! $(notdir $(SHARED_LIBRARY))' \ ++ ; dump -Tv $(SHARED_LIBRARY) \ ++ | awk '{ if ($$4 == "EXP" && $$6 != "SECdef") { print $$8 } }' \ ++ | sort -u \ ++ ) > $@ ++endif + endif + endif + diff --git a/dev-libs/nspr/files/nspr-4.8.4-darwin-install_name.patch b/dev-libs/nspr/files/nspr-4.8.4-darwin-install_name.patch new file mode 100644 index 000000000000..1258b608aa68 --- /dev/null +++ b/dev-libs/nspr/files/nspr-4.8.4-darwin-install_name.patch @@ -0,0 +1,25 @@ +Don't use @executable_path, it messed up linking against nspr from e.g. +nss. + +--- mozilla/nsprpub/configure.in ++++ mozilla/nsprpub/configure.in +@@ -1007,7 +1007,7 @@ + ;; + esac + DSO_CFLAGS=-fPIC +- DSO_LDOPTS='-dynamiclib -compatibility_version 1 -current_version 1 -all_load -install_name @executable_path/$@ -headerpad_max_install_names' ++ DSO_LDOPTS='-dynamiclib -compatibility_version 1 -current_version 1 -all_load -install_name $(libdir)/$@ -headerpad_max_install_names' + _OPTIMIZE_FLAGS=-O2 + MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' + STRIP="$STRIP -x -S" +--- mozilla/nsprpub/configure ++++ mozilla/nsprpub/configure +@@ -1007,7 +1007,7 @@ + ;; + esac + DSO_CFLAGS=-fPIC +- DSO_LDOPTS='-dynamiclib -compatibility_version 1 -current_version 1 -all_load -install_name @executable_path/$@ -headerpad_max_install_names' ++ DSO_LDOPTS='-dynamiclib -compatibility_version 1 -current_version 1 -all_load -install_name $(libdir)/$@ -headerpad_max_install_names' + _OPTIMIZE_FLAGS=-O2 + MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' + STRIP="$STRIP -x -S" diff --git a/dev-libs/nspr/nspr-4.8.4-r1.ebuild b/dev-libs/nspr/nspr-4.8.4-r1.ebuild index 7c3626eff7b8..a2004d60b22e 100644 --- a/dev-libs/nspr/nspr-4.8.4-r1.ebuild +++ b/dev-libs/nspr/nspr-4.8.4-r1.ebuild @@ -1,6 +1,8 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/nspr-4.8.4-r1.ebuild,v 1.1 2010/05/16 18:39:14 anarchy Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/nspr-4.8.4-r1.ebuild,v 1.2 2010/07/21 14:00:18 darkside Exp $ + +EAPI=3 inherit eutils multilib toolchain-funcs versionator @@ -12,41 +14,49 @@ SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${PV}/src/${P}.tar LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" IUSE="debug" -src_unpack() { - unpack ${A} - cd "${S}" +src_prepare() { mkdir build inst epatch "${FILESDIR}"/${PN}-4.8-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 epatch "${FILESDIR}"/${PN}-4.8-pkgconfig-gentoo-3.patch + epatch "${FILESDIR}"/${PN}-4.7.1-solaris.patch + epatch "${FILESDIR}"/${PN}-4.7.4-solaris.patch + epatch "${FILESDIR}"/${PN}-4.8.3-aix-gcc.patch + epatch "${FILESDIR}"/${PN}-4.8.3-aix-soname.patch + epatch "${FILESDIR}"/${PN}-4.8.4-darwin-install_name.patch + # make sure it won't find Perl out of Prefix + sed -i -e "s/perl5//g" mozilla/nsprpub/configure || die # Respect LDFLAGS sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ mozilla/nsprpub/config/rules.mk } -src_compile() { +src_configure() { 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*) ;; + *64-bit*|*ppc64*|*x86_64*) myconf="${myconf} --enable-64bit";; + *32-bit*|*ppc*|*i386*|*"RISC System/6000"*) ;; *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; esac - myconf="${myconf} --libdir=/usr/$(get_libdir)" + myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)" ECONF_SOURCE="../mozilla/nsprpub" econf \ $(use_enable debug) \ $(use_enable !debug optimize) \ ${myconf} || die "econf failed" +} + +src_compile() { emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" || die "failed to build" } @@ -56,15 +66,22 @@ src_install () { cd "${S}"/build emake DESTDIR="${D}" install || die "emake install failed" - cd "${D}"/usr/$(get_libdir) + cd "${ED}"/usr/$(get_libdir) for file in *.a; do einfo "removing static libraries as upstream has requested!" rm -f ${file} || die "failed to remove staic libraries." done - for file in *.so; do - mv ${file} ${file}.${MINOR_VERSION} || die "failed to mv files around" - ln -s ${file}.${MINOR_VERSION} ${file} || die "failed to symlink files." + local n= + # aix-soname.patch does this already + [[ ${CHOST} == *-aix* ]] || + for file in *$(get_libname); do + n=${file%$(get_libname)}$(get_libname ${MINOR_VERSION}) + mv ${file} ${n} || die "failed to mv files around" + ln -s ${n} ${file} || die "failed to symlink files." + if [[ ${CHOST} == *-darwin* ]]; then + install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/${n}" ${n} || die + fi done # install nspr-config @@ -75,7 +92,7 @@ src_install () { doins "${S}"/build/config/nspr.pc || die "failed to insall nspr pkg-config file" # Remove stupid files in /usr/bin - rm -f "${D}"/usr/bin/prerr.properties || die "failed to cleanup unneeded files" + rm -f "${ED}"/usr/bin/prerr.properties || die "failed to cleanup unneeded files" } pkg_postinst() { |