summaryrefslogtreecommitdiff
path: root/dev-libs
diff options
context:
space:
mode:
authormirror@stealer.net <mirror@stealer.net>2025-07-26 07:30:24 +0000
committermirror@stealer.net <mirror@stealer.net>2025-07-26 07:30:24 +0000
commit00fdad25e6818b237922f408bfed85ddbea7777a (patch)
tree488367aa8397b69cf556df5caef3faffab6408d1 /dev-libs
parent0d9f348453a7aa72f96453edf2d4db762d351173 (diff)
2025-07-26 07:11:09+00:00
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/Manifest.gzbin99215 -> 99205 bytes
-rw-r--r--dev-libs/libvoikko/Manifest3
-rw-r--r--dev-libs/libvoikko/libvoikko-4.3.2.ebuild57
-rw-r--r--dev-libs/nss/Manifest8
-rw-r--r--dev-libs/nss/nss-3.101.2.ebuild432
-rw-r--r--dev-libs/nss/nss-3.112.ebuild448
-rw-r--r--dev-libs/nss/nss-3.113.1.ebuild448
-rw-r--r--dev-libs/nss/nss-3.113.ebuild448
-rw-r--r--dev-libs/sexpp/Manifest2
-rw-r--r--dev-libs/sexpp/sexpp-0.9.0.ebuild36
10 files changed, 0 insertions, 1882 deletions
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz
index e46ff124be98f..fa7a8598b3963 100644
--- a/dev-libs/Manifest.gz
+++ b/dev-libs/Manifest.gz
Binary files differ
diff --git a/dev-libs/libvoikko/Manifest b/dev-libs/libvoikko/Manifest
index 701e46bee5b49..24c8b8ecd086a 100644
--- a/dev-libs/libvoikko/Manifest
+++ b/dev-libs/libvoikko/Manifest
@@ -1,8 +1,5 @@
AUX libvoikko-4.3.2-disable-wall-werror.patch 1172 BLAKE2B 75a7a8c1edc73dfa8941b8bb738587f077b3bb960111bb80fb5b92e28c7b12bdf6d446c8568926bf333da5836caccdde6113ac55c065a9e08dc5552795a39d55 SHA512 4c9d509b2f4960ae3460753044589fdcb069ea0715e3ecc0b5f2aa928e897a86464baacdf643df4533b9419b4cd7a968454844539e9cbaab1ff143a013b225db
-DIST libvoikko-4.3.2.tar.gz 672196 BLAKE2B fb5cf5d415cb2bfd9849a62ffc7822ee2d79b153035e326cdf9103f17fbeab36edb878604980a09346ed5a9fce0b8006012a92483dc886b20d932802bc9bedd9 SHA512 d510a9344501f86b2f644c1237faf8709f02b5d17bca76f7934c8422495aeee307f12c60dde47df15a39c24c3311253d3dea2d0648050fc3a056a22497de695c
-DIST libvoikko-4.3.2.tar.gz.asc 833 BLAKE2B e1abeb8fb376c83a09ac26a5ffda98c86bb17fc6b7e2b1d4e0976e2b563aeabbeae7200c9a0298051d6e11bc28b83d540e7e2cfff7253030253e81fd39115256 SHA512 5416123b9610225e2baf26ebb8be27d98ac04d34af9c2ed9252fa6e2c2909276a47967a297fc9bf0b51a6bf8650a55919ea4071dd976752b26a3dfec271ddf0a
DIST libvoikko-4.3.3.tar.gz 691854 BLAKE2B 93f533590b290443f90468a5154989cf9568a8e255d6e324cdfdfce406bad593e361bdcd6a82257cfbf2d2ba03840ad5e762f38ab227d1b94d4401a06d8d8950 SHA512 8b6a8d52a43414c5acbc4582dbee4ba4687c204fdf59f097b202f80138bbe079d1feedcc9e13819078b7366de9a629d81c491e782435b64634e5ff38701038f5
DIST libvoikko-4.3.3.tar.gz.asc 833 BLAKE2B 24f6259c216457ac2fb7b1322dd472a948dc4e1c1a0f72bb8e020889ac561aafb00e9bf32927eb71f087837731bab6c2865296e0d84082cb5ed9ccca803a21d3 SHA512 a753957531c4f581f455c7a0d7dd69b9f7cb259fa19e783ecee426123039d5f7981aa8af7ced78b610ceb4922dd9c159bce94a8129f250600fa3f55c923cf45c
-EBUILD libvoikko-4.3.2.ebuild 1306 BLAKE2B beced82c4a4f6c41c13d0f348c414278d88a4f6fe013a037c674f4bff08b1cdf2b646297c25fdf62655f83d288aea7851fa336c4e1f524c21d92f0e46a3607c0 SHA512 878b61107b59e4fa282df9add67bf42c30939de7633369a58e72b0b1cf4e22e0f992c9eac1bb10902c9406714ddb0c2ba2ddf039c379ae19111032f3e5aa6568
EBUILD libvoikko-4.3.3.ebuild 1306 BLAKE2B 82d6ff168eeeb24b16f4cd7a41a93355c8cfe96aa3ce58c52a5c7fed1e1c6c71687b7e069190c38174c3905466da05798d37953d726ab356daa46dbda024ab0c SHA512 4d70b99959e32e8aaf7e1fb931aef70d6df2851bd593d0d83b61c0ae638fa7e61697855fc8deb3faf3e84a520309d5945d674ad7578ab79194700e12a79adfe2
MISC metadata.xml 420 BLAKE2B 50da044696bd5ea088e340526e669db93321664f40298db2ada11ff15bcdd5a4cea5f7398ea65e8cea86ea484b86c8eb11751c05ad16957c4cd3baba521f274b SHA512 546cc02a57222c8b172130d127eaf0a24869be6138a6834f34e761f40a29636c1acf8697a377208cecf5f3183f186ec267ceddec69bc1fb3229acae48ac22a87
diff --git a/dev-libs/libvoikko/libvoikko-4.3.2.ebuild b/dev-libs/libvoikko/libvoikko-4.3.2.ebuild
deleted file mode 100644
index 2a438baf924ed..0000000000000
--- a/dev-libs/libvoikko/libvoikko-4.3.2.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..14} )
-
-inherit python-r1 verify-sig
-
-DESCRIPTION="Spell checking, hyphenation and morphological analysis tool for Finnish language"
-HOMEPAGE="https://voikko.puimula.org/"
-SRC_URI="https://www.puimula.org/voikko-sources/${PN}/${P}.tar.gz
- verify-sig? ( https://www.puimula.org/voikko-sources/libvoikko/${P}.tar.gz.asc )"
-
-LICENSE="GPL-2+"
-SLOT="0/1.16.2"
-KEYWORDS="amd64 ~loong ~riscv x86"
-
-IUSE="+expvfst +hfst verify-sig"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RESTRICT="test"
-
-DEPEND="${PYTHON_DEPS}
- hfst? ( >=dev-util/hfstospell-0.5.0 )"
-RDEPEND="${DEPEND}"
-BDEPEND="virtual/pkgconfig
- >=dev-build/autoconf-2.71
- verify-sig? ( sec-keys/openpgp-keys-voikko )"
-
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/voikko.asc
-
-PATCHES=( "${FILESDIR}"/libvoikko-4.3.2-disable-wall-werror.patch )
-
-src_configure() {
- local myconf=(
- --prefix=/usr
- --with-dictionary-path=/usr/share/voikko
- $(use_enable expvfst)
- )
-
- if ! use hfst ; then
- myconf+=( --disable-hfst )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_install() {
- python_setup
- default
-
- python_foreach_impl python_domodule python/libvoikko.py
-
- find "${D}" -name '*.la' -delete -o -name '*.a' -delete || die
-}
diff --git a/dev-libs/nss/Manifest b/dev-libs/nss/Manifest
index b4b81b2cd5aec..741313dddcaca 100644
--- a/dev-libs/nss/Manifest
+++ b/dev-libs/nss/Manifest
@@ -4,19 +4,11 @@ AUX nss-3.21-gentoo-fixup-warnings.patch 178 BLAKE2B b51f80310db3db416d8aeaf9117
AUX nss-3.53-gentoo-fixups.patch 6886 BLAKE2B 1c605d8db02ebe0492c41955207368197a79990e43e219a71962cb28ac0cecd9e0acc2b76e16f5b116fdb8bf8790d96046cb4f376df9b8634ac48e54924589f8 SHA512 51031f92519f57d4b57a547cf549f2d5da1c5a7212d4b304fb0d71d6a85a5aefd64724ec9075c14c9b49c1e99c3ffe91cbec501c3504985aa9b16eacf2aa15ed
AUX nss-3.87-use-clang-as-bgo892686.patch 2693 BLAKE2B fe8a25c9c8599e0f3e630202c824b854ebfa5b3580e79a61f7172a93a5aad2df3754e2e5aba718a22bb2ad5102f4d638ca10508f0b66cf6e8f21da4ea52bf966 SHA512 67d231aa1b2433e5feeff59af6849eee78f6d5ebf601c0f7baaf0e1b5b44c25ca63f012ced677f5562bb45e3fc0dabe0210b123a78b56de4dfe11c5eaafac3bc
DIST nss-3.101-cacert-class1-class3.patch 21925 BLAKE2B 2b37f6b69e0541f31087ff0401b195c035f4b607865c4d29976e4ad2c8143321d65b41b996e922362e076aa8259304ed67b0c4a1f8df2fdfdb1d893319f5d5e7 SHA512 19438aefbb361881c1b4620d8b1b5e7d2bf5afb44900858d3728ff6999a792bf6fe073a11f591ab70461bee8c54fdfb097e4084b402842bc49d2139897de304d
-DIST nss-3.101.2.tar.gz 76462495 BLAKE2B 3a0dfd7aa68bc11f332decfc9cb7003b8d8fa6a9dad556ad736229d7d3847e68aeaf5b74e68989a0483bd1b9e2e3afd3bdf8df3d428ebc815eda9a255f5695aa SHA512 65ac338ee1b13ecc2b190f1ea39c987110a06f3b67610e094ffc1ef4117d487c34af1e11b90de0c28035bfc5cb10ca7996ed991d9afce7985973fabb48cd7ac8
DIST nss-3.101.3.tar.gz 76462813 BLAKE2B 03a38804da9e9df79df6c06ebd8b4d5f185cc841d10cd81239f0b3e55ddec3c1ac2b626850004f8d78ea698c8c4d55dbb4adcae9d58fd3890526300c15be96a3 SHA512 105be3ce7b34221ae16a681db12291d08b19fe6f9557bd975627570b5de92d3e2349b16453cca07675483efa0a72e41995750171f08a0d6bac61de2ac3b05850
DIST nss-3.101.4.tar.gz 76462465 BLAKE2B 199f336bf8bbeede27a9dd13fc170565d4f38ea7272e566f90acec6df1fef785eb82efffe352a417f8150760151be6674db5a2398b92f5ec98f092492c0104bd SHA512 d28442bd99620af549608d94f29bc987b1383659338ac114035518921649bf6c4cb39e59fa9be420bcaf851e7703f4d9f9f70aea0f80620fdee8df629804fd24
DIST nss-3.104-cacert-class1-class3.patch 22038 BLAKE2B 66e2dd47230d6aa58a767e35c9c069fa29f3111d470345e0f69486d1eead3cd1741939ac394f6b9b637e79a10d658cfb1a9da4387953b8968a9001bab94d4de0 SHA512 bafc4212e0e0ca3eb129a5b88767727159c6ec3da450c7625d0b282f82699378d64eaa2c3fecb72c61000ec9b6d3c24f20bc7defdac6edc673e0fbb26e0c1f7e
-DIST nss-3.112.tar.gz 76620428 BLAKE2B 0de17bfe86ac9e752c4f0c5a4f6db217a74e460850bf79d9bf1fc1b1b2279ad80fb8c4591bea0642d23fa532e71fdb8382ae1dbc797a3a14303439d1aa4868a6 SHA512 564ae4ded323d7213f224673b0ddc584dcfae71bbdd139310854e547d9ba2877ba45462da49f71ea2fae72caea1cf10fa51d9dfef656a21957256cadc5fa4b35
-DIST nss-3.113.1.tar.gz 76626220 BLAKE2B a055df90949dc8001203f3154ca3b2b2e90e95a3739a7c2a22dd9aefc0567dd27978dfe25e92afab2ac8b2763eac70e50e51db59abd19c84b4b1b70201a8edfb SHA512 5ffb1182e7d65f8895c09656d20bc7146d1616cd4f09046469b2f79f60b57083094c78da39a3f3faa5087742a19f706ce9e7928a662f9f0d3c410514cba2028f
-DIST nss-3.113.tar.gz 76625834 BLAKE2B 6efcc588389378a88697913b5fb00da726361e957834edf9413cc91b29f5a138fb7d2b669a959cf84dfe8b644a19688a14a756b81ee078341631a05c299da62b SHA512 236196965aeb05aab90bf14406fcf8ee95641e466049305e2961e1caa2712bd8f5c58a238ad0c3d419c093b8a88d721cc029f38dd2462bc49c5c4922c0d27f74
DIST nss-3.114.tar.gz 76653541 BLAKE2B 3ba37f3df407d2dd077b9ec0270be9becebd3137705e2dd58553dcbd79327f382ed4c9d17349f0792e554e41a8e843eb74a4681495bf00c6a69dae46b26babeb SHA512 9c9af5c117dea2d89bb093f9a73d9a431ce4eebcfea9295aa37a27a7afb242d353e6904fee7ae69cdb64949bd0ddb685880098553c7d5ac1aac39ea388a2a2d3
-EBUILD nss-3.101.2.ebuild 11915 BLAKE2B fa3349eca571132120f944a9e99b97ba73c857fba1c0d1071cead63b8d6481b3f1bcd5da38c4f5fa8d893728b1d4086675c2aea90a1b5f29795403af2d97e04a SHA512 fb7fbf6abbed5acfd1064208390b6db0bcbdbc3ca918e3ccffcd85bad411a30fb13f2720d14c11521fac5013ce433bc4fa3f660f9de5160805cb788344ffadf3
EBUILD nss-3.101.3-r1.ebuild 12075 BLAKE2B c3d3bc6c5126d1fc6334b71bcdd2b111534fcffae0a0207e5a916bbd39bc557d83d47f74cc3d822b8aa540b83fe6aea24bb9bffdbed691bd113dda7fecf450ad SHA512 2520e20b722816cdcf5900dda0ec4ef20c805e7c3d31fc5ac6a003bf03e337a836ccbd1d3bbca8796a0eb4ac604c76a5f82279d1e484f2a9cfd02fff385bc27c
EBUILD nss-3.101.4.ebuild 12396 BLAKE2B 68da971753945b9ae47c50015cb5cc2aa87ec96d31cdba31d87112af75f91dd221fe46fa4052206aa12b0f540d90d9eb91f22ce064af6ca8cae85e2b045ae14c SHA512 59f7495a2377e98d61f8f502651426c629a05fe353c4c90049aef71f3620d713785d54de260deebd54f566e9b8542a4d8f6c0ed1e2a8f1d241bf7cb30908c0be
-EBUILD nss-3.112.ebuild 12342 BLAKE2B fdc663a66ddcfd9eedca11ffd212fc7ad8cef75cb244cd890c9040194e8328bb0db9f2ac2411839b2b54727ba4722e407cc54b25d3d2c323b57d07baeccb6ecd SHA512 c61d23c4503cdded98f3c9815994905229c6d45b5eea0dafe228f89f2cbdebc3afe935dc21752dd4f57a9408bd5c878a236c8a55373ee47d62b00479facbfdb3
-EBUILD nss-3.113.1.ebuild 12342 BLAKE2B fdc663a66ddcfd9eedca11ffd212fc7ad8cef75cb244cd890c9040194e8328bb0db9f2ac2411839b2b54727ba4722e407cc54b25d3d2c323b57d07baeccb6ecd SHA512 c61d23c4503cdded98f3c9815994905229c6d45b5eea0dafe228f89f2cbdebc3afe935dc21752dd4f57a9408bd5c878a236c8a55373ee47d62b00479facbfdb3
-EBUILD nss-3.113.ebuild 12342 BLAKE2B fdc663a66ddcfd9eedca11ffd212fc7ad8cef75cb244cd890c9040194e8328bb0db9f2ac2411839b2b54727ba4722e407cc54b25d3d2c323b57d07baeccb6ecd SHA512 c61d23c4503cdded98f3c9815994905229c6d45b5eea0dafe228f89f2cbdebc3afe935dc21752dd4f57a9408bd5c878a236c8a55373ee47d62b00479facbfdb3
EBUILD nss-3.114.ebuild 12342 BLAKE2B b6b1f57b52142dfc36f5820c68daaafaeaa230ab182cb707af5d58f8c9a80fff14866855177429dd2d4553c325231e972ee8d4565569657782a8ab7e28fe8965 SHA512 fbb05a4d334e3b7dce3ea3e9ba894b2694e4557299e06024d6f9cd35cc7fe4d185afda3b4ce13ad94bd32e0a60d874a75d57ee4d7f76be91b04e1f92cc1c2412
MISC metadata.xml 693 BLAKE2B c8be043e957f4d85411a10da490e67c9d37f5dd9fe37c112c92e8b666d828cabe75f5fe7c46e5b40dd872f082fb4463af79fb7eb3ad69b9e01c9c088edd750a8 SHA512 66374f8b8739c68a8a276159af3d493bb012b5ee722a939a1d87899d0307d572fcabf76ba71b4f34eeb83a414c0727182ef16f98418cbbbbd4aed311ac5be06b
diff --git a/dev-libs/nss/nss-3.101.2.ebuild b/dev-libs/nss/nss-3.101.2.ebuild
deleted file mode 100644
index 14db615d4523d..0000000000000
--- a/dev-libs/nss/nss-3.101.2.ebuild
+++ /dev/null
@@ -1,432 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit flag-o-matic multilib toolchain-funcs multilib-minimal
-
-NSPR_VER="4.35"
-RTM_NAME="NSS_${PV//./_}_RTM"
-
-DESCRIPTION="Mozilla's Network Security Services library that implements PKI support"
-HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS"
-SRC_URI="https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/${P}.tar.gz
- cacert? ( https://dev.gentoo.org/~juippis/mozilla/patchsets/nss-3.101-cacert-class1-class3.patch )"
-
-LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris"
-IUSE="cacert test +utils cpu_flags_ppc_altivec cpu_flags_x86_avx2 cpu_flags_x86_sse3 cpu_flags_ppc_vsx"
-RESTRICT="!test? ( test )"
-# pkg-config called by nss-config -> virtual/pkgconfig in RDEPEND
-RDEPEND="
- >=dev-libs/nspr-${NSPR_VER}[${MULTILIB_USEDEP}]
- >=dev-db/sqlite-3.8.2[${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
- virtual/pkgconfig
-"
-DEPEND="${RDEPEND}"
-BDEPEND="dev-lang/perl"
-
-S="${WORKDIR}/${P}/${PN}"
-
-MULTILIB_CHOST_TOOLS=(
- /usr/bin/nss-config
-)
-
-PATCHES=(
- "${FILESDIR}/${PN}-3.53-gentoo-fixups.patch"
- "${FILESDIR}/${PN}-3.21-gentoo-fixup-warnings.patch"
- "${FILESDIR}"/nss-3.87-use-clang-as-bgo892686.patch
-)
-
-src_prepare() {
- default
-
- if use cacert ; then
- eapply -p2 "${DISTDIR}"/nss-3.101-cacert-class1-class3.patch
- fi
-
- pushd coreconf >/dev/null || die
- # hack nspr paths
- echo 'INCLUDES += -I$(DIST)/include/dbm' \
- >> headers.mk || die "failed to append include"
-
- # modify install path
- sed -e '/CORE_DEPTH/s:SOURCE_PREFIX.*$:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
- -i source.mk || die
-
- # Respect LDFLAGS
- sed -i -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' rules.mk
-
- # Workaround make-4.4's change to sub-make, bmo#1800237, bgo#882069
- sed -i -e "s/^CPU_TAG = _.*/CPU_TAG = _$(nssarch)/" Linux.mk || die
-
- popd >/dev/null || die
-
- # Fix pkgconfig file for Prefix
- sed -i -e "/^PREFIX =/s:= /usr:= ${EPREFIX}/usr:" \
- config/Makefile || die
-
- # use host shlibsign if need be #436216
- if tc-is-cross-compiler ; then
- sed -i \
- -e 's:"${2}"/shlibsign:shlibsign:' \
- cmd/shlibsign/sign.sh || die
- fi
-
- # dirty hack
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../freebl/\$(OBJDIR):" \
- lib/ssl/config.mk || die
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../../lib/freebl/\$(OBJDIR):" \
- cmd/platlibs.mk || die
-
- multilib_copy_sources
-
- strip-flags
-}
-
-multilib_src_configure() {
- # Ensure we stay multilib aware
- sed -i -e "/@libdir@/ s:lib64:$(get_libdir):" config/Makefile || die
-}
-
-nssarch() {
- # Most of the arches are the same as $ARCH
- local t=${1:-${CHOST}}
- case ${t} in
- *86*-pc-solaris2*) echo "i86pc" ;;
- aarch64*) echo "aarch64" ;;
- hppa*) echo "parisc" ;;
- i?86*) echo "i686" ;;
- x86_64*) echo "x86_64" ;;
- *) tc-arch ${t} ;;
- esac
-}
-
-nssbits() {
- local cc cppflags="${1}CPPFLAGS" cflags="${1}CFLAGS"
- if [[ ${1} == BUILD_ ]]; then
- cc=$(tc-getBUILD_CC)
- else
- cc=$(tc-getCC)
- fi
- # TODO: Port this to toolchain-funcs tc-get-ptr-size/tc-get-build-ptr-size
- echo > "${T}"/test.c || die
- ${cc} ${!cppflags} ${!cflags} -fno-lto -c "${T}"/test.c -o "${T}/${1}test.o" || die
- case $(file -S "${T}/${1}test.o") in
- *32-bit*x86-64*) echo USE_X32=1;;
- *64-bit*|*ppc64*|*x86_64*) echo USE_64=1;;
- *32-bit*|*ppc*|*i386*) ;;
- *) die "Failed to detect whether ${cc} builds 64bits or 32bits, disable distcc if you're using it, please";;
- esac
-}
-
-multilib_src_compile() {
- # use ABI to determine bit'ness, or fallback if unset
- local buildbits mybits
- case "${ABI}" in
- n32) mybits="USE_N32=1";;
- x32) mybits="USE_X32=1";;
- s390x|*64) mybits="USE_64=1";;
- ${DEFAULT_ABI})
- einfo "Running compilation test to determine bit'ness"
- mybits=$(nssbits)
- ;;
- esac
- # bitness of host may differ from target
- if tc-is-cross-compiler; then
- buildbits=$(nssbits BUILD_)
- fi
-
- local makeargs=(
- CC="$(tc-getCC)"
- CCC="$(tc-getCXX)"
- AR="$(tc-getAR) rc \$@"
- RANLIB="$(tc-getRANLIB)"
- OPTIMIZER=
- ${mybits}
- disable_ckbi=0
- )
-
- # Take care of nspr settings #436216
- local myCPPFLAGS="${CPPFLAGS} $($(tc-getPKG_CONFIG) nspr --cflags) -D_FILE_OFFSET_BITS=64"
- unset NSPR_INCLUDE_DIR
-
- export NSS_ALLOW_SSLKEYLOGFILE=1
- export NSS_ENABLE_WERROR=0 #567158
- export BUILD_OPT=1
- export NSS_USE_SYSTEM_SQLITE=1
- export NSDISTMODE=copy
- export FREEBL_NO_DEPEND=1
- export FREEBL_LOWHASH=1
- export NSS_SEED_ONLY_DEV_URANDOM=1
- export USE_SYSTEM_ZLIB=1
- export ZLIB_LIBS=-lz
- export ASFLAGS=""
- # Fix build failure on arm64
- export NS_USE_GCC=1
- # Detect compiler type and set proper environment value
- if tc-is-gcc; then
- export CC_IS_GCC=1
- elif tc-is-clang; then
- export CC_IS_CLANG=1
- fi
-
- export NSS_DISABLE_GTESTS=$(usex !test 1 0)
-
- # Include exportable custom settings defined by users, #900915
- # Two examples uses:
- # EXTRA_NSSCONF="MYONESWITCH=1"
- # EXTRA_NSSCONF="MYVALUE=0 MYOTHERVALUE=1 MYTHIRDVALUE=1"
- # e.g.
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0"
- # or
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0 NSS_ENABLE_WERROR=1"
- # etc.
- if [[ -n "${EXTRA_NSSCONF}" ]]; then
- ewarn "EXTRA_NSSCONF applied, please disable custom settings before reporting bugs."
- read -a myextranssconf <<< "${EXTRA_NSSCONF}"
-
- for (( i=0; i<${#myextranssconf[@]}; i++ )); do
- export "${myextranssconf[$i]}"
- echo "exported ${myextranssconf[$i]}"
- done
- fi
-
- # explicitly disable altivec/vsx if not requested
- # https://bugs.gentoo.org/789114
- case ${ARCH} in
- ppc*)
- use cpu_flags_ppc_altivec || export NSS_DISABLE_ALTIVEC=1
- use cpu_flags_ppc_vsx || export NSS_DISABLE_CRYPTO_VSX=1
- ;;
- esac
-
- use cpu_flags_x86_avx2 || export NSS_DISABLE_AVX2=1
- use cpu_flags_x86_sse3 || export NSS_DISABLE_SSE3=1
-
- local d
-
- # Build the host tools first.
- LDFLAGS="${BUILD_LDFLAGS}" \
- XCFLAGS="${BUILD_CFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake -C coreconf \
- CC="$(tc-getBUILD_CC)" \
- ${buildbits-${mybits}}
- makeargs+=( NSINSTALL="${PWD}/$(find -type f -name nsinstall)" )
-
- # Then build the target tools.
- for d in . lib/dbm ; do
- CPPFLAGS="${myCPPFLAGS}" \
- XCFLAGS="${CFLAGS} ${CPPFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake "${makeargs[@]}" -C ${d} OS_TEST="$(nssarch)"
- done
-}
-
-multilib_src_test() {
- einfo "Tests can take a *long* time, especially on a multilib system."
- einfo "30-45+ minutes per lib configuration. Bug #852755"
-
- # https://www.linuxfromscratch.org/blfs/view/svn/postlfs/nss.html
- # https://firefox-source-docs.mozilla.org/security/nss/legacy/nss_sources_building_testing/index.html#running_the_nss_test_suite
- # https://www-archive.mozilla.org/projects/security/pki/nss/testnss_32.html (older)
- export BUILD_OPT=1
- export HOST="localhost"
- export DOMSUF="localdomain"
- export USE_IP=TRUE
- export IP_ADDRESS="127.0.0.1"
-
- # Only run the standard cycle instead of full, reducing testing time from 45 minutes to 15
- # per lib implementation.
- export NSS_CYCLES=standard
-
- NSINSTALL="${PWD}/$(find -type f -name nsinstall)"
-
- cd "${BUILD_DIR}"/tests || die
- # Hack to get current objdir (prefixed dir where built binaries are)
- # Without this, at least multilib tests go wrong when building the amd64 variant
- # after x86.
- local objdir=$(find "${BUILD_DIR}"/dist -maxdepth 1 -iname Linux* | rev | cut -d/ -f1 | rev)
-
- # Can tweak to a subset of tests in future if we need to, but would prefer not
- OBJDIR="${objdir}" DIST="${BUILD_DIR}/dist" MOZILLA_ROOT="${BUILD_DIR}" ./all.sh || die
-}
-
-# Altering these 3 libraries breaks the CHK verification.
-# All of the following cause it to break:
-# - stripping
-# - prelink
-# - ELF signing
-# http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn6.html
-# Either we have to NOT strip them, or we have to forcibly resign after
-# stripping.
-#local_libdir="$(get_libdir)"
-#export STRIP_MASK="
-# */${local_libdir}/libfreebl3.so*
-# */${local_libdir}/libnssdbm3.so*
-# */${local_libdir}/libsoftokn3.so*"
-
-export NSS_CHK_SIGN_LIBS="freebl3 nssdbm3 softokn3"
-
-generate_chk() {
- local shlibsign="$1"
- local libdir="$2"
- einfo "Resigning core NSS libraries for FIPS validation"
- shift 2
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libname=lib${i}.so
- local chkname=lib${i}.chk
- "${shlibsign}" \
- -i "${libdir}"/${libname} \
- -o "${libdir}"/${chkname}.tmp \
- && mv -f \
- "${libdir}"/${chkname}.tmp \
- "${libdir}"/${chkname} \
- || die "Failed to sign ${libname}"
- done
-}
-
-cleanup_chk() {
- local libdir="$1"
- shift 1
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libfname="${libdir}/lib${i}.so"
- # If the major version has changed, then we have old chk files.
- [ ! -f "${libfname}" -a -f "${libfname}.chk" ] \
- && rm -f "${libfname}.chk"
- done
-}
-
-multilib_src_install() {
- pushd dist >/dev/null || die
-
- dodir /usr/$(get_libdir)
- cp -L */lib/*$(get_libname) "${ED}"/usr/$(get_libdir) || die "copying shared libs failed"
- local i
- for i in crmf freebl nssb nssckfw ; do
- cp -L */lib/lib${i}.a "${ED}"/usr/$(get_libdir) || die "copying libs failed"
- done
-
- # Install nss-config and pkgconfig file
- dodir /usr/bin
- cp -L */bin/nss-config "${ED}"/usr/bin || die
- dodir /usr/$(get_libdir)/pkgconfig
- cp -L */lib/pkgconfig/nss.pc "${ED}"/usr/$(get_libdir)/pkgconfig || die
-
- # create an nss-softokn.pc from nss.pc for libfreebl and some private headers
- # bug 517266
- sed -e 's#Libs:#Libs: -lfreebl#' \
- -e 's#Cflags:#Cflags: -I${includedir}/private#' \
- */lib/pkgconfig/nss.pc >"${ED}"/usr/$(get_libdir)/pkgconfig/nss-softokn.pc \
- || die "could not create nss-softokn.pc"
-
- # all the include files
- insinto /usr/include/nss
- doins public/nss/*.{h,api}
- insinto /usr/include/nss/private
- doins private/nss/{blapi,alghmac,cmac}.h
-
- popd >/dev/null || die
-
- local f nssutils
- # Always enabled because we need it for chk generation.
- nssutils=( shlibsign )
-
- if multilib_is_native_abi ; then
- if use utils; then
- # The tests we do not need to install.
- #nssutils_test="bltest crmftest dbtest dertimetest
- #fipstest remtest sdrtest"
- # checkcert utils has been removed in nss-3.22:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1187545
- # https://hg.mozilla.org/projects/nss/rev/df1729d37870
- # certcgi has been removed in nss-3.36:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1426602
- nssutils+=(
- addbuiltin
- atob
- baddbdir
- btoa
- certutil
- cmsutil
- conflict
- crlutil
- derdump
- digest
- makepqg
- mangle
- modutil
- multinit
- nonspr10
- ocspclnt
- oidcalc
- p7content
- p7env
- p7sign
- p7verify
- pk11mode
- pk12util
- pp
- rsaperf
- selfserv
- signtool
- signver
- ssltap
- strsclnt
- symkeyutil
- tstclnt
- vfychain
- vfyserv
- )
- # install man-pages for utils (bug #516810)
- doman doc/nroff/*.1
- fi
- pushd dist/*/bin >/dev/null || die
- for f in ${nssutils[@]}; do
- dobin ${f}
- done
- popd >/dev/null || die
- fi
-}
-
-pkg_postinst() {
- if [[ -n "${ROOT}" ]]; then
- elog "You appear to to be installing in a seperate \$ROOT"
- elog "to complete the setup and re-sign libraries please run:"
- elog "emerge --config '=${CATEGORY}/${PF}'"
- else
- sign_libraries
- fi
-}
-
-pkg_config() {
- sign_libraries
-}
-
-sign_libraries() {
- multilib_pkg_postinst() {
- # We must re-sign the libraries AFTER they are stripped.
- local shlibsign="${EROOT}/usr/bin/shlibsign"
- # See if we can execute it (cross-compiling & such). #436216
- "${shlibsign}" -h >&/dev/null
- if [[ $? -gt 1 ]] ; then
- shlibsign="shlibsign"
- fi
- generate_chk "${shlibsign}" "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postinst
-}
-
-pkg_postrm() {
- multilib_pkg_postrm() {
- cleanup_chk "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postrm
-}
diff --git a/dev-libs/nss/nss-3.112.ebuild b/dev-libs/nss/nss-3.112.ebuild
deleted file mode 100644
index 420e3cca0f03d..0000000000000
--- a/dev-libs/nss/nss-3.112.ebuild
+++ /dev/null
@@ -1,448 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit dot-a flag-o-matic multilib toolchain-funcs multilib-minimal
-
-NSPR_VER="4.35"
-RTM_NAME="NSS_${PV//./_}_RTM"
-
-DESCRIPTION="Mozilla's Network Security Services library that implements PKI support"
-HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS"
-SRC_URI="https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/${P}.tar.gz
- cacert? ( https://dev.gentoo.org/~juippis/mozilla/patchsets/nss-3.104-cacert-class1-class3.patch )"
-
-LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-IUSE="cacert test test-full +utils cpu_flags_ppc_altivec cpu_flags_x86_avx2 cpu_flags_x86_sse3 cpu_flags_ppc_vsx"
-
-REQUIRED_USE="test-full? ( test )"
-
-PROPERTIES="test_network"
-RESTRICT="test"
-
-# pkg-config called by nss-config -> virtual/pkgconfig in RDEPEND
-RDEPEND="
- >=dev-libs/nspr-${NSPR_VER}[${MULTILIB_USEDEP}]
- >=dev-db/sqlite-3.8.2[${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
- virtual/pkgconfig
-"
-DEPEND="${RDEPEND}"
-BDEPEND="dev-lang/perl"
-
-S="${WORKDIR}/${P}/${PN}"
-
-MULTILIB_CHOST_TOOLS=(
- /usr/bin/nss-config
-)
-
-PATCHES=(
- "${FILESDIR}"/nss-3.103-gentoo-fixes-add-pkgconfig-files.patch
- "${FILESDIR}"/nss-3.21-gentoo-fixup-warnings.patch
- "${FILESDIR}"/nss-3.87-use-clang-as-bgo892686.patch
-)
-
-src_prepare() {
- default
-
- if use cacert ; then
- eapply -p2 "${DISTDIR}"/nss-3.104-cacert-class1-class3.patch
- fi
-
- pushd coreconf >/dev/null || die
- # hack nspr paths
- echo 'INCLUDES += -I$(DIST)/include/dbm' \
- >> headers.mk || die "failed to append include"
-
- # modify install path
- sed -e '/CORE_DEPTH/s:SOURCE_PREFIX.*$:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
- -i source.mk || die
-
- # Respect LDFLAGS
- sed -i -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' rules.mk
-
- # Workaround make-4.4's change to sub-make, bmo#1800237, bgo#882069
- sed -i -e "s/^CPU_TAG = _.*/CPU_TAG = _$(nssarch)/" Linux.mk || die
-
- popd >/dev/null || die
-
- # Fix pkgconfig file for Prefix
- sed -i -e "/^PREFIX =/s:= /usr:= ${EPREFIX}/usr:" \
- config/Makefile || die
-
- # use host shlibsign if need be #436216
- if tc-is-cross-compiler ; then
- sed -i \
- -e 's:"${2}"/shlibsign:shlibsign:' \
- cmd/shlibsign/sign.sh || die
- fi
-
- # dirty hack
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../freebl/\$(OBJDIR):" \
- lib/ssl/config.mk || die
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../../lib/freebl/\$(OBJDIR):" \
- cmd/platlibs.mk || die
-
- multilib_copy_sources
- lto-guarantee-fat
-
- strip-flags
-}
-
-multilib_src_configure() {
- # Ensure we stay multilib aware
- sed -i -e "/@libdir@/ s:lib64:$(get_libdir):" config/Makefile || die
-}
-
-nssarch() {
- # Most of the arches are the same as $ARCH
- local t=${1:-${CHOST}}
- case ${t} in
- *86*-pc-solaris2*) echo "i86pc" ;;
- aarch64*) echo "aarch64" ;;
- hppa*) echo "parisc" ;;
- i?86*) echo "i686" ;;
- x86_64*) echo "x86_64" ;;
- *) tc-arch ${t} ;;
- esac
-}
-
-nssbits() {
- local cc cppflags="${1}CPPFLAGS" cflags="${1}CFLAGS"
- if [[ ${1} == BUILD_ ]]; then
- cc=$(tc-getBUILD_CC)
- else
- cc=$(tc-getCC)
- fi
- # TODO: Port this to toolchain-funcs tc-get-ptr-size/tc-get-build-ptr-size
- echo > "${T}"/test.c || die
- ${cc} ${!cppflags} ${!cflags} -fno-lto -c "${T}"/test.c -o "${T}/${1}test.o" || die
- case $(file -S "${T}/${1}test.o") in
- *32-bit*x86-64*) echo USE_X32=1;;
- *64-bit*|*ppc64*|*x86_64*) echo USE_64=1;;
- *32-bit*|*ppc*|*i386*) ;;
- *) die "Failed to detect whether ${cc} builds 64bits or 32bits, disable distcc if you're using it, please";;
- esac
-}
-
-multilib_src_compile() {
- # use ABI to determine bit'ness, or fallback if unset
- local buildbits mybits
- case "${ABI}" in
- n32) mybits="USE_N32=1";;
- x32) mybits="USE_X32=1";;
- s390x|*64) mybits="USE_64=1";;
- ${DEFAULT_ABI})
- einfo "Running compilation test to determine bit'ness"
- mybits=$(nssbits)
- ;;
- esac
- # bitness of host may differ from target
- if tc-is-cross-compiler; then
- buildbits=$(nssbits BUILD_)
- fi
-
- local makeargs=(
- CC="$(tc-getCC)"
- CCC="$(tc-getCXX)"
- AR="$(tc-getAR) rc \$@"
- RANLIB="$(tc-getRANLIB)"
- OPTIMIZER=
- ${mybits}
- disable_ckbi=0
- )
-
- # Take care of nspr settings #436216
- local myCPPFLAGS="${CPPFLAGS} $($(tc-getPKG_CONFIG) nspr --cflags) -D_FILE_OFFSET_BITS=64"
- unset NSPR_INCLUDE_DIR
-
- export NSS_ALLOW_SSLKEYLOGFILE=1
- export NSS_ENABLE_WERROR=0 #567158
- export BUILD_OPT=1
- export NSS_USE_SYSTEM_SQLITE=1
- export NSDISTMODE=copy
- export FREEBL_NO_DEPEND=1
- export FREEBL_LOWHASH=1
- export NSS_SEED_ONLY_DEV_URANDOM=1
- export USE_SYSTEM_ZLIB=1
- export ZLIB_LIBS=-lz
- export ASFLAGS=""
- # Fix build failure on arm64
- export NS_USE_GCC=1
- # Detect compiler type and set proper environment value
- if tc-is-gcc; then
- export CC_IS_GCC=1
- elif tc-is-clang; then
- export CC_IS_CLANG=1
- fi
-
- export NSS_DISABLE_GTESTS=$(usex !test 1 0)
-
- # Include exportable custom settings defined by users, #900915
- # Two examples uses:
- # EXTRA_NSSCONF="MYONESWITCH=1"
- # EXTRA_NSSCONF="MYVALUE=0 MYOTHERVALUE=1 MYTHIRDVALUE=1"
- # e.g.
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0"
- # or
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0 NSS_ENABLE_WERROR=1"
- # etc.
- if [[ -n "${EXTRA_NSSCONF}" ]]; then
- ewarn "EXTRA_NSSCONF applied, please disable custom settings before reporting bugs."
- read -a myextranssconf <<< "${EXTRA_NSSCONF}"
-
- for (( i=0; i<${#myextranssconf[@]}; i++ )); do
- export "${myextranssconf[$i]}"
- echo "exported ${myextranssconf[$i]}"
- done
- fi
-
- # explicitly disable altivec/vsx if not requested
- # https://bugs.gentoo.org/789114
- case ${ARCH} in
- ppc*)
- use cpu_flags_ppc_altivec || export NSS_DISABLE_ALTIVEC=1
- use cpu_flags_ppc_vsx || export NSS_DISABLE_CRYPTO_VSX=1
- ;;
- esac
-
- use cpu_flags_x86_avx2 || export NSS_DISABLE_AVX2=1
- use cpu_flags_x86_sse3 || export NSS_DISABLE_SSE3=1
-
- local d
-
- # Disables calling shlibsign during the build #956431 and #436216
- tc-is-cross-compiler && makeargs+=( CROSS_COMPILE=1 )
-
- # Build the host tools first.
- LDFLAGS="${BUILD_LDFLAGS}" \
- XCFLAGS="${BUILD_CFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake -C coreconf \
- CC="$(tc-getBUILD_CC)" \
- ${buildbits-${mybits}}
- makeargs+=( NSINSTALL="${PWD}/$(find -type f -name nsinstall)" )
-
- # Then build the target tools.
- for d in . lib/dbm ; do
- CPPFLAGS="${myCPPFLAGS}" \
- XCFLAGS="${CFLAGS} ${CPPFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake "${makeargs[@]}" -C ${d} OS_TEST="$(nssarch)"
- done
-}
-
-multilib_src_test() {
- einfo "Tests can take a *long* time, especially on a multilib system."
- einfo "~10 minutes per lib configuration with only 'standard' tests,"
- einfo "~40 minutes per lib configuration with 'full' tests. Bug #852755"
-
- # https://www.linuxfromscratch.org/blfs/view/svn/postlfs/nss.html
- # https://firefox-source-docs.mozilla.org/security/nss/legacy/nss_sources_building_testing/index.html#running_the_nss_test_suite
- # https://www-archive.mozilla.org/projects/security/pki/nss/testnss_32.html (older)
- export BUILD_OPT=1
- export HOST="localhost"
- export DOMSUF="localdomain"
- export USE_IP=TRUE
- export IP_ADDRESS="127.0.0.1"
-
- # Only run the standard cycle instead of full, reducing testing time from 45 minutes to 15
- # per lib implementation.
- if use test-full ; then
- # export NSS_CYCLES="standard pkix sharedb"
- :;
- else
- export NSS_CYCLES="standard"
- fi
-
- NSINSTALL="${PWD}/$(find -type f -name nsinstall)"
-
- cd "${BUILD_DIR}"/tests || die
- # Hack to get current objdir (prefixed dir where built binaries are)
- # Without this, at least multilib tests go wrong when building the amd64 variant
- # after x86.
- local objdir=$(find "${BUILD_DIR}"/dist -maxdepth 1 -iname Linux* | rev | cut -d/ -f1 | rev)
-
- # Can tweak to a subset of tests in future if we need to, but would prefer not
- OBJDIR="${objdir}" DIST="${BUILD_DIR}/dist" MOZILLA_ROOT="${BUILD_DIR}" ./all.sh || die
-}
-
-# Altering these 3 libraries breaks the CHK verification.
-# All of the following cause it to break:
-# - stripping
-# - prelink
-# - ELF signing
-# http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn6.html
-# Either we have to NOT strip them, or we have to forcibly resign after
-# stripping.
-#local_libdir="$(get_libdir)"
-#export STRIP_MASK="
-# */${local_libdir}/libfreebl3.so*
-# */${local_libdir}/libnssdbm3.so*
-# */${local_libdir}/libsoftokn3.so*"
-
-export NSS_CHK_SIGN_LIBS="freebl3 nssdbm3 softokn3"
-
-generate_chk() {
- local shlibsign="$1"
- local libdir="$2"
- einfo "Resigning core NSS libraries for FIPS validation"
- shift 2
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libname=lib${i}.so
- local chkname=lib${i}.chk
- "${shlibsign}" \
- -i "${libdir}"/${libname} \
- -o "${libdir}"/${chkname}.tmp \
- && mv -f \
- "${libdir}"/${chkname}.tmp \
- "${libdir}"/${chkname} \
- || die "Failed to sign ${libname}"
- done
-}
-
-cleanup_chk() {
- local libdir="$1"
- shift 1
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libfname="${libdir}/lib${i}.so"
- # If the major version has changed, then we have old chk files.
- [ ! -f "${libfname}" -a -f "${libfname}.chk" ] \
- && rm -f "${libfname}.chk"
- done
-}
-
-multilib_src_install() {
- pushd dist >/dev/null || die
-
- dodir /usr/$(get_libdir)
- cp -L */lib/*$(get_libname) "${ED}"/usr/$(get_libdir) || die "copying shared libs failed"
- local i
- for i in crmf freebl nssb nssckfw ; do
- cp -L */lib/lib${i}.a "${ED}"/usr/$(get_libdir) || die "copying libs failed"
- done
-
- # Install nss-config and pkgconfig file
- dodir /usr/bin
- cp -L */bin/nss-config "${ED}"/usr/bin || die
- dodir /usr/$(get_libdir)/pkgconfig
- cp -L */lib/pkgconfig/nss.pc "${ED}"/usr/$(get_libdir)/pkgconfig || die
-
- # create an nss-softokn.pc from nss.pc for libfreebl and some private headers
- # bug 517266
- sed -e 's#Libs:#Libs: -lfreebl#' \
- -e 's#Cflags:#Cflags: -I${includedir}/private#' \
- */lib/pkgconfig/nss.pc >"${ED}"/usr/$(get_libdir)/pkgconfig/nss-softokn.pc \
- || die "could not create nss-softokn.pc"
-
- # all the include files
- insinto /usr/include/nss
- doins public/nss/*.{h,api}
- insinto /usr/include/nss/private
- doins private/nss/{blapi,alghmac,cmac}.h
-
- popd >/dev/null || die
-
- local f nssutils
- # Always enabled because we need it for chk generation.
- nssutils=( shlibsign )
-
- if multilib_is_native_abi ; then
- if use utils; then
- # The tests we do not need to install.
- #nssutils_test="bltest crmftest dbtest dertimetest
- #fipstest remtest sdrtest"
- # checkcert utils has been removed in nss-3.22:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1187545
- # https://hg.mozilla.org/projects/nss/rev/df1729d37870
- # certcgi has been removed in nss-3.36:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1426602
- nssutils+=(
- addbuiltin
- atob
- baddbdir
- btoa
- certutil
- cmsutil
- conflict
- crlutil
- derdump
- digest
- makepqg
- mangle
- modutil
- multinit
- nonspr10
- ocspclnt
- oidcalc
- p7content
- p7env
- p7sign
- p7verify
- pk11mode
- pk12util
- pp
- rsaperf
- selfserv
- signtool
- signver
- ssltap
- strsclnt
- symkeyutil
- tstclnt
- vfychain
- vfyserv
- )
- # install man-pages for utils (bug #516810)
- doman doc/nroff/*.1
- fi
- pushd dist/*/bin >/dev/null || die
- for f in ${nssutils[@]}; do
- dobin ${f}
- done
- popd >/dev/null || die
- fi
- strip-lto-bytecode
-}
-
-pkg_postinst() {
- if [[ -n "${ROOT}" ]]; then
- elog "You appear to to be installing in a seperate \$ROOT"
- elog "to complete the setup and re-sign libraries please run:"
- elog "emerge --config '=${CATEGORY}/${PF}'"
- else
- sign_libraries
- fi
-}
-
-pkg_config() {
- sign_libraries
-}
-
-sign_libraries() {
- multilib_pkg_postinst() {
- # We must re-sign the libraries AFTER they are stripped.
- local shlibsign="${EROOT}/usr/bin/shlibsign"
- # See if we can execute it (cross-compiling & such). #436216
- "${shlibsign}" -h >&/dev/null
- if [[ $? -gt 1 ]] ; then
- shlibsign="shlibsign"
- fi
- generate_chk "${shlibsign}" "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postinst
-}
-
-pkg_postrm() {
- multilib_pkg_postrm() {
- cleanup_chk "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postrm
-}
diff --git a/dev-libs/nss/nss-3.113.1.ebuild b/dev-libs/nss/nss-3.113.1.ebuild
deleted file mode 100644
index 420e3cca0f03d..0000000000000
--- a/dev-libs/nss/nss-3.113.1.ebuild
+++ /dev/null
@@ -1,448 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit dot-a flag-o-matic multilib toolchain-funcs multilib-minimal
-
-NSPR_VER="4.35"
-RTM_NAME="NSS_${PV//./_}_RTM"
-
-DESCRIPTION="Mozilla's Network Security Services library that implements PKI support"
-HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS"
-SRC_URI="https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/${P}.tar.gz
- cacert? ( https://dev.gentoo.org/~juippis/mozilla/patchsets/nss-3.104-cacert-class1-class3.patch )"
-
-LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-IUSE="cacert test test-full +utils cpu_flags_ppc_altivec cpu_flags_x86_avx2 cpu_flags_x86_sse3 cpu_flags_ppc_vsx"
-
-REQUIRED_USE="test-full? ( test )"
-
-PROPERTIES="test_network"
-RESTRICT="test"
-
-# pkg-config called by nss-config -> virtual/pkgconfig in RDEPEND
-RDEPEND="
- >=dev-libs/nspr-${NSPR_VER}[${MULTILIB_USEDEP}]
- >=dev-db/sqlite-3.8.2[${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
- virtual/pkgconfig
-"
-DEPEND="${RDEPEND}"
-BDEPEND="dev-lang/perl"
-
-S="${WORKDIR}/${P}/${PN}"
-
-MULTILIB_CHOST_TOOLS=(
- /usr/bin/nss-config
-)
-
-PATCHES=(
- "${FILESDIR}"/nss-3.103-gentoo-fixes-add-pkgconfig-files.patch
- "${FILESDIR}"/nss-3.21-gentoo-fixup-warnings.patch
- "${FILESDIR}"/nss-3.87-use-clang-as-bgo892686.patch
-)
-
-src_prepare() {
- default
-
- if use cacert ; then
- eapply -p2 "${DISTDIR}"/nss-3.104-cacert-class1-class3.patch
- fi
-
- pushd coreconf >/dev/null || die
- # hack nspr paths
- echo 'INCLUDES += -I$(DIST)/include/dbm' \
- >> headers.mk || die "failed to append include"
-
- # modify install path
- sed -e '/CORE_DEPTH/s:SOURCE_PREFIX.*$:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
- -i source.mk || die
-
- # Respect LDFLAGS
- sed -i -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' rules.mk
-
- # Workaround make-4.4's change to sub-make, bmo#1800237, bgo#882069
- sed -i -e "s/^CPU_TAG = _.*/CPU_TAG = _$(nssarch)/" Linux.mk || die
-
- popd >/dev/null || die
-
- # Fix pkgconfig file for Prefix
- sed -i -e "/^PREFIX =/s:= /usr:= ${EPREFIX}/usr:" \
- config/Makefile || die
-
- # use host shlibsign if need be #436216
- if tc-is-cross-compiler ; then
- sed -i \
- -e 's:"${2}"/shlibsign:shlibsign:' \
- cmd/shlibsign/sign.sh || die
- fi
-
- # dirty hack
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../freebl/\$(OBJDIR):" \
- lib/ssl/config.mk || die
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../../lib/freebl/\$(OBJDIR):" \
- cmd/platlibs.mk || die
-
- multilib_copy_sources
- lto-guarantee-fat
-
- strip-flags
-}
-
-multilib_src_configure() {
- # Ensure we stay multilib aware
- sed -i -e "/@libdir@/ s:lib64:$(get_libdir):" config/Makefile || die
-}
-
-nssarch() {
- # Most of the arches are the same as $ARCH
- local t=${1:-${CHOST}}
- case ${t} in
- *86*-pc-solaris2*) echo "i86pc" ;;
- aarch64*) echo "aarch64" ;;
- hppa*) echo "parisc" ;;
- i?86*) echo "i686" ;;
- x86_64*) echo "x86_64" ;;
- *) tc-arch ${t} ;;
- esac
-}
-
-nssbits() {
- local cc cppflags="${1}CPPFLAGS" cflags="${1}CFLAGS"
- if [[ ${1} == BUILD_ ]]; then
- cc=$(tc-getBUILD_CC)
- else
- cc=$(tc-getCC)
- fi
- # TODO: Port this to toolchain-funcs tc-get-ptr-size/tc-get-build-ptr-size
- echo > "${T}"/test.c || die
- ${cc} ${!cppflags} ${!cflags} -fno-lto -c "${T}"/test.c -o "${T}/${1}test.o" || die
- case $(file -S "${T}/${1}test.o") in
- *32-bit*x86-64*) echo USE_X32=1;;
- *64-bit*|*ppc64*|*x86_64*) echo USE_64=1;;
- *32-bit*|*ppc*|*i386*) ;;
- *) die "Failed to detect whether ${cc} builds 64bits or 32bits, disable distcc if you're using it, please";;
- esac
-}
-
-multilib_src_compile() {
- # use ABI to determine bit'ness, or fallback if unset
- local buildbits mybits
- case "${ABI}" in
- n32) mybits="USE_N32=1";;
- x32) mybits="USE_X32=1";;
- s390x|*64) mybits="USE_64=1";;
- ${DEFAULT_ABI})
- einfo "Running compilation test to determine bit'ness"
- mybits=$(nssbits)
- ;;
- esac
- # bitness of host may differ from target
- if tc-is-cross-compiler; then
- buildbits=$(nssbits BUILD_)
- fi
-
- local makeargs=(
- CC="$(tc-getCC)"
- CCC="$(tc-getCXX)"
- AR="$(tc-getAR) rc \$@"
- RANLIB="$(tc-getRANLIB)"
- OPTIMIZER=
- ${mybits}
- disable_ckbi=0
- )
-
- # Take care of nspr settings #436216
- local myCPPFLAGS="${CPPFLAGS} $($(tc-getPKG_CONFIG) nspr --cflags) -D_FILE_OFFSET_BITS=64"
- unset NSPR_INCLUDE_DIR
-
- export NSS_ALLOW_SSLKEYLOGFILE=1
- export NSS_ENABLE_WERROR=0 #567158
- export BUILD_OPT=1
- export NSS_USE_SYSTEM_SQLITE=1
- export NSDISTMODE=copy
- export FREEBL_NO_DEPEND=1
- export FREEBL_LOWHASH=1
- export NSS_SEED_ONLY_DEV_URANDOM=1
- export USE_SYSTEM_ZLIB=1
- export ZLIB_LIBS=-lz
- export ASFLAGS=""
- # Fix build failure on arm64
- export NS_USE_GCC=1
- # Detect compiler type and set proper environment value
- if tc-is-gcc; then
- export CC_IS_GCC=1
- elif tc-is-clang; then
- export CC_IS_CLANG=1
- fi
-
- export NSS_DISABLE_GTESTS=$(usex !test 1 0)
-
- # Include exportable custom settings defined by users, #900915
- # Two examples uses:
- # EXTRA_NSSCONF="MYONESWITCH=1"
- # EXTRA_NSSCONF="MYVALUE=0 MYOTHERVALUE=1 MYTHIRDVALUE=1"
- # e.g.
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0"
- # or
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0 NSS_ENABLE_WERROR=1"
- # etc.
- if [[ -n "${EXTRA_NSSCONF}" ]]; then
- ewarn "EXTRA_NSSCONF applied, please disable custom settings before reporting bugs."
- read -a myextranssconf <<< "${EXTRA_NSSCONF}"
-
- for (( i=0; i<${#myextranssconf[@]}; i++ )); do
- export "${myextranssconf[$i]}"
- echo "exported ${myextranssconf[$i]}"
- done
- fi
-
- # explicitly disable altivec/vsx if not requested
- # https://bugs.gentoo.org/789114
- case ${ARCH} in
- ppc*)
- use cpu_flags_ppc_altivec || export NSS_DISABLE_ALTIVEC=1
- use cpu_flags_ppc_vsx || export NSS_DISABLE_CRYPTO_VSX=1
- ;;
- esac
-
- use cpu_flags_x86_avx2 || export NSS_DISABLE_AVX2=1
- use cpu_flags_x86_sse3 || export NSS_DISABLE_SSE3=1
-
- local d
-
- # Disables calling shlibsign during the build #956431 and #436216
- tc-is-cross-compiler && makeargs+=( CROSS_COMPILE=1 )
-
- # Build the host tools first.
- LDFLAGS="${BUILD_LDFLAGS}" \
- XCFLAGS="${BUILD_CFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake -C coreconf \
- CC="$(tc-getBUILD_CC)" \
- ${buildbits-${mybits}}
- makeargs+=( NSINSTALL="${PWD}/$(find -type f -name nsinstall)" )
-
- # Then build the target tools.
- for d in . lib/dbm ; do
- CPPFLAGS="${myCPPFLAGS}" \
- XCFLAGS="${CFLAGS} ${CPPFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake "${makeargs[@]}" -C ${d} OS_TEST="$(nssarch)"
- done
-}
-
-multilib_src_test() {
- einfo "Tests can take a *long* time, especially on a multilib system."
- einfo "~10 minutes per lib configuration with only 'standard' tests,"
- einfo "~40 minutes per lib configuration with 'full' tests. Bug #852755"
-
- # https://www.linuxfromscratch.org/blfs/view/svn/postlfs/nss.html
- # https://firefox-source-docs.mozilla.org/security/nss/legacy/nss_sources_building_testing/index.html#running_the_nss_test_suite
- # https://www-archive.mozilla.org/projects/security/pki/nss/testnss_32.html (older)
- export BUILD_OPT=1
- export HOST="localhost"
- export DOMSUF="localdomain"
- export USE_IP=TRUE
- export IP_ADDRESS="127.0.0.1"
-
- # Only run the standard cycle instead of full, reducing testing time from 45 minutes to 15
- # per lib implementation.
- if use test-full ; then
- # export NSS_CYCLES="standard pkix sharedb"
- :;
- else
- export NSS_CYCLES="standard"
- fi
-
- NSINSTALL="${PWD}/$(find -type f -name nsinstall)"
-
- cd "${BUILD_DIR}"/tests || die
- # Hack to get current objdir (prefixed dir where built binaries are)
- # Without this, at least multilib tests go wrong when building the amd64 variant
- # after x86.
- local objdir=$(find "${BUILD_DIR}"/dist -maxdepth 1 -iname Linux* | rev | cut -d/ -f1 | rev)
-
- # Can tweak to a subset of tests in future if we need to, but would prefer not
- OBJDIR="${objdir}" DIST="${BUILD_DIR}/dist" MOZILLA_ROOT="${BUILD_DIR}" ./all.sh || die
-}
-
-# Altering these 3 libraries breaks the CHK verification.
-# All of the following cause it to break:
-# - stripping
-# - prelink
-# - ELF signing
-# http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn6.html
-# Either we have to NOT strip them, or we have to forcibly resign after
-# stripping.
-#local_libdir="$(get_libdir)"
-#export STRIP_MASK="
-# */${local_libdir}/libfreebl3.so*
-# */${local_libdir}/libnssdbm3.so*
-# */${local_libdir}/libsoftokn3.so*"
-
-export NSS_CHK_SIGN_LIBS="freebl3 nssdbm3 softokn3"
-
-generate_chk() {
- local shlibsign="$1"
- local libdir="$2"
- einfo "Resigning core NSS libraries for FIPS validation"
- shift 2
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libname=lib${i}.so
- local chkname=lib${i}.chk
- "${shlibsign}" \
- -i "${libdir}"/${libname} \
- -o "${libdir}"/${chkname}.tmp \
- && mv -f \
- "${libdir}"/${chkname}.tmp \
- "${libdir}"/${chkname} \
- || die "Failed to sign ${libname}"
- done
-}
-
-cleanup_chk() {
- local libdir="$1"
- shift 1
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libfname="${libdir}/lib${i}.so"
- # If the major version has changed, then we have old chk files.
- [ ! -f "${libfname}" -a -f "${libfname}.chk" ] \
- && rm -f "${libfname}.chk"
- done
-}
-
-multilib_src_install() {
- pushd dist >/dev/null || die
-
- dodir /usr/$(get_libdir)
- cp -L */lib/*$(get_libname) "${ED}"/usr/$(get_libdir) || die "copying shared libs failed"
- local i
- for i in crmf freebl nssb nssckfw ; do
- cp -L */lib/lib${i}.a "${ED}"/usr/$(get_libdir) || die "copying libs failed"
- done
-
- # Install nss-config and pkgconfig file
- dodir /usr/bin
- cp -L */bin/nss-config "${ED}"/usr/bin || die
- dodir /usr/$(get_libdir)/pkgconfig
- cp -L */lib/pkgconfig/nss.pc "${ED}"/usr/$(get_libdir)/pkgconfig || die
-
- # create an nss-softokn.pc from nss.pc for libfreebl and some private headers
- # bug 517266
- sed -e 's#Libs:#Libs: -lfreebl#' \
- -e 's#Cflags:#Cflags: -I${includedir}/private#' \
- */lib/pkgconfig/nss.pc >"${ED}"/usr/$(get_libdir)/pkgconfig/nss-softokn.pc \
- || die "could not create nss-softokn.pc"
-
- # all the include files
- insinto /usr/include/nss
- doins public/nss/*.{h,api}
- insinto /usr/include/nss/private
- doins private/nss/{blapi,alghmac,cmac}.h
-
- popd >/dev/null || die
-
- local f nssutils
- # Always enabled because we need it for chk generation.
- nssutils=( shlibsign )
-
- if multilib_is_native_abi ; then
- if use utils; then
- # The tests we do not need to install.
- #nssutils_test="bltest crmftest dbtest dertimetest
- #fipstest remtest sdrtest"
- # checkcert utils has been removed in nss-3.22:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1187545
- # https://hg.mozilla.org/projects/nss/rev/df1729d37870
- # certcgi has been removed in nss-3.36:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1426602
- nssutils+=(
- addbuiltin
- atob
- baddbdir
- btoa
- certutil
- cmsutil
- conflict
- crlutil
- derdump
- digest
- makepqg
- mangle
- modutil
- multinit
- nonspr10
- ocspclnt
- oidcalc
- p7content
- p7env
- p7sign
- p7verify
- pk11mode
- pk12util
- pp
- rsaperf
- selfserv
- signtool
- signver
- ssltap
- strsclnt
- symkeyutil
- tstclnt
- vfychain
- vfyserv
- )
- # install man-pages for utils (bug #516810)
- doman doc/nroff/*.1
- fi
- pushd dist/*/bin >/dev/null || die
- for f in ${nssutils[@]}; do
- dobin ${f}
- done
- popd >/dev/null || die
- fi
- strip-lto-bytecode
-}
-
-pkg_postinst() {
- if [[ -n "${ROOT}" ]]; then
- elog "You appear to to be installing in a seperate \$ROOT"
- elog "to complete the setup and re-sign libraries please run:"
- elog "emerge --config '=${CATEGORY}/${PF}'"
- else
- sign_libraries
- fi
-}
-
-pkg_config() {
- sign_libraries
-}
-
-sign_libraries() {
- multilib_pkg_postinst() {
- # We must re-sign the libraries AFTER they are stripped.
- local shlibsign="${EROOT}/usr/bin/shlibsign"
- # See if we can execute it (cross-compiling & such). #436216
- "${shlibsign}" -h >&/dev/null
- if [[ $? -gt 1 ]] ; then
- shlibsign="shlibsign"
- fi
- generate_chk "${shlibsign}" "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postinst
-}
-
-pkg_postrm() {
- multilib_pkg_postrm() {
- cleanup_chk "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postrm
-}
diff --git a/dev-libs/nss/nss-3.113.ebuild b/dev-libs/nss/nss-3.113.ebuild
deleted file mode 100644
index 420e3cca0f03d..0000000000000
--- a/dev-libs/nss/nss-3.113.ebuild
+++ /dev/null
@@ -1,448 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit dot-a flag-o-matic multilib toolchain-funcs multilib-minimal
-
-NSPR_VER="4.35"
-RTM_NAME="NSS_${PV//./_}_RTM"
-
-DESCRIPTION="Mozilla's Network Security Services library that implements PKI support"
-HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS"
-SRC_URI="https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/${P}.tar.gz
- cacert? ( https://dev.gentoo.org/~juippis/mozilla/patchsets/nss-3.104-cacert-class1-class3.patch )"
-
-LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-IUSE="cacert test test-full +utils cpu_flags_ppc_altivec cpu_flags_x86_avx2 cpu_flags_x86_sse3 cpu_flags_ppc_vsx"
-
-REQUIRED_USE="test-full? ( test )"
-
-PROPERTIES="test_network"
-RESTRICT="test"
-
-# pkg-config called by nss-config -> virtual/pkgconfig in RDEPEND
-RDEPEND="
- >=dev-libs/nspr-${NSPR_VER}[${MULTILIB_USEDEP}]
- >=dev-db/sqlite-3.8.2[${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
- virtual/pkgconfig
-"
-DEPEND="${RDEPEND}"
-BDEPEND="dev-lang/perl"
-
-S="${WORKDIR}/${P}/${PN}"
-
-MULTILIB_CHOST_TOOLS=(
- /usr/bin/nss-config
-)
-
-PATCHES=(
- "${FILESDIR}"/nss-3.103-gentoo-fixes-add-pkgconfig-files.patch
- "${FILESDIR}"/nss-3.21-gentoo-fixup-warnings.patch
- "${FILESDIR}"/nss-3.87-use-clang-as-bgo892686.patch
-)
-
-src_prepare() {
- default
-
- if use cacert ; then
- eapply -p2 "${DISTDIR}"/nss-3.104-cacert-class1-class3.patch
- fi
-
- pushd coreconf >/dev/null || die
- # hack nspr paths
- echo 'INCLUDES += -I$(DIST)/include/dbm' \
- >> headers.mk || die "failed to append include"
-
- # modify install path
- sed -e '/CORE_DEPTH/s:SOURCE_PREFIX.*$:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
- -i source.mk || die
-
- # Respect LDFLAGS
- sed -i -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' rules.mk
-
- # Workaround make-4.4's change to sub-make, bmo#1800237, bgo#882069
- sed -i -e "s/^CPU_TAG = _.*/CPU_TAG = _$(nssarch)/" Linux.mk || die
-
- popd >/dev/null || die
-
- # Fix pkgconfig file for Prefix
- sed -i -e "/^PREFIX =/s:= /usr:= ${EPREFIX}/usr:" \
- config/Makefile || die
-
- # use host shlibsign if need be #436216
- if tc-is-cross-compiler ; then
- sed -i \
- -e 's:"${2}"/shlibsign:shlibsign:' \
- cmd/shlibsign/sign.sh || die
- fi
-
- # dirty hack
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../freebl/\$(OBJDIR):" \
- lib/ssl/config.mk || die
- sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../../lib/freebl/\$(OBJDIR):" \
- cmd/platlibs.mk || die
-
- multilib_copy_sources
- lto-guarantee-fat
-
- strip-flags
-}
-
-multilib_src_configure() {
- # Ensure we stay multilib aware
- sed -i -e "/@libdir@/ s:lib64:$(get_libdir):" config/Makefile || die
-}
-
-nssarch() {
- # Most of the arches are the same as $ARCH
- local t=${1:-${CHOST}}
- case ${t} in
- *86*-pc-solaris2*) echo "i86pc" ;;
- aarch64*) echo "aarch64" ;;
- hppa*) echo "parisc" ;;
- i?86*) echo "i686" ;;
- x86_64*) echo "x86_64" ;;
- *) tc-arch ${t} ;;
- esac
-}
-
-nssbits() {
- local cc cppflags="${1}CPPFLAGS" cflags="${1}CFLAGS"
- if [[ ${1} == BUILD_ ]]; then
- cc=$(tc-getBUILD_CC)
- else
- cc=$(tc-getCC)
- fi
- # TODO: Port this to toolchain-funcs tc-get-ptr-size/tc-get-build-ptr-size
- echo > "${T}"/test.c || die
- ${cc} ${!cppflags} ${!cflags} -fno-lto -c "${T}"/test.c -o "${T}/${1}test.o" || die
- case $(file -S "${T}/${1}test.o") in
- *32-bit*x86-64*) echo USE_X32=1;;
- *64-bit*|*ppc64*|*x86_64*) echo USE_64=1;;
- *32-bit*|*ppc*|*i386*) ;;
- *) die "Failed to detect whether ${cc} builds 64bits or 32bits, disable distcc if you're using it, please";;
- esac
-}
-
-multilib_src_compile() {
- # use ABI to determine bit'ness, or fallback if unset
- local buildbits mybits
- case "${ABI}" in
- n32) mybits="USE_N32=1";;
- x32) mybits="USE_X32=1";;
- s390x|*64) mybits="USE_64=1";;
- ${DEFAULT_ABI})
- einfo "Running compilation test to determine bit'ness"
- mybits=$(nssbits)
- ;;
- esac
- # bitness of host may differ from target
- if tc-is-cross-compiler; then
- buildbits=$(nssbits BUILD_)
- fi
-
- local makeargs=(
- CC="$(tc-getCC)"
- CCC="$(tc-getCXX)"
- AR="$(tc-getAR) rc \$@"
- RANLIB="$(tc-getRANLIB)"
- OPTIMIZER=
- ${mybits}
- disable_ckbi=0
- )
-
- # Take care of nspr settings #436216
- local myCPPFLAGS="${CPPFLAGS} $($(tc-getPKG_CONFIG) nspr --cflags) -D_FILE_OFFSET_BITS=64"
- unset NSPR_INCLUDE_DIR
-
- export NSS_ALLOW_SSLKEYLOGFILE=1
- export NSS_ENABLE_WERROR=0 #567158
- export BUILD_OPT=1
- export NSS_USE_SYSTEM_SQLITE=1
- export NSDISTMODE=copy
- export FREEBL_NO_DEPEND=1
- export FREEBL_LOWHASH=1
- export NSS_SEED_ONLY_DEV_URANDOM=1
- export USE_SYSTEM_ZLIB=1
- export ZLIB_LIBS=-lz
- export ASFLAGS=""
- # Fix build failure on arm64
- export NS_USE_GCC=1
- # Detect compiler type and set proper environment value
- if tc-is-gcc; then
- export CC_IS_GCC=1
- elif tc-is-clang; then
- export CC_IS_CLANG=1
- fi
-
- export NSS_DISABLE_GTESTS=$(usex !test 1 0)
-
- # Include exportable custom settings defined by users, #900915
- # Two examples uses:
- # EXTRA_NSSCONF="MYONESWITCH=1"
- # EXTRA_NSSCONF="MYVALUE=0 MYOTHERVALUE=1 MYTHIRDVALUE=1"
- # e.g.
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0"
- # or
- # EXTRA_NSSCONF="NSS_ALLOW_SSLKEYLOGFILE=0 NSS_ENABLE_WERROR=1"
- # etc.
- if [[ -n "${EXTRA_NSSCONF}" ]]; then
- ewarn "EXTRA_NSSCONF applied, please disable custom settings before reporting bugs."
- read -a myextranssconf <<< "${EXTRA_NSSCONF}"
-
- for (( i=0; i<${#myextranssconf[@]}; i++ )); do
- export "${myextranssconf[$i]}"
- echo "exported ${myextranssconf[$i]}"
- done
- fi
-
- # explicitly disable altivec/vsx if not requested
- # https://bugs.gentoo.org/789114
- case ${ARCH} in
- ppc*)
- use cpu_flags_ppc_altivec || export NSS_DISABLE_ALTIVEC=1
- use cpu_flags_ppc_vsx || export NSS_DISABLE_CRYPTO_VSX=1
- ;;
- esac
-
- use cpu_flags_x86_avx2 || export NSS_DISABLE_AVX2=1
- use cpu_flags_x86_sse3 || export NSS_DISABLE_SSE3=1
-
- local d
-
- # Disables calling shlibsign during the build #956431 and #436216
- tc-is-cross-compiler && makeargs+=( CROSS_COMPILE=1 )
-
- # Build the host tools first.
- LDFLAGS="${BUILD_LDFLAGS}" \
- XCFLAGS="${BUILD_CFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake -C coreconf \
- CC="$(tc-getBUILD_CC)" \
- ${buildbits-${mybits}}
- makeargs+=( NSINSTALL="${PWD}/$(find -type f -name nsinstall)" )
-
- # Then build the target tools.
- for d in . lib/dbm ; do
- CPPFLAGS="${myCPPFLAGS}" \
- XCFLAGS="${CFLAGS} ${CPPFLAGS} -D_FILE_OFFSET_BITS=64" \
- NSPR_LIB_DIR="${T}/fakedir" \
- emake "${makeargs[@]}" -C ${d} OS_TEST="$(nssarch)"
- done
-}
-
-multilib_src_test() {
- einfo "Tests can take a *long* time, especially on a multilib system."
- einfo "~10 minutes per lib configuration with only 'standard' tests,"
- einfo "~40 minutes per lib configuration with 'full' tests. Bug #852755"
-
- # https://www.linuxfromscratch.org/blfs/view/svn/postlfs/nss.html
- # https://firefox-source-docs.mozilla.org/security/nss/legacy/nss_sources_building_testing/index.html#running_the_nss_test_suite
- # https://www-archive.mozilla.org/projects/security/pki/nss/testnss_32.html (older)
- export BUILD_OPT=1
- export HOST="localhost"
- export DOMSUF="localdomain"
- export USE_IP=TRUE
- export IP_ADDRESS="127.0.0.1"
-
- # Only run the standard cycle instead of full, reducing testing time from 45 minutes to 15
- # per lib implementation.
- if use test-full ; then
- # export NSS_CYCLES="standard pkix sharedb"
- :;
- else
- export NSS_CYCLES="standard"
- fi
-
- NSINSTALL="${PWD}/$(find -type f -name nsinstall)"
-
- cd "${BUILD_DIR}"/tests || die
- # Hack to get current objdir (prefixed dir where built binaries are)
- # Without this, at least multilib tests go wrong when building the amd64 variant
- # after x86.
- local objdir=$(find "${BUILD_DIR}"/dist -maxdepth 1 -iname Linux* | rev | cut -d/ -f1 | rev)
-
- # Can tweak to a subset of tests in future if we need to, but would prefer not
- OBJDIR="${objdir}" DIST="${BUILD_DIR}/dist" MOZILLA_ROOT="${BUILD_DIR}" ./all.sh || die
-}
-
-# Altering these 3 libraries breaks the CHK verification.
-# All of the following cause it to break:
-# - stripping
-# - prelink
-# - ELF signing
-# http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn6.html
-# Either we have to NOT strip them, or we have to forcibly resign after
-# stripping.
-#local_libdir="$(get_libdir)"
-#export STRIP_MASK="
-# */${local_libdir}/libfreebl3.so*
-# */${local_libdir}/libnssdbm3.so*
-# */${local_libdir}/libsoftokn3.so*"
-
-export NSS_CHK_SIGN_LIBS="freebl3 nssdbm3 softokn3"
-
-generate_chk() {
- local shlibsign="$1"
- local libdir="$2"
- einfo "Resigning core NSS libraries for FIPS validation"
- shift 2
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libname=lib${i}.so
- local chkname=lib${i}.chk
- "${shlibsign}" \
- -i "${libdir}"/${libname} \
- -o "${libdir}"/${chkname}.tmp \
- && mv -f \
- "${libdir}"/${chkname}.tmp \
- "${libdir}"/${chkname} \
- || die "Failed to sign ${libname}"
- done
-}
-
-cleanup_chk() {
- local libdir="$1"
- shift 1
- local i
- for i in ${NSS_CHK_SIGN_LIBS} ; do
- local libfname="${libdir}/lib${i}.so"
- # If the major version has changed, then we have old chk files.
- [ ! -f "${libfname}" -a -f "${libfname}.chk" ] \
- && rm -f "${libfname}.chk"
- done
-}
-
-multilib_src_install() {
- pushd dist >/dev/null || die
-
- dodir /usr/$(get_libdir)
- cp -L */lib/*$(get_libname) "${ED}"/usr/$(get_libdir) || die "copying shared libs failed"
- local i
- for i in crmf freebl nssb nssckfw ; do
- cp -L */lib/lib${i}.a "${ED}"/usr/$(get_libdir) || die "copying libs failed"
- done
-
- # Install nss-config and pkgconfig file
- dodir /usr/bin
- cp -L */bin/nss-config "${ED}"/usr/bin || die
- dodir /usr/$(get_libdir)/pkgconfig
- cp -L */lib/pkgconfig/nss.pc "${ED}"/usr/$(get_libdir)/pkgconfig || die
-
- # create an nss-softokn.pc from nss.pc for libfreebl and some private headers
- # bug 517266
- sed -e 's#Libs:#Libs: -lfreebl#' \
- -e 's#Cflags:#Cflags: -I${includedir}/private#' \
- */lib/pkgconfig/nss.pc >"${ED}"/usr/$(get_libdir)/pkgconfig/nss-softokn.pc \
- || die "could not create nss-softokn.pc"
-
- # all the include files
- insinto /usr/include/nss
- doins public/nss/*.{h,api}
- insinto /usr/include/nss/private
- doins private/nss/{blapi,alghmac,cmac}.h
-
- popd >/dev/null || die
-
- local f nssutils
- # Always enabled because we need it for chk generation.
- nssutils=( shlibsign )
-
- if multilib_is_native_abi ; then
- if use utils; then
- # The tests we do not need to install.
- #nssutils_test="bltest crmftest dbtest dertimetest
- #fipstest remtest sdrtest"
- # checkcert utils has been removed in nss-3.22:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1187545
- # https://hg.mozilla.org/projects/nss/rev/df1729d37870
- # certcgi has been removed in nss-3.36:
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1426602
- nssutils+=(
- addbuiltin
- atob
- baddbdir
- btoa
- certutil
- cmsutil
- conflict
- crlutil
- derdump
- digest
- makepqg
- mangle
- modutil
- multinit
- nonspr10
- ocspclnt
- oidcalc
- p7content
- p7env
- p7sign
- p7verify
- pk11mode
- pk12util
- pp
- rsaperf
- selfserv
- signtool
- signver
- ssltap
- strsclnt
- symkeyutil
- tstclnt
- vfychain
- vfyserv
- )
- # install man-pages for utils (bug #516810)
- doman doc/nroff/*.1
- fi
- pushd dist/*/bin >/dev/null || die
- for f in ${nssutils[@]}; do
- dobin ${f}
- done
- popd >/dev/null || die
- fi
- strip-lto-bytecode
-}
-
-pkg_postinst() {
- if [[ -n "${ROOT}" ]]; then
- elog "You appear to to be installing in a seperate \$ROOT"
- elog "to complete the setup and re-sign libraries please run:"
- elog "emerge --config '=${CATEGORY}/${PF}'"
- else
- sign_libraries
- fi
-}
-
-pkg_config() {
- sign_libraries
-}
-
-sign_libraries() {
- multilib_pkg_postinst() {
- # We must re-sign the libraries AFTER they are stripped.
- local shlibsign="${EROOT}/usr/bin/shlibsign"
- # See if we can execute it (cross-compiling & such). #436216
- "${shlibsign}" -h >&/dev/null
- if [[ $? -gt 1 ]] ; then
- shlibsign="shlibsign"
- fi
- generate_chk "${shlibsign}" "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postinst
-}
-
-pkg_postrm() {
- multilib_pkg_postrm() {
- cleanup_chk "${EROOT}"/usr/$(get_libdir)
- }
-
- multilib_foreach_abi multilib_pkg_postrm
-}
diff --git a/dev-libs/sexpp/Manifest b/dev-libs/sexpp/Manifest
index a97dfc41cbcfc..86fb3282d8d01 100644
--- a/dev-libs/sexpp/Manifest
+++ b/dev-libs/sexpp/Manifest
@@ -1,5 +1,3 @@
-DIST sexpp-0.9.0.tar.gz 71636 BLAKE2B 3e532827265dfc49f8f37f5bf1610d0eb5d12bdf878ddeb89c419831f1f392df164ec933eb55e8b80283d454221893d2c9ab365cccef2306594d19ae95d575f0 SHA512 89728b6900406c9831f0b49842f3ffc687cdef4716b4865c2342031f6afa6801a6d0fafab887f9da58e73a11f8c86a40842522741c17ba38bb0c723a58fe5461
DIST sexpp-0.9.2.tar.gz 71858 BLAKE2B 9a0b06178186b6ee2ea5fd9d2ff80ca1d62ea5e27ba1f99cc01d38f611e1336d672b6130f77d7e149116a1cdad670b0e50c395c25b08af7ab40769ba5f143184 SHA512 a6eddfd495b16366e6fea1834e53839f83b8fdfd7ada59bda3c127849aecefc088ade64c9acd692dabd5e0c871791cafd41861aad9217f1f1925d7b554d3819d
-EBUILD sexpp-0.9.0.ebuild 748 BLAKE2B 42b5e89727badacd402564d6b1b13009a2aaf8bba9cc6a8bae1ab2925da8bf58bf171ac05c55a4d8fb02639f76ceb290ac87fcf2250ab0c0adcb74307f470a2e SHA512 6c3411a07aa29d451b00a19a7f63cfe25eeb0f77245830f64b02e84b31d7006d57d85d8e5247c6ee6af5d49678095386a1cfdd2f28df69a8f859f1705329f847
EBUILD sexpp-0.9.2.ebuild 748 BLAKE2B 42b5e89727badacd402564d6b1b13009a2aaf8bba9cc6a8bae1ab2925da8bf58bf171ac05c55a4d8fb02639f76ceb290ac87fcf2250ab0c0adcb74307f470a2e SHA512 6c3411a07aa29d451b00a19a7f63cfe25eeb0f77245830f64b02e84b31d7006d57d85d8e5247c6ee6af5d49678095386a1cfdd2f28df69a8f859f1705329f847
MISC metadata.xml 416 BLAKE2B 27e50ec619e18e7be4a3bf8cb0e77b3ffd125383022daba849ec49b4d30afedc2e3dfec37f665a3728b30435add3c29170539ba0362f399dbae7dd2bbafa5f74 SHA512 87ab71623c30ee40662a076e59e18afcc3d6a59eff5960111f866c944eaba27ace2e553cb072bb63fa8b9857f348079723d087335236831a1bfbf11841168640
diff --git a/dev-libs/sexpp/sexpp-0.9.0.ebuild b/dev-libs/sexpp/sexpp-0.9.0.ebuild
deleted file mode 100644
index 39f79be37f34a..0000000000000
--- a/dev-libs/sexpp/sexpp-0.9.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2023-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="S-expressions parser and generator library in C++"
-HOMEPAGE="https://github.com/rnpgp/sexpp"
-SRC_URI="https://github.com/rnpgp/sexpp/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~loong ~ppc64 ~x86"
-IUSE="cli test"
-
-BDEPEND="virtual/pkgconfig
- test? ( dev-cpp/gtest )"
-
-RESTRICT="!test? ( test )"
-
-src_configure() {
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=on
-
- -DDOWNLOAD_GTEST=off
-
- -DWITH_ABI_TEST=off
- -DWITH_COVERAGE=off
- -DWITH_SANITIZERS=off
- -DWITH_SEXP_CLI=$(usex cli on off)
- -DWITH_SEXP_TESTS=$(usex test on off)
- )
-
- cmake_src_configure
-}