Submitted By: Xi Ruoyao 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 <&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