From 3d00647fec2600e217d690a64ba45a41f1a2fa0c Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 10 Jun 2023 09:50:45 +0100 Subject: gentoo auto-resync : 10:06:2023 - 09:50:45 --- dev-libs/nspr/Manifest | 4 +- .../nspr/files/nspr-4.21-ipv6-musl-support.patch | 26 ++-- dev-libs/nspr/nspr-4.35-r1.ebuild | 166 --------------------- dev-libs/nspr/nspr-4.35-r2.ebuild | 166 +++++++++++++++++++++ 4 files changed, 177 insertions(+), 185 deletions(-) delete mode 100644 dev-libs/nspr/nspr-4.35-r1.ebuild create mode 100644 dev-libs/nspr/nspr-4.35-r2.ebuild (limited to 'dev-libs/nspr') diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest index a19711301f6d..b895fdf8a413 100644 --- a/dev-libs/nspr/Manifest +++ b/dev-libs/nspr/Manifest @@ -1,5 +1,5 @@ AUX nspr-4.10.6-solaris.patch 973 BLAKE2B 8370bedb05c718d7b73d57b5ac5c720ca62499d6d7b7a039da608a9c514996c2d987ba0135b7dcac509d1b9363908f0c0cff6fe47e1f7ca94b7efbd8c19aeeca SHA512 d4e4c44d02be7aafe09e633f2ee747c323036f7438cb87864d91bcd9bb8ac072065353aa4e8a785e38724d33bfdc8adb0e460dbf44ff7fbd8c8dd32b569074f1 -AUX nspr-4.21-ipv6-musl-support.patch 1645 BLAKE2B 0b383804d5e66037041b91dcb7ddd52dd4533384ca5671ed1d36a71740b130863dd2b531867edab804fbb8cfab112282e17d607d7e298eb249ead620f99a55be SHA512 f241e607491d1192272221023d5f3e84b3e88957e7b66ce4d9ba1bcf2ab6639facc08eeb838a0e6753456f41dde4ced4fe99f923e0889030d844c23c62fad4e2 +AUX nspr-4.21-ipv6-musl-support.patch 1366 BLAKE2B d25a6520b4239924c8da87625afa91f36ed6d83109c3419f4290ccba63d56110e69505812d37b50f0e5ce32b3885c0a56668ac25573ddf9feaa3fbfd8919fd6e SHA512 be1043c988dedf80317c75844b73664182479690b016275c005210ac99b53da86902bab5be9bb88fd9abf94a7b6f3c4ad50023853ed0a7ef5d2bd6a9f8519c35 AUX nspr-4.23-prtime.patch 814 BLAKE2B 2106a841b34445310cef07e15cb77ae4c9465cca9a7dc68acd68408a66383c90bee1fafeaaa144e1b8344d1edae27407714f193a452ffc3d425212e3b2c40fc5 SHA512 9f51a03852f0b3d4352c14ee849ec8af9b3dbef68eaa2755cb5a630018f91e3a2a4fce5742078b8be51e76995218a0cfc7ef8b0c013e8c47f746a61185795eae AUX nspr-4.35-bgo-905998-lfs64-musl.patch 517 BLAKE2B 8febc7c00602500ce220fae2779b2cdcb65f7706a0c9eb4f5a84bde615107b3e25badcaab3ddac536c0fd238179486d068c24edd666579eda331d2eb79eff3bc SHA512 b53017c620e2b54f5b9bde5c51aeb4c01cef02e5d4df26cda2290f2349a2ed8fb49b12f74d4411e47224e8d0e9840fcad0aa1dc9447ba16c6e53b04c737c9dbc AUX nspr-4.7.1-solaris.patch 411 BLAKE2B 0c1f0e621aec9e150bd8c279f46c18256c451b2555b9f264f0da7432fb0e7d5d69e1bbbb7adc9a448d88ca269be41943f2ee60e1cc8e115542e300c1d7c61185 SHA512 11bd4ab3f98cbad2586f999370291d387fe7a817bab9feda9f5493f284410a73318e90072c0052a8216d9ae1cdc5b2a862a99315e09b72560d9bad6ebc16eb79 @@ -7,5 +7,5 @@ AUX nspr-4.8.4-darwin-install_name.patch 1046 BLAKE2B 1182149b03bd2c03fc4051bf98 AUX nspr-4.8.9-link-flags.patch 931 BLAKE2B 6aa6aa1cf3b856a95b7baa20f58e9ed83b8b29ccce37bab39e10e0e76c433ae5c79839b5f7f9bdaf8b2475c8e3692ff4a57c246dfa4e1fed6866ab284826ee0d SHA512 0bb61dc09d287f1324749c983404e1f03fdf7014fbbd32cc5abe452fc2f32b90b759d8f18d964a61da044b5a7221f5ba274d94c93c07c8a7359e3c937e44b975 AUX nspr-4.9.5_nspr_config.patch 251 BLAKE2B 65ae8b981e758e2955b7a3358f24b7b17dc1ef59f0e78f9fd9ddee740a4da3825bafea34f3900200b3f6edefed7d0797c194cb0339d4e36551615d599156108d SHA512 3f118b7142a19dcc7e26b348cec6029c78d585a57cc2bfc2ab7ca13d2ef953e576dab0ac044316e3165d0201bf27253afa732109f914da6f7a39f19facff8310 DIST nspr-4.35.tar.gz 1096974 BLAKE2B c80402d7be9e69ab6d1e768a18d271a8d28900f4cae7df2709d1ab26e100d908f508762bb771d4042aa7152934ce83d495e2102e894c56574187be8040d65629 SHA512 502815833116e25f79ddf71d1526484908aa92fbc55f8a892729cb404a4daafcc0470a89854cd080d2d20299fdb7d9662507c5362c7ae661cbacf308ac56ef7f -EBUILD nspr-4.35-r1.ebuild 5151 BLAKE2B 0cb371500c17b0b1547ef87b61d1f3ce65b4d2db14845487bfdbf32083d4b11343d55e2c82e2eb16b7ec14f7a38d1c818e0c6995807759a3274927d20eca46ab SHA512 1db3855b7ad24454e23e955405efb830f634d26b8e129e6a9b91f75e16832de759df4bf619885d3c0363d9fbd4351d2c809c4a51248fc9b433581a9dc66fe7a3 +EBUILD nspr-4.35-r2.ebuild 5151 BLAKE2B 0cb371500c17b0b1547ef87b61d1f3ce65b4d2db14845487bfdbf32083d4b11343d55e2c82e2eb16b7ec14f7a38d1c818e0c6995807759a3274927d20eca46ab SHA512 1db3855b7ad24454e23e955405efb830f634d26b8e129e6a9b91f75e16832de759df4bf619885d3c0363d9fbd4351d2c809c4a51248fc9b433581a9dc66fe7a3 MISC metadata.xml 350 BLAKE2B 0f4d7850a3ca725af4e01a47e4db4219d2465b6d4db8c44e12b8f57d2064fd3c6ddbeec16888a316627f96e1f9415777f3fedecbd7065e4d13516bbed473a6f6 SHA512 2cc7f3e6eefcb5ba16c4b2127e751c47ea7a6822eb71080c96c6850ef741acff8d424c520eb60288ca32ccdbe825568d7aced9f57148e304dddd0afb7f4a8883 diff --git a/dev-libs/nspr/files/nspr-4.21-ipv6-musl-support.patch b/dev-libs/nspr/files/nspr-4.21-ipv6-musl-support.patch index 2c8ebd4ccbb2..72393ca5f470 100644 --- a/dev-libs/nspr/files/nspr-4.21-ipv6-musl-support.patch +++ b/dev-libs/nspr/files/nspr-4.21-ipv6-musl-support.patch @@ -1,19 +1,11 @@ -From 8c57451f44d7ceb37bfb4ae6e457fc70b1f58d0a Mon Sep 17 00:00:00 2001 -From: Moritz Kick -Date: Wed, 20 Mar 2019 13:36:06 -0500 +From 2e6a43c751707b6983760669988ba4d2826ffd5b Mon Sep 17 00:00:00 2001 +From: Violet Purcell +Date: Sat, 10 Jun 2023 04:37:55 +0000 Subject: [PATCH] Added IPv6 compatibility for musl libc -Signed-off-by: Moritz Kick -Signed-off-by: Jory Pratt ---- - pr/include/md/_linux.h | 13 +------------ - 1 file changed, 1 insertion(+), 12 deletions(-) - -diff --git a/pr/include/md/_linux.h b/pr/include/md/_linux.h -index 2370ab8..612184c 100644 --- a/pr/include/md/_linux.h +++ b/pr/include/md/_linux.h -@@ -289,33 +289,22 @@ static inline PRInt32 _MD_ATOMIC_SET(PRInt32 *ptr, PRInt32 nv) +@@ -315,33 +315,19 @@ static inline PRInt32 _MD_ATOMIC_SET(PRInt32 *ptr, PRInt32 nv) #endif /* __arm__ */ #define USE_SETJMP @@ -22,17 +14,17 @@ index 2370ab8..612184c 100644 -#endif #undef _PR_USE_POLL #define _PR_STAT_HAS_ONLY_ST_ATIME - #if defined(__alpha) || defined(__ia64__) +-#if defined(__alpha) || defined(__ia64__) #define _PR_HAVE_LARGE_OFF_T -#elif (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) \ - || defined(ANDROID) -#define _PR_HAVE_OFF64_T - #else +-#else -#define _PR_NO_LARGE_FILES -+#define _PR_HAVE_OFF64_T - #endif +-#endif -#if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) \ - || defined(ANDROID) ++#define _FILE_OFFSET_BITS 64 #define _PR_INET6 #define _PR_HAVE_INET_NTOP #define _PR_HAVE_GETHOSTBYNAME2 @@ -49,5 +41,5 @@ index 2370ab8..612184c 100644 #define _PR_HAVE_GETHOST_R_INT #endif -- -2.21.0 +2.41.0 diff --git a/dev-libs/nspr/nspr-4.35-r1.ebuild b/dev-libs/nspr/nspr-4.35-r1.ebuild deleted file mode 100644 index efca76733c93..000000000000 --- a/dev-libs/nspr/nspr-4.35-r1.ebuild +++ /dev/null @@ -1,166 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools flag-o-matic toolchain-funcs multilib-minimal - -MIN_PV="$(ver_cut 2)" - -DESCRIPTION="Netscape Portable Runtime" -HOMEPAGE="https://www.mozilla.org/projects/nspr/" -SRC_URI="https://archive.mozilla.org/pub/nspr/releases/v${PV}/src/${P}.tar.gz" - -LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" -IUSE="debug" - -MULTILIB_CHOST_TOOLS=( - /usr/bin/nspr-config -) - -PATCHES=( - "${FILESDIR}"/${PN}-4.10.6-solaris.patch - "${FILESDIR}"/${PN}-4.23-prtime.patch - "${FILESDIR}"/${PN}-4.7.1-solaris.patch - "${FILESDIR}"/${PN}-4.8.4-darwin-install_name.patch - "${FILESDIR}"/${PN}-4.8.9-link-flags.patch - # We do not need to pass -L$libdir via nspr-config --libs - "${FILESDIR}"/${PN}-4.9.5_nspr_config.patch -) - -QA_CONFIGURE_OPTIONS="--disable-static" - -src_prepare() { - cd "${S}"/nspr || die - - default - - if use elibc_musl; then - eapply "${FILESDIR}"/${PN}-4.21-ipv6-musl-support.patch - eapply "${FILESDIR}"/nspr-4.35-bgo-905998-lfs64-musl.patch - fi - - # rename configure.in to configure.ac for new autotools compatibility - if [[ -e "${S}"/nspr/configure.in ]] ; then - einfo "Renaming configure.in to configure.ac" - mv "${S}"/nspr/configure.{in,ac} || die - else - elog "configure.in rename logic can be removed from ebuild." - fi - - # We must run eautoconf to regenerate configure - eautoconf - - # make sure it won't find Perl out of Prefix - sed -i -e "s/perl5//g" "${S}"/nspr/configure || die - - # Respect LDFLAGS - sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ - "${S}"/nspr/config/rules.mk || die -} - -multilib_src_configure() { - # The build system overrides user optimization level based on a configure flag. #886987 - local my_optlvl=$(get-flag '-O*') - - # 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 AS CC CXX RANLIB - [[ ${CBUILD} != ${CHOST} ]] \ - && export CROSS_COMPILE=1 \ - || unset CROSS_COMPILE - - local myconf=( --libdir="${EPREFIX}/usr/$(get_libdir)" ) - - # Optimization is disabled when debug is enabled. - if use debug; then - myconf+=( --enable-debug ) - else - myconf+=( --disable-debug ) - myconf+=( --enable-optimize="${my_optlvl}" ) - fi - - # The configure has some fancy --enable-{{n,x}32,64bit} switches - # that trigger some code conditional to platform & arch. This really - # matters for the few common arches (x86, ppc) but we pass a little - # more of them to be future-proof. - - # use ABI first, this will work for most cases - case "${ABI}" in - alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) ;; - n32) myconf+=( --enable-n32 );; - x32) myconf+=( --enable-x32 );; - s390x|*64) myconf+=( --enable-64bit );; - default) # no abi actually set, fall back to old check - einfo "Running a short build test to determine 64bit'ness" - echo > "${T}"/test.c || die - ${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test.c -o "${T}"/test.o || die - case $(file "${T}"/test.o) in - *32-bit*x86-64*) myconf+=( --enable-x32 );; - *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 ;; - *) ;; - esac - - # Ancient autoconf needs help finding the right tools. - LC_ALL="C" ECONF_SOURCE="${S}/nspr" \ - ac_cv_path_AR="${AR}" \ - ac_cv_path_AS="${AS}" \ - econf "${myconf[@]}" -} - -multilib_src_test() { - # https://firefox-source-docs.mozilla.org/nspr/running_nspr_tests.html - cd "${BUILD_DIR}/pr/tests" || die - einfo "Building tests" - emake - - einfo "Running test suite" - ../../../${P}/${PN}/pr/tests/runtests.pl | tee "${T}"/${ABI}-tests.log - - # Needed to check if runtests.pl itself or the tee (somehow) failed - # (can't use die with pipes to check each component) - [[ ${PIPESTATUS[@]} == "0 0" ]] || die "Tests failed to run!" - - local known_failures=( - # network-sandbox related? - cltsrv - # network-sandbox related? - gethost - ) - - local known_failure - for known_failure in "${known_failures[@]}" ; do - sed -i -e "/${known_failure}.*FAILED/d" "${T}"/${ABI}-tests.log || die - done - - # But to actually check the test results, we examine the log. - if grep -q "FAILED" "${T}"/${ABI}-tests.log ; then - die "Test failure for ${ABI}!" - fi -} - -multilib_src_install() { - # Their build system is royally confusing, as usual - MINOR_VERSION=${MIN_PV} # Used for .so version - emake DESTDIR="${D}" install - - einfo "removing static libraries as upstream has requested!" - rm "${ED}"/usr/$(get_libdir)/*.a || die "failed to remove static libraries." - - # install nspr-config - dobin config/nspr-config - - # Remove stupid files in /usr/bin - rm "${ED}"/usr/bin/prerr.properties || die - - # This is used only to generate prerr.c and prerr.h at build time. - # No other projects use it, and we don't want to depend on perl. - # Talked to upstream and they agreed w/punting. - rm "${ED}"/usr/bin/compile-et.pl || die -} diff --git a/dev-libs/nspr/nspr-4.35-r2.ebuild b/dev-libs/nspr/nspr-4.35-r2.ebuild new file mode 100644 index 000000000000..efca76733c93 --- /dev/null +++ b/dev-libs/nspr/nspr-4.35-r2.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic toolchain-funcs multilib-minimal + +MIN_PV="$(ver_cut 2)" + +DESCRIPTION="Netscape Portable Runtime" +HOMEPAGE="https://www.mozilla.org/projects/nspr/" +SRC_URI="https://archive.mozilla.org/pub/nspr/releases/v${PV}/src/${P}.tar.gz" + +LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" +IUSE="debug" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/nspr-config +) + +PATCHES=( + "${FILESDIR}"/${PN}-4.10.6-solaris.patch + "${FILESDIR}"/${PN}-4.23-prtime.patch + "${FILESDIR}"/${PN}-4.7.1-solaris.patch + "${FILESDIR}"/${PN}-4.8.4-darwin-install_name.patch + "${FILESDIR}"/${PN}-4.8.9-link-flags.patch + # We do not need to pass -L$libdir via nspr-config --libs + "${FILESDIR}"/${PN}-4.9.5_nspr_config.patch +) + +QA_CONFIGURE_OPTIONS="--disable-static" + +src_prepare() { + cd "${S}"/nspr || die + + default + + if use elibc_musl; then + eapply "${FILESDIR}"/${PN}-4.21-ipv6-musl-support.patch + eapply "${FILESDIR}"/nspr-4.35-bgo-905998-lfs64-musl.patch + fi + + # rename configure.in to configure.ac for new autotools compatibility + if [[ -e "${S}"/nspr/configure.in ]] ; then + einfo "Renaming configure.in to configure.ac" + mv "${S}"/nspr/configure.{in,ac} || die + else + elog "configure.in rename logic can be removed from ebuild." + fi + + # We must run eautoconf to regenerate configure + eautoconf + + # make sure it won't find Perl out of Prefix + sed -i -e "s/perl5//g" "${S}"/nspr/configure || die + + # Respect LDFLAGS + sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ + "${S}"/nspr/config/rules.mk || die +} + +multilib_src_configure() { + # The build system overrides user optimization level based on a configure flag. #886987 + local my_optlvl=$(get-flag '-O*') + + # 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 AS CC CXX RANLIB + [[ ${CBUILD} != ${CHOST} ]] \ + && export CROSS_COMPILE=1 \ + || unset CROSS_COMPILE + + local myconf=( --libdir="${EPREFIX}/usr/$(get_libdir)" ) + + # Optimization is disabled when debug is enabled. + if use debug; then + myconf+=( --enable-debug ) + else + myconf+=( --disable-debug ) + myconf+=( --enable-optimize="${my_optlvl}" ) + fi + + # The configure has some fancy --enable-{{n,x}32,64bit} switches + # that trigger some code conditional to platform & arch. This really + # matters for the few common arches (x86, ppc) but we pass a little + # more of them to be future-proof. + + # use ABI first, this will work for most cases + case "${ABI}" in + alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) ;; + n32) myconf+=( --enable-n32 );; + x32) myconf+=( --enable-x32 );; + s390x|*64) myconf+=( --enable-64bit );; + default) # no abi actually set, fall back to old check + einfo "Running a short build test to determine 64bit'ness" + echo > "${T}"/test.c || die + ${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test.c -o "${T}"/test.o || die + case $(file "${T}"/test.o) in + *32-bit*x86-64*) myconf+=( --enable-x32 );; + *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 ;; + *) ;; + esac + + # Ancient autoconf needs help finding the right tools. + LC_ALL="C" ECONF_SOURCE="${S}/nspr" \ + ac_cv_path_AR="${AR}" \ + ac_cv_path_AS="${AS}" \ + econf "${myconf[@]}" +} + +multilib_src_test() { + # https://firefox-source-docs.mozilla.org/nspr/running_nspr_tests.html + cd "${BUILD_DIR}/pr/tests" || die + einfo "Building tests" + emake + + einfo "Running test suite" + ../../../${P}/${PN}/pr/tests/runtests.pl | tee "${T}"/${ABI}-tests.log + + # Needed to check if runtests.pl itself or the tee (somehow) failed + # (can't use die with pipes to check each component) + [[ ${PIPESTATUS[@]} == "0 0" ]] || die "Tests failed to run!" + + local known_failures=( + # network-sandbox related? + cltsrv + # network-sandbox related? + gethost + ) + + local known_failure + for known_failure in "${known_failures[@]}" ; do + sed -i -e "/${known_failure}.*FAILED/d" "${T}"/${ABI}-tests.log || die + done + + # But to actually check the test results, we examine the log. + if grep -q "FAILED" "${T}"/${ABI}-tests.log ; then + die "Test failure for ${ABI}!" + fi +} + +multilib_src_install() { + # Their build system is royally confusing, as usual + MINOR_VERSION=${MIN_PV} # Used for .so version + emake DESTDIR="${D}" install + + einfo "removing static libraries as upstream has requested!" + rm "${ED}"/usr/$(get_libdir)/*.a || die "failed to remove static libraries." + + # install nspr-config + dobin config/nspr-config + + # Remove stupid files in /usr/bin + rm "${ED}"/usr/bin/prerr.properties || die + + # This is used only to generate prerr.c and prerr.h at build time. + # No other projects use it, and we don't want to depend on perl. + # Talked to upstream and they agreed w/punting. + rm "${ED}"/usr/bin/compile-et.pl || die +} -- cgit v1.2.3