| From 8e49e1c92dadc2e7a41cad44637f4a224e4f5b39 Mon Sep 17 00:00:00 2001 |
| From: "Jory A. Pratt" <anarchy@gentoo.org> |
| Date: Fri, 28 Jul 2017 14:00:41 -0500 |
| Subject: [PATCH] add pkg-config file |
| |
| Signed-off-by: Jory A. Pratt <anarchy@gentoo.org> |
| --- |
| Makefile | 11 +--- |
| config/Makefile | 40 ++++++++++++++ |
| config/nss-config.in | 145 +++++++++++++++++++++++++++++++++++++++++++++++++++ |
| config/nss.pc.in | 12 +++++ |
| manifest.mn | 2 +- |
| 5 files changed, 199 insertions(+), 11 deletions(-) |
| create mode 100644 config/Makefile |
| create mode 100644 config/nss-config.in |
| create mode 100644 config/nss.pc.in |
| |
| diff --git a/Makefile b/Makefile |
| index 48bae37..9850883 100644 |
| --- a/Makefile |
| +++ b/Makefile |
| @@ -47,7 +47,7 @@ include $(CORE_DEPTH)/coreconf/rules.mk |
| # (7) Execute "local" rules. (OPTIONAL). # |
| ####################################################################### |
| |
| -nss_build_all: build_nspr all latest |
| +nss_build_all: all latest |
| |
| nss_clean_all: clobber_nspr clobber |
| |
| @@ -135,15 +135,6 @@ $(NSPR_CONFIG_STATUS): $(NSPR_CONFIGURE) |
| --prefix='$(NSS_GYP_PREFIX)' |
| endif |
| |
| -build_nspr: $(NSPR_CONFIG_STATUS) |
| - $(MAKE) -C $(CORE_DEPTH)/../nspr/$(OBJDIR_NAME) |
| - |
| -install_nspr: build_nspr |
| - $(MAKE) -C $(CORE_DEPTH)/../nspr/$(OBJDIR_NAME) install |
| - |
| -clobber_nspr: $(NSPR_CONFIG_STATUS) |
| - $(MAKE) -C $(CORE_DEPTH)/../nspr/$(OBJDIR_NAME) clobber |
| - |
| build_docs: |
| $(MAKE) -C $(CORE_DEPTH)/doc |
| |
| diff --git a/config/Makefile b/config/Makefile |
| new file mode 100644 |
| index 0000000..600fe48 |
| --- /dev/null |
| +++ b/config/Makefile |
| @@ -0,0 +1,40 @@ |
| +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}'` |
| +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}/lib64," \ |
| + -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)," \ |
| + nss.pc.in > nss.pc |
| + chmod 0644 nss.pc |
| + ln -sf ../../../../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 ../../../config/nss-config $(DIST)/bin |
| + |
| +libs: |
| + |
| +dummy: all export libs |
| + |
| diff --git a/config/nss-config.in b/config/nss-config.in |
| new file mode 100644 |
| index 0000000..1d7c444 |
| --- /dev/null |
| +++ b/config/nss-config.in |
| @@ -0,0 +1,145 @@ |
| +#!/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 |
| + ssl |
| + smime |
| + nssutil |
| +EOF |
| + exit $1 |
| +} |
| + |
| +if test $# -eq 0; then |
| + usage 1 1>&2 |
| +fi |
| + |
| +lib_ssl=yes |
| +lib_smime=yes |
| +lib_nss=yes |
| +lib_nssutil=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 |
| + ;; |
| + ssl) |
| + lib_ssl=yes |
| + ;; |
| + smime) |
| + lib_smime=yes |
| + ;; |
| + nss) |
| + lib_nss=yes |
| + ;; |
| + nssutil) |
| + lib_nssutil=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="" |
| + if test -n "$lib_ssl"; then |
| + libdirs="$libdirs -lssl${major_version}" |
| + fi |
| + if test -n "$lib_smime"; then |
| + libdirs="$libdirs -lsmime${major_version}" |
| + fi |
| + if test -n "$lib_nss"; then |
| + libdirs="$libdirs -lnss${major_version}" |
| + fi |
| + if test -n "$lib_nssutil"; then |
| + libdirs="$libdirs -lnssutil${major_version}" |
| + fi |
| + echo $libdirs |
| +fi |
| + |
| diff --git a/config/nss.pc.in b/config/nss.pc.in |
| new file mode 100644 |
| index 0000000..df9e2cf |
| --- /dev/null |
| +++ b/config/nss.pc.in |
| @@ -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 >= 4.8 |
| +Libs: -lssl3 -lsmime3 -lnss3 -lnssutil3 |
| +Cflags: -I${includedir} |
| + |
| diff --git a/manifest.mn b/manifest.mn |
| index 500a5ad..87c905e 100644 |
| --- a/manifest.mn |
| +++ b/manifest.mn |
| @@ -10,4 +10,4 @@ IMPORTS = nspr20/v4.8 \ |
| |
| RELEASE = nss |
| |
| -DIRS = coreconf lib cmd cpputil gtests |
| +DIRS = coreconf lib cmd cpputil config |
| -- |
| 2.13.3 |
| |