aboutsummaryrefslogtreecommitdiff
path: root/nss
diff options
context:
space:
mode:
authorWoodpecker CI <emmett1.2miligrams@protonmail.com>2025-06-03 14:32:36 +0000
committerWoodpecker CI <emmett1.2miligrams@protonmail.com>2025-06-03 14:32:36 +0000
commit93a354611e38a6949add5c2e5ccc93ef79b9755f (patch)
tree7fee41752b1047d74c59f8ee046cd62735e7e934 /nss
parent35912580b66e9439f91ea441938828ad8aa33b0d (diff)
downloadalicelinux-93a354611e38a6949add5c2e5ccc93ef79b9755f.tar.gz
alicelinux-93a354611e38a6949add5c2e5ccc93ef79b9755f.zip
Woodpecker CI 5171f1fdd74e7137c305450dd69a29fa5be4143f [SKIP CI]
Diffstat (limited to 'nss')
-rw-r--r--nss/.checksum5
-rw-r--r--nss/.files284
-rw-r--r--nss/abuild37
-rw-r--r--nss/clang-ias.patch207
-rw-r--r--nss/depends1
-rw-r--r--nss/native-nsinstall-cflags.patch10
-rw-r--r--nss/nss-3.92-standalone-1.patch266
-rw-r--r--nss/respect-ldflags.patch11
8 files changed, 821 insertions, 0 deletions
diff --git a/nss/.checksum b/nss/.checksum
new file mode 100644
index 00000000..f64ec029
--- /dev/null
+++ b/nss/.checksum
@@ -0,0 +1,5 @@
+c18020d6abe44ba040323663614767fcacb9a3c9dd249877c1deea76deb8adca clang-ias.patch
+eed65c57ec9da12513745bf6d039bf17459f75bd6fa1645aae7e9bcdcade0619 native-nsinstall-cflags.patch
+be3691c6dfcca770306d1de37af04a38958e5aa3fa42ff3c478417c547dde07e nss-3.111.tar.gz
+08ab7f772b7f7d4ab1ead564b54398c19e74f62394d811a2c8df327176505de7 nss-3.92-standalone-1.patch
+19cf08686ecb10f8f51052c9168f7b3bb1bf3489465ccfe840b8d5b9837a86d5 respect-ldflags.patch
diff --git a/nss/.files b/nss/.files
new file mode 100644
index 00000000..eb82e796
--- /dev/null
+++ b/nss/.files
@@ -0,0 +1,284 @@
+drwxr-xr-x root/root usr/
+drwxr-xr-x root/root usr/bin/
+-rwxr-xr-x root/root usr/bin/certutil
+-rwxr-xr-x root/root usr/bin/nss-config
+-rwxr-xr-x root/root usr/bin/pk12util
+drwxr-xr-x root/root usr/include/
+drwxr-xr-x root/root usr/include/nss/
+-rw-r--r-- root/root usr/include/nss/alghmac.h
+-rw-r--r-- root/root usr/include/nss/base.h
+-rw-r--r-- root/root usr/include/nss/base64.h
+-rw-r--r-- root/root usr/include/nss/baset.h
+-rw-r--r-- root/root usr/include/nss/basicutil.h
+-rw-r--r-- root/root usr/include/nss/blake2b.h
+-rw-r--r-- root/root usr/include/nss/blapi.h
+-rw-r--r-- root/root usr/include/nss/blapit.h
+-rw-r--r-- root/root usr/include/nss/cert.h
+-rw-r--r-- root/root usr/include/nss/certdb.h
+-rw-r--r-- root/root usr/include/nss/certi.h
+-rw-r--r-- root/root usr/include/nss/certt.h
+-rw-r--r-- root/root usr/include/nss/certxutl.h
+-rw-r--r-- root/root usr/include/nss/chacha20poly1305.h
+-rw-r--r-- root/root usr/include/nss/ciferfam.h
+-rw-r--r-- root/root usr/include/nss/ck.h
+-rw-r--r-- root/root usr/include/nss/ckfw.h
+-rw-r--r-- root/root usr/include/nss/ckfwm.h
+-rw-r--r-- root/root usr/include/nss/ckfwtm.h
+-rw-r--r-- root/root usr/include/nss/ckhelper.h
+-rw-r--r-- root/root usr/include/nss/ckmd.h
+-rw-r--r-- root/root usr/include/nss/ckt.h
+-rw-r--r-- root/root usr/include/nss/cmac.h
+-rw-r--r-- root/root usr/include/nss/cmmf.h
+-rw-r--r-- root/root usr/include/nss/cmmfi.h
+-rw-r--r-- root/root usr/include/nss/cmmfit.h
+-rw-r--r-- root/root usr/include/nss/cmmft.h
+-rw-r--r-- root/root usr/include/nss/cms.h
+-rw-r--r-- root/root usr/include/nss/cmslocal.h
+-rw-r--r-- root/root usr/include/nss/cmsreclist.h
+-rw-r--r-- root/root usr/include/nss/cmst.h
+-rw-r--r-- root/root usr/include/nss/crmf.h
+-rw-r--r-- root/root usr/include/nss/crmfi.h
+-rw-r--r-- root/root usr/include/nss/crmfit.h
+-rw-r--r-- root/root usr/include/nss/crmft.h
+-rw-r--r-- root/root usr/include/nss/cryptohi.h
+-rw-r--r-- root/root usr/include/nss/cryptoht.h
+-rw-r--r-- root/root usr/include/nss/dev.h
+-rw-r--r-- root/root usr/include/nss/dev3hack.h
+-rw-r--r-- root/root usr/include/nss/devm.h
+-rw-r--r-- root/root usr/include/nss/devt.h
+-rw-r--r-- root/root usr/include/nss/devtm.h
+-rw-r--r-- root/root usr/include/nss/ec.h
+-rw-r--r-- root/root usr/include/nss/eccutil.h
+-rw-r--r-- root/root usr/include/nss/ecl-curve.h
+-rw-r--r-- root/root usr/include/nss/ecl-exp.h
+-rw-r--r-- root/root usr/include/nss/ecl.h
+-rw-r--r-- root/root usr/include/nss/eclt.h
+-rw-r--r-- root/root usr/include/nss/genname.h
+-rw-r--r-- root/root usr/include/nss/hasht.h
+-rw-r--r-- root/root usr/include/nss/hmacct.h
+-rw-r--r-- root/root usr/include/nss/jar-ds.h
+-rw-r--r-- root/root usr/include/nss/jar.h
+-rw-r--r-- root/root usr/include/nss/jarfile.h
+-rw-r--r-- root/root usr/include/nss/key.h
+-rw-r--r-- root/root usr/include/nss/keyhi.h
+-rw-r--r-- root/root usr/include/nss/keyi.h
+-rw-r--r-- root/root usr/include/nss/keyt.h
+-rw-r--r-- root/root usr/include/nss/keythi.h
+-rw-r--r-- root/root usr/include/nss/kyber.h
+-rw-r--r-- root/root usr/include/nss/lgglue.h
+-rw-r--r-- root/root usr/include/nss/lowkeyi.h
+-rw-r--r-- root/root usr/include/nss/lowkeyti.h
+-rw-r--r-- root/root usr/include/nss/nss.h
+-rw-r--r-- root/root usr/include/nss/nssb64.h
+-rw-r--r-- root/root usr/include/nss/nssb64t.h
+-rw-r--r-- root/root usr/include/nss/nssbase.h
+-rw-r--r-- root/root usr/include/nss/nssbaset.h
+-rw-r--r-- root/root usr/include/nss/nssck.api
+-rw-r--r-- root/root usr/include/nss/nssckbi.h
+-rw-r--r-- root/root usr/include/nss/nssckepv.h
+-rw-r--r-- root/root usr/include/nss/nssckft.h
+-rw-r--r-- root/root usr/include/nss/nssckfw.h
+-rw-r--r-- root/root usr/include/nss/nssckfwc.h
+-rw-r--r-- root/root usr/include/nss/nssckfwt.h
+-rw-r--r-- root/root usr/include/nss/nssckg.h
+-rw-r--r-- root/root usr/include/nss/nssckmdt.h
+-rw-r--r-- root/root usr/include/nss/nssckt.h
+-rw-r--r-- root/root usr/include/nss/nssdev.h
+-rw-r--r-- root/root usr/include/nss/nssdevt.h
+-rw-r--r-- root/root usr/include/nss/nsshash.h
+-rw-r--r-- root/root usr/include/nss/nssilckt.h
+-rw-r--r-- root/root usr/include/nss/nssilock.h
+-rw-r--r-- root/root usr/include/nss/nsslocks.h
+-rw-r--r-- root/root usr/include/nss/nsslowhash.h
+-rw-r--r-- root/root usr/include/nss/nssoptions.h
+-rw-r--r-- root/root usr/include/nss/nsspki.h
+-rw-r--r-- root/root usr/include/nss/nsspkit.h
+-rw-r--r-- root/root usr/include/nss/nssrenam.h
+-rw-r--r-- root/root usr/include/nss/nssrwlk.h
+-rw-r--r-- root/root usr/include/nss/nssrwlkt.h
+-rw-r--r-- root/root usr/include/nss/nssutil.h
+-rw-r--r-- root/root usr/include/nss/ocsp.h
+-rw-r--r-- root/root usr/include/nss/ocspi.h
+-rw-r--r-- root/root usr/include/nss/ocspt.h
+-rw-r--r-- root/root usr/include/nss/ocspti.h
+-rw-r--r-- root/root usr/include/nss/p12.h
+-rw-r--r-- root/root usr/include/nss/p12plcy.h
+-rw-r--r-- root/root usr/include/nss/p12t.h
+-rw-r--r-- root/root usr/include/nss/p7local.h
+-rw-r--r-- root/root usr/include/nss/pk11func.h
+-rw-r--r-- root/root usr/include/nss/pk11hpke.h
+-rw-r--r-- root/root usr/include/nss/pk11pqg.h
+-rw-r--r-- root/root usr/include/nss/pk11priv.h
+-rw-r--r-- root/root usr/include/nss/pk11pub.h
+-rw-r--r-- root/root usr/include/nss/pk11sdr.h
+-rw-r--r-- root/root usr/include/nss/pk11table.h
+-rw-r--r-- root/root usr/include/nss/pkcs11.h
+-rw-r--r-- root/root usr/include/nss/pkcs11f.h
+-rw-r--r-- root/root usr/include/nss/pkcs11n.h
+-rw-r--r-- root/root usr/include/nss/pkcs11ni.h
+-rw-r--r-- root/root usr/include/nss/pkcs11p.h
+-rw-r--r-- root/root usr/include/nss/pkcs11t.h
+-rw-r--r-- root/root usr/include/nss/pkcs11u.h
+-rw-r--r-- root/root usr/include/nss/pkcs11uri.h
+-rw-r--r-- root/root usr/include/nss/pkcs12.h
+-rw-r--r-- root/root usr/include/nss/pkcs12t.h
+-rw-r--r-- root/root usr/include/nss/pkcs1sig.h
+-rw-r--r-- root/root usr/include/nss/pkcs7t.h
+-rw-r--r-- root/root usr/include/nss/pki.h
+-rw-r--r-- root/root usr/include/nss/pki3hack.h
+-rw-r--r-- root/root usr/include/nss/pkim.h
+-rw-r--r-- root/root usr/include/nss/pkistore.h
+-rw-r--r-- root/root usr/include/nss/pkit.h
+-rw-r--r-- root/root usr/include/nss/pkitm.h
+-rw-r--r-- root/root usr/include/nss/pkix.h
+-rw-r--r-- root/root usr/include/nss/pkix_basicconstraintschecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_build.h
+-rw-r--r-- root/root usr/include/nss/pkix_buildresult.h
+-rw-r--r-- root/root usr/include/nss/pkix_certchainchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_certsel.h
+-rw-r--r-- root/root usr/include/nss/pkix_certselector.h
+-rw-r--r-- root/root usr/include/nss/pkix_certstore.h
+-rw-r--r-- root/root usr/include/nss/pkix_checker.h
+-rw-r--r-- root/root usr/include/nss/pkix_comcertselparams.h
+-rw-r--r-- root/root usr/include/nss/pkix_comcrlselparams.h
+-rw-r--r-- root/root usr/include/nss/pkix_crlchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_crlsel.h
+-rw-r--r-- root/root usr/include/nss/pkix_crlselector.h
+-rw-r--r-- root/root usr/include/nss/pkix_ekuchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_error.h
+-rw-r--r-- root/root usr/include/nss/pkix_errorstrings.h
+-rw-r--r-- root/root usr/include/nss/pkix_expirationchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_lifecycle.h
+-rw-r--r-- root/root usr/include/nss/pkix_list.h
+-rw-r--r-- root/root usr/include/nss/pkix_logger.h
+-rw-r--r-- root/root usr/include/nss/pkix_namechainingchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_nameconstraintschecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_ocspchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_params.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_aiamgr.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_basicconstraints.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_bigint.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_bytearray.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_cert.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_certpolicyinfo.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_certpolicymap.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_certpolicyqualifier.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_colcertstore.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_common.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_crl.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_crldp.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_crlentry.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_date.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_generalname.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_hashtable.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_httpcertstore.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_httpdefaultclient.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_infoaccess.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ldapcertstore.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ldapdefaultclient.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ldaprequest.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ldapresponse.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ldapt.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_lifecycle.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_mem.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_monitorlock.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_mutex.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_nameconstraints.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_nsscontext.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_object.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ocspcertid.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ocsprequest.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_ocspresponse.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_oid.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_pk11certstore.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_pki.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_primhash.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_publickey.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_rwlock.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_socket.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_string.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_system.h
+-rw-r--r-- root/root usr/include/nss/pkix_pl_x500name.h
+-rw-r--r-- root/root usr/include/nss/pkix_policychecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_policynode.h
+-rw-r--r-- root/root usr/include/nss/pkix_procparams.h
+-rw-r--r-- root/root usr/include/nss/pkix_resourcelimits.h
+-rw-r--r-- root/root usr/include/nss/pkix_results.h
+-rw-r--r-- root/root usr/include/nss/pkix_revchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_revocationchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_revocationmethod.h
+-rw-r--r-- root/root usr/include/nss/pkix_sample_modules.h
+-rw-r--r-- root/root usr/include/nss/pkix_signaturechecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_store.h
+-rw-r--r-- root/root usr/include/nss/pkix_targetcertchecker.h
+-rw-r--r-- root/root usr/include/nss/pkix_tools.h
+-rw-r--r-- root/root usr/include/nss/pkix_trustanchor.h
+-rw-r--r-- root/root usr/include/nss/pkix_util.h
+-rw-r--r-- root/root usr/include/nss/pkix_validate.h
+-rw-r--r-- root/root usr/include/nss/pkix_valparams.h
+-rw-r--r-- root/root usr/include/nss/pkix_valresult.h
+-rw-r--r-- root/root usr/include/nss/pkix_verifynode.h
+-rw-r--r-- root/root usr/include/nss/pkixt.h
+-rw-r--r-- root/root usr/include/nss/portreg.h
+-rw-r--r-- root/root usr/include/nss/preenc.h
+-rw-r--r-- root/root usr/include/nss/sdb.h
+-rw-r--r-- root/root usr/include/nss/secasn1.h
+-rw-r--r-- root/root usr/include/nss/secasn1t.h
+-rw-r--r-- root/root usr/include/nss/seccomon.h
+-rw-r--r-- root/root usr/include/nss/secder.h
+-rw-r--r-- root/root usr/include/nss/secdert.h
+-rw-r--r-- root/root usr/include/nss/secdig.h
+-rw-r--r-- root/root usr/include/nss/secdigt.h
+-rw-r--r-- root/root usr/include/nss/secerr.h
+-rw-r--r-- root/root usr/include/nss/sechash.h
+-rw-r--r-- root/root usr/include/nss/secitem.h
+-rw-r--r-- root/root usr/include/nss/secmime.h
+-rw-r--r-- root/root usr/include/nss/secmod.h
+-rw-r--r-- root/root usr/include/nss/secmodi.h
+-rw-r--r-- root/root usr/include/nss/secmodt.h
+-rw-r--r-- root/root usr/include/nss/secmodti.h
+-rw-r--r-- root/root usr/include/nss/secmpi.h
+-rw-r--r-- root/root usr/include/nss/secoid.h
+-rw-r--r-- root/root usr/include/nss/secoidt.h
+-rw-r--r-- root/root usr/include/nss/secpkcs5.h
+-rw-r--r-- root/root usr/include/nss/secpkcs7.h
+-rw-r--r-- root/root usr/include/nss/secport.h
+-rw-r--r-- root/root usr/include/nss/secrng.h
+-rw-r--r-- root/root usr/include/nss/secutil.h
+-rw-r--r-- root/root usr/include/nss/sftkdbt.h
+-rw-r--r-- root/root usr/include/nss/shsign.h
+-rw-r--r-- root/root usr/include/nss/smime.h
+-rw-r--r-- root/root usr/include/nss/softkver.h
+-rw-r--r-- root/root usr/include/nss/softoken.h
+-rw-r--r-- root/root usr/include/nss/softoknt.h
+-rw-r--r-- root/root usr/include/nss/ssl.h
+-rw-r--r-- root/root usr/include/nss/sslerr.h
+-rw-r--r-- root/root usr/include/nss/sslexp.h
+-rw-r--r-- root/root usr/include/nss/sslproto.h
+-rw-r--r-- root/root usr/include/nss/sslt.h
+-rw-r--r-- root/root usr/include/nss/templates.c
+-rw-r--r-- root/root usr/include/nss/utilmodt.h
+-rw-r--r-- root/root usr/include/nss/utilpars.h
+-rw-r--r-- root/root usr/include/nss/utilparst.h
+-rw-r--r-- root/root usr/include/nss/utilrename.h
+-rw-r--r-- root/root usr/include/nss/verref.h
+-rw-r--r-- root/root usr/include/nss/xconst.h
+drwxr-xr-x root/root usr/lib/
+-rw-r--r-- root/root usr/lib/libfreebl3.chk
+-rwxr-xr-x root/root usr/lib/libfreebl3.so
+-rw-r--r-- root/root usr/lib/libfreeblpriv3.chk
+-rwxr-xr-x root/root usr/lib/libfreeblpriv3.so
+-rwxr-xr-x root/root usr/lib/libnss3.so
+-rwxr-xr-x root/root usr/lib/libnssckbi-testlib.so
+-rwxr-xr-x root/root usr/lib/libnssckbi.so
+-rw-r--r-- root/root usr/lib/libnssdbm3.chk
+-rwxr-xr-x root/root usr/lib/libnssdbm3.so
+-rwxr-xr-x root/root usr/lib/libnsssysinit.so
+-rwxr-xr-x root/root usr/lib/libnssutil3.so
+-rwxr-xr-x root/root usr/lib/libpkcs11testmodule.so
+-rwxr-xr-x root/root usr/lib/libsmime3.so
+-rw-r--r-- root/root usr/lib/libsoftokn3.chk
+-rwxr-xr-x root/root usr/lib/libsoftokn3.so
+-rwxr-xr-x root/root usr/lib/libssl3.so
+drwxr-xr-x root/root usr/lib/pkgconfig/
+-rw-r--r-- root/root usr/lib/pkgconfig/nss.pc
diff --git a/nss/abuild b/nss/abuild
new file mode 100644
index 00000000..584654ae
--- /dev/null
+++ b/nss/abuild
@@ -0,0 +1,37 @@
+name=nss
+version=3.111
+_version=$(echo $version | sed 's/\./_/g')
+release=1
+source="https://archive.mozilla.org/pub/security/nss/releases/NSS_${_version}_RTM/src/nss-$version.tar.gz
+ clang-ias.patch
+ native-nsinstall-cflags.patch
+ nss-3.92-standalone-1.patch
+ respect-ldflags.patch"
+
+build() {
+ cd nss
+ make BUILD_OPT=1 \
+ NSPR_INCLUDE_DIR=/usr/include/nspr \
+ USE_SYSTEM_ZLIB=1 \
+ ZLIB_LIBS=-lz \
+ NSS_ENABLE_WERROR=0 \
+ USE_64=1 \
+ NSS_USE_SYSTEM_SQLITE=1
+
+ cd ../dist
+
+ mkdir -p $PKG/usr/lib $PKG/usr/bin $PKG/usr/lib/pkgconfig
+ install -v -m755 Linux*/lib/*.so $PKG/usr/lib
+ install -v -m644 Linux*/lib/*.chk $PKG/usr/lib
+ install -v -m644 Linux*/lib/libcrmf.a $PKG/usr/lib
+
+ install -v -m755 -d $PKG/usr/include/nss
+ cp -v -RL public/nss/* $PKG/usr/include/nss
+ cp -v -RL private/nss/* $PKG/usr/include/nss
+
+ install -v -m755 Linux*/bin/certutil $PKG/usr/bin
+ install -v -m755 Linux*/bin/nss-config $PKG/usr/bin
+ install -v -m755 Linux*/bin/pk12util $PKG/usr/bin
+
+ install -v -m644 Linux*/lib/pkgconfig/nss.pc $PKG/usr/lib/pkgconfig
+}
diff --git a/nss/clang-ias.patch b/nss/clang-ias.patch
new file mode 100644
index 00000000..4aa5837c
--- /dev/null
+++ b/nss/clang-ias.patch
@@ -0,0 +1,207 @@
+diff --git a/nss/lib/freebl/Makefile b/nss/lib/freebl/Makefile
+index 7673357..1d2fe12 100644
+--- a/nss/lib/freebl/Makefile
++++ b/nss/lib/freebl/Makefile
+@@ -746,15 +746,6 @@ ifdef INTEL_GCM
+ # GCM binary needs -mssse3
+ #
+ $(OBJDIR)/$(PROG_PREFIX)intel-gcm-wrap$(OBJ_SUFFIX): CFLAGS += -mssse3
+-
+-# The integrated assembler in Clang 3.2 does not support % in the
+-# expression of a .set directive. intel-gcm.s uses .set to give
+-# symbolic names to registers, for example,
+-# .set Htbl, %rdi
+-# So we can't use Clang's integrated assembler with intel-gcm.s.
+-ifdef CC_IS_CLANG
+-$(OBJDIR)/$(PROG_PREFIX)intel-gcm$(OBJ_SUFFIX): CFLAGS += -no-integrated-as
+-endif
+ endif
+
+ ifdef INTEL_GCM_CLANG_CL
+diff --git a/nss/lib/freebl/ppc-gcm.s b/nss/lib/freebl/ppc-gcm.s
+index 06ad586..471c502 100644
+--- a/nss/lib/freebl/ppc-gcm.s
++++ b/nss/lib/freebl/ppc-gcm.s
+@@ -4,9 +4,6 @@
+
+ # Registers:
+
+-.set SP, 1
+-.set TOCP, 2
+-
+ .macro VEC_LOAD_DATA VR, DATA, GPR
+ addis \GPR, 2, \DATA@got@ha
+ ld \GPR, \DATA@got@l(\GPR)
+@@ -90,8 +87,8 @@
+ .type ppc_aes_gcmINIT,@function
+ .align 5
+ ppc_aes_gcmINIT:
+-addis TOCP,12,(.TOC.-ppc_aes_gcmINIT)@ha
+-addi TOCP,TOCP,(.TOC.-ppc_aes_gcmINIT)@l
++addis %r2,12,(.TOC.-ppc_aes_gcmINIT)@ha
++addi %r2,%r2,(.TOC.-ppc_aes_gcmINIT)@l
+ .localentry ppc_aes_gcmINIT, .-ppc_aes_gcmINIT
+
+ .set Htbl, 3
+@@ -255,8 +252,8 @@ addi TOCP,TOCP,(.TOC.-ppc_aes_gcmINIT)@l
+ .type ppc_aes_gcmHASH,@function
+ .align 5
+ ppc_aes_gcmHASH:
+-addis TOCP,12,(.TOC.-ppc_aes_gcmHASH)@ha
+-addi TOCP,TOCP,(.TOC.-ppc_aes_gcmHASH)@l
++addis %r2,12,(.TOC.-ppc_aes_gcmHASH)@ha
++addi %r2,%r2,(.TOC.-ppc_aes_gcmHASH)@l
+ .localentry ppc_aes_gcmHASH, .-ppc_aes_gcmHASH
+
+ .set Htbl, 3
+@@ -290,13 +287,13 @@ addi TOCP,TOCP,(.TOC.-ppc_aes_gcmHASH)@l
+ .set H4L, 31
+
+ # store non-volatile vector registers
+- addi 7, SP, -16
++ addi 7, %r1, -16
+ stvx 31, 0, 7
+- addi 7, SP, -32
++ addi 7, %r1, -32
+ stvx 30, 0, 7
+- addi 7, SP, -48
++ addi 7, %r1, -48
+ stvx 29, 0, 7
+- addi 7, SP, -64
++ addi 7, %r1, -64
+ stvx 28, 0, 7
+
+ VEC_LOAD_DATA SWAP_MASK, .Ldb_bswap_mask, 7
+@@ -482,13 +479,13 @@ addi TOCP,TOCP,(.TOC.-ppc_aes_gcmHASH)@l
+ VEC_STORE D, Tp, 0
+
+ # restore non-volatile vector registers
+- addi 7, SP, -16
++ addi 7, %r1, -16
+ lvx 31, 0, 7
+- addi 7, SP, -32
++ addi 7, %r1, -32
+ lvx 30, 0, 7
+- addi 7, SP, -48
++ addi 7, %r1, -48
+ lvx 29, 0, 7
+- addi 7, SP, -64
++ addi 7, %r1, -64
+ lvx 28, 0, 7
+ blr
+ .size ppc_aes_gcmHASH, . - ppc_aes_gcmHASH
+@@ -500,8 +497,8 @@ addi TOCP,TOCP,(.TOC.-ppc_aes_gcmHASH)@l
+ .type ppc_aes_gcmTAG,@function
+ .align 5
+ ppc_aes_gcmTAG:
+-addis TOCP,12,(.TOC.-ppc_aes_gcmTAG)@ha
+-addi TOCP,TOCP,(.TOC.-ppc_aes_gcmTAG)@l
++addis %r2,12,(.TOC.-ppc_aes_gcmTAG)@ha
++addi %r2,%r2,(.TOC.-ppc_aes_gcmTAG)@l
+ .localentry ppc_aes_gcmTAG, .-ppc_aes_gcmTAG
+
+ .set Htbl, 3
+@@ -567,8 +564,8 @@ addi TOCP,TOCP,(.TOC.-ppc_aes_gcmTAG)@l
+ .type ppc_aes_gcmCRYPT,@function
+ .align 5
+ ppc_aes_gcmCRYPT:
+-addis TOCP,12,(.TOC.-ppc_aes_gcmCRYPT)@ha
+-addi TOCP,TOCP,(.TOC.-ppc_aes_gcmCRYPT)@l
++addis %r2,12,(.TOC.-ppc_aes_gcmCRYPT)@ha
++addi %r2,%r2,(.TOC.-ppc_aes_gcmCRYPT)@l
+ .localentry ppc_aes_gcmCRYPT, .-ppc_aes_gcmCRYPT
+
+ .set PT, 3
+@@ -639,30 +636,30 @@ addi TOCP,TOCP,(.TOC.-ppc_aes_gcmCRYPT)@l
+ .endm
+
+ # store non-volatile general registers
+- std 31,-8(SP);
+- std 30,-16(SP);
+- std 29,-24(SP);
+- std 28,-32(SP);
+- std 27,-40(SP);
+- std 26,-48(SP);
+- std 25,-56(SP);
++ std 31,-8(%r1);
++ std 30,-16(%r1);
++ std 29,-24(%r1);
++ std 28,-32(%r1);
++ std 27,-40(%r1);
++ std 26,-48(%r1);
++ std 25,-56(%r1);
+
+ # store non-volatile vector registers
+- addi 9, SP, -80
++ addi 9, %r1, -80
+ stvx 31, 0, 9
+- addi 9, SP, -96
++ addi 9, %r1, -96
+ stvx 30, 0, 9
+- addi 9, SP, -112
++ addi 9, %r1, -112
+ stvx 29, 0, 9
+- addi 9, SP, -128
++ addi 9, %r1, -128
+ stvx 28, 0, 9
+- addi 9, SP, -144
++ addi 9, %r1, -144
+ stvx 27, 0, 9
+- addi 9, SP, -160
++ addi 9, %r1, -160
+ stvx 26, 0, 9
+- addi 9, SP, -176
++ addi 9, %r1, -176
+ stvx 25, 0, 9
+- addi 9, SP, -192
++ addi 9, %r1, -192
+ stvx 24, 0, 9
+
+ VEC_LOAD_DATA SWAP_MASK, .Ldb_bswap_mask, 9
+@@ -1013,31 +1010,31 @@ addi TOCP,TOCP,(.TOC.-ppc_aes_gcmCRYPT)@l
+ VEC_STORE CTR, CTRP, 0
+
+ # restore non-volatile vector registers
+- addi 9, SP, -80
++ addi 9, %r1, -80
+ lvx 31, 0, 9
+- addi 9, SP, -96
++ addi 9, %r1, -96
+ lvx 30, 0, 9
+- addi 9, SP, -112
++ addi 9, %r1, -112
+ lvx 29, 0, 9
+- addi 9, SP, -128
++ addi 9, %r1, -128
+ lvx 28, 0, 9
+- addi 9, SP, -144
++ addi 9, %r1, -144
+ lvx 27, 0, 9
+- addi 9, SP, -160
++ addi 9, %r1, -160
+ lvx 26, 0, 9
+- addi 9, SP, -176
++ addi 9, %r1, -176
+ lvx 25, 0, 9
+- addi 9, SP, -192
++ addi 9, %r1, -192
+ lvx 24, 0, 9
+
+ # restore non-volatile general registers
+- ld 31,-8(SP);
+- ld 30,-16(SP);
+- ld 29,-24(SP);
+- ld 28,-32(SP);
+- ld 27,-40(SP);
+- ld 26,-48(SP);
+- ld 25,-56(SP);
++ ld 31,-8(%r1);
++ ld 30,-16(%r1);
++ ld 29,-24(%r1);
++ ld 28,-32(%r1);
++ ld 27,-40(%r1);
++ ld 26,-48(%r1);
++ ld 25,-56(%r1);
+ blr
+ .size ppc_aes_gcmCRYPT, . - ppc_aes_gcmCRYPT
+
diff --git a/nss/depends b/nss/depends
new file mode 100644
index 00000000..d6f7c608
--- /dev/null
+++ b/nss/depends
@@ -0,0 +1 @@
+nspr
diff --git a/nss/native-nsinstall-cflags.patch b/nss/native-nsinstall-cflags.patch
new file mode 100644
index 00000000..249d281b
--- /dev/null
+++ b/nss/native-nsinstall-cflags.patch
@@ -0,0 +1,10 @@
+--- nss-3.80.orig/nss/coreconf/nsinstall/Makefile
++++ nss-3.80/nss/coreconf/nsinstall/Makefile
+@@ -32,6 +32,7 @@ endif
+
+ ifdef NATIVE_FLAGS
+ OS_CFLAGS=$(NATIVE_FLAGS)
++XCFLAGS = $(NATIVE_FLAGS)
+ endif
+
+ ifdef NATIVE_LDFLAGS
diff --git a/nss/nss-3.92-standalone-1.patch b/nss/nss-3.92-standalone-1.patch
new file mode 100644
index 00000000..009184f6
--- /dev/null
+++ b/nss/nss-3.92-standalone-1.patch
@@ -0,0 +1,266 @@
+Submitted By: Xi Ruoyao <xry111_AT_mengyan1223_DOT_wang>
+Date: 2020-08-22
+Initial Package Version: 3.12.4
+Upstream Status: Not applicable
+Origin: Self, adjusted for nss-3.56.
+Description: Adds auto-generated nss.pc and nss-config script, and
+ allows building without nspr in the source tree.
+ Minimum NSPR version is now read out from package,
+ instead of hardcoded value in the patch.
+
+diff --color -uNar nss-3.55.orig/nss/config/Makefile nss-3.55/nss/config/Makefile
+--- nss-3.55.orig/nss/config/Makefile 1970-01-01 08:00:00.000000000 +0800
++++ nss-3.55/nss/config/Makefile 2020-07-25 19:34:36.272982957 +0800
+@@ -0,0 +1,42 @@
++CORE_DEPTH = ..
++DEPTH = ..
++
++include $(CORE_DEPTH)/coreconf/config.mk
++
++NSS_MAJOR_VERSION = `grep "NSS_VMAJOR" ../lib/nss/nss.h | awk '{print $$3}'`
++NSS_MINOR_VERSION = `grep "NSS_VMINOR" ../lib/nss/nss.h | awk '{print $$3}'`
++NSS_PATCH_VERSION = `grep "NSS_VPATCH" ../lib/nss/nss.h | awk '{print $$3}'`
++NSS_NSPR_MINIMUM = `head -n1 ../automation/release/nspr-version.txt`
++PREFIX = /usr
++
++all: export libs
++
++export:
++ # Create the nss.pc file
++ mkdir -p $(DIST)/lib/pkgconfig
++ sed -e "s,@prefix@,$(PREFIX)," \
++ -e "s,@exec_prefix@,\$${prefix}," \
++ -e "s,@libdir@,\$${prefix}/lib," \
++ -e "s,@includedir@,\$${prefix}/include/nss," \
++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION),g" \
++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \
++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \
++ -e "s,@NSS_NSPR_MINIMUM@,$(NSS_NSPR_MINIMUM)," \
++ nss.pc.in > nss.pc
++ chmod 0644 nss.pc
++ ln -sf ../../../../nss/config/nss.pc $(DIST)/lib/pkgconfig
++
++ # Create the nss-config script
++ mkdir -p $(DIST)/bin
++ sed -e "s,@prefix@,$(PREFIX)," \
++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION)," \
++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \
++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \
++ nss-config.in > nss-config
++ chmod 0755 nss-config
++ ln -sf ../../../nss/config/nss-config $(DIST)/bin
++
++libs:
++
++dummy: all export libs
++
+diff --color -uNar nss-3.55.orig/nss/config/nss-config.in nss-3.55/nss/config/nss-config.in
+--- nss-3.55.orig/nss/config/nss-config.in 1970-01-01 08:00:00.000000000 +0800
++++ nss-3.55/nss/config/nss-config.in 2020-07-25 19:32:37.239032214 +0800
+@@ -0,0 +1,153 @@
++#!/bin/sh
++
++prefix=@prefix@
++
++major_version=@NSS_MAJOR_VERSION@
++minor_version=@NSS_MINOR_VERSION@
++patch_version=@NSS_PATCH_VERSION@
++
++usage()
++{
++ cat <<EOF
++Usage: nss-config [OPTIONS] [LIBRARIES]
++Options:
++ [--prefix[=DIR]]
++ [--exec-prefix[=DIR]]
++ [--includedir[=DIR]]
++ [--libdir[=DIR]]
++ [--version]
++ [--libs]
++ [--cflags]
++Dynamic Libraries:
++ nss
++ nssutil
++ smime
++ ssl
++ softokn
++EOF
++ exit $1
++}
++
++if test $# -eq 0; then
++ usage 1 1>&2
++fi
++
++lib_nss=yes
++lib_nssutil=yes
++lib_smime=yes
++lib_ssl=yes
++lib_softokn=yes
++
++while test $# -gt 0; do
++ case "$1" in
++ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
++ *) optarg= ;;
++ esac
++
++ case $1 in
++ --prefix=*)
++ prefix=$optarg
++ ;;
++ --prefix)
++ echo_prefix=yes
++ ;;
++ --exec-prefix=*)
++ exec_prefix=$optarg
++ ;;
++ --exec-prefix)
++ echo_exec_prefix=yes
++ ;;
++ --includedir=*)
++ includedir=$optarg
++ ;;
++ --includedir)
++ echo_includedir=yes
++ ;;
++ --libdir=*)
++ libdir=$optarg
++ ;;
++ --libdir)
++ echo_libdir=yes
++ ;;
++ --version)
++ echo ${major_version}.${minor_version}.${patch_version}
++ ;;
++ --cflags)
++ echo_cflags=yes
++ ;;
++ --libs)
++ echo_libs=yes
++ ;;
++ nss)
++ lib_nss=yes
++ ;;
++ nssutil)
++ lib_nssutil=yes
++ ;;
++ smime)
++ lib_smime=yes
++ ;;
++ ssl)
++ lib_ssl=yes
++ ;;
++ softokn)
++ lib_softokn=yes
++ ;;
++ *)
++ usage 1 1>&2
++ ;;
++ esac
++ shift
++done
++
++# Set variables that may be dependent upon other variables
++if test -z "$exec_prefix"; then
++ exec_prefix=`pkg-config --variable=exec_prefix nss`
++fi
++if test -z "$includedir"; then
++ includedir=`pkg-config --variable=includedir nss`
++fi
++if test -z "$libdir"; then
++ libdir=`pkg-config --variable=libdir nss`
++fi
++
++if test "$echo_prefix" = "yes"; then
++ echo $prefix
++fi
++
++if test "$echo_exec_prefix" = "yes"; then
++ echo $exec_prefix
++fi
++
++if test "$echo_includedir" = "yes"; then
++ echo $includedir
++fi
++
++if test "$echo_libdir" = "yes"; then
++ echo $libdir
++fi
++
++if test "$echo_cflags" = "yes"; then
++ echo -I$includedir
++fi
++
++if test "$echo_libs" = "yes"; then
++ libdirs="-L$libdir"
++ if test -n "$lib_nss"; then
++ libdirs="$libdirs -lnss${major_version}"
++ fi
++ if test -n "$lib_nssutil"; then
++ libdirs="$libdirs -lnssutil${major_version}"
++ fi
++ if test -n "$lib_smime"; then
++ libdirs="$libdirs -lsmime${major_version}"
++ fi
++ if test -n "$lib_ssl"; then
++ libdirs="$libdirs -lssl${major_version}"
++ fi
++ if test -n "$lib_softokn"; then
++ libdirs="$libdirs -lsoftokn${major_version}"
++ fi
++ echo $libdirs
++fi
++
+diff --color -uNar nss-3.55.orig/nss/config/nss.pc.in nss-3.55/nss/config/nss.pc.in
+--- nss-3.55.orig/nss/config/nss.pc.in 1970-01-01 08:00:00.000000000 +0800
++++ nss-3.55/nss/config/nss.pc.in 2020-07-25 19:33:05.958889937 +0800
+@@ -0,0 +1,12 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
++Name: NSS
++Description: Network Security Services
++Version: @NSS_MAJOR_VERSION@.@NSS_MINOR_VERSION@.@NSS_PATCH_VERSION@
++Requires: nspr >= @NSS_NSPR_MINIMUM@
++Libs: -L@libdir@ -lnss@NSS_MAJOR_VERSION@ -lnssutil@NSS_MAJOR_VERSION@ -lsmime@NSS_MAJOR_VERSION@ -lssl@NSS_MAJOR_VERSION@ -lsoftokn@NSS_MAJOR_VERSION@
++Cflags: -I${includedir}
++
+diff --color -uNar nss-3.55.orig/nss/Makefile nss-3.55/nss/Makefile
+--- nss-3.55.orig/nss/Makefile 2020-07-24 23:10:32.000000000 +0800
++++ nss-3.55/nss/Makefile 2020-07-25 19:32:37.239032214 +0800
+@@ -4,6 +4,8 @@
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
++default: nss_build_all
++
+ #######################################################################
+ # (1) Include initial platform-independent assignments (MANDATORY). #
+ #######################################################################
+@@ -48,12 +50,10 @@
+ #######################################################################
+
+ nss_build_all:
+- $(MAKE) build_nspr
+ $(MAKE) all
+ $(MAKE) latest
+
+ nss_clean_all:
+- $(MAKE) clobber_nspr
+ $(MAKE) clobber
+
+ NSPR_CONFIG_STATUS = $(CORE_DEPTH)/../nspr/$(OBJDIR_NAME)/config.status
+diff --color -uNar nss-3.55.orig/nss/manifest.mn nss-3.55/nss/manifest.mn
+--- nss-3.55.orig/nss/manifest.mn 2020-07-24 23:10:32.000000000 +0800
++++ nss-3.55/nss/manifest.mn 2020-07-25 19:32:37.240032237 +0800
+@@ -10,7 +10,7 @@
+
+ RELEASE = nss
+
+-DIRS = coreconf lib cmd cpputil gtests
++DIRS = coreconf lib cmd cpputil gtests config
+
+ lib: coreconf
+ cmd: lib
diff --git a/nss/respect-ldflags.patch b/nss/respect-ldflags.patch
new file mode 100644
index 00000000..f1e17e80
--- /dev/null
+++ b/nss/respect-ldflags.patch
@@ -0,0 +1,11 @@
+--- nss-3.67.orig/nss/coreconf/rules.mk
++++ nss-3.67/nss/coreconf/rules.mk
+@@ -223,7 +223,7 @@ ifdef MT
+ endif # MSVC with manifest tool
+ endif
+ else
+- $(MKSHLIB) -o $@ $(OBJS) $(SUB_SHLOBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
++ $(MKSHLIB) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(SUB_SHLOBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
+ chmod +x $@
+ endif
+ endif