Initial Commit
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
name: nss
|
||||
description: Network Security Services
|
||||
version: 3.110
|
||||
url: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS
|
||||
license: MPL2
|
||||
architecture: any
|
||||
depends: ["glibc","nspr","p11-kit","sqlite","zlib"]
|
||||
make_depends: ["perl","python3"]
|
||||
type: source
|
||||
@@ -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
|
||||
@@ -0,0 +1,47 @@
|
||||
# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package
|
||||
# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE
|
||||
# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT
|
||||
|
||||
DOWNLOAD="https://archive.mozilla.org/pub/security/nss/releases/NSS_${BPM_PKG_VERSION/./_}_RTM/src/nss-${BPM_PKG_VERSION}.tar.gz"
|
||||
FILENAME="${DOWNLOAD##*/}"
|
||||
|
||||
# The prepare function is executed in the root of the temp directory
|
||||
# This function is used for downloading files and putting them into the correct location
|
||||
prepare() {
|
||||
wget "$DOWNLOAD"
|
||||
tar -xvf "$FILENAME" --strip-components=1 -C "$BPM_SOURCE"
|
||||
|
||||
cd "$BPM_SOURCE"
|
||||
# Patch from Beyond Linux from Scratch
|
||||
patch -Np1 -i ../nss.patch
|
||||
}
|
||||
|
||||
# The build function is executed in the source directory
|
||||
# This function is used to compile the source code
|
||||
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
|
||||
}
|
||||
|
||||
# The check function is executed in the source directory
|
||||
# This function is used to run tests to verify the package has been compiled correctly
|
||||
check() {
|
||||
cd nss/tests
|
||||
HOST=localhost DOMSUF=localdomain ./all.sh
|
||||
}
|
||||
|
||||
# The package function is executed in the source directory
|
||||
# This function is used to move the compiled files into the output directory
|
||||
package() {
|
||||
cd dist
|
||||
|
||||
install -dm755 "$BPM_OUTPUT"/usr/{lib/pkgconfig,bin,include/nss}
|
||||
install -Dm755 Linux*/lib/*.so "$BPM_OUTPUT"/usr/lib
|
||||
install -Dm644 Linux*/lib/{*.chk,libcrmf.a} "$BPM_OUTPUT"/usr/lib
|
||||
cp -v -RL {public,private}/nss/* "$BPM_OUTPUT"/usr/include/nss
|
||||
install -Dm755 Linux*/bin/{certutil,nss-config,pk12util} "$BPM_OUTPUT"/usr/bin
|
||||
install -Dm644 Linux*/lib/pkgconfig/nss.pc "$BPM_OUTPUT"/usr/lib/pkgconfig
|
||||
|
||||
ln -sf pkcs11/p11-kit-trust.so "$BPM_OUTPUT"/usr/lib/p11-kit-trust.so
|
||||
ln -sf p11-kit-trust.so "$BPM_OUTPUT"/usr/lib/libnssckbi.so
|
||||
}
|
||||
Reference in New Issue
Block a user