NSS
Download Source: | http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_12_4_RTM/src/nss-3.12.4.tar.gz |
---|---|
Download nss-config: | http://cross-lfs.org/~jciccone/nss-3.12-r5-config.in |
Required Patch: | http://svn.cross-lfs.org/svn/repos/patches/nss/nss-3.12.4-fixes-1.patch |
Contents
Introduction to NSS
Network Security Services (NSS) is a set of libraries designed to support cross-platform development of security-enabled client and server applications.
Project Homepage: http://www.mozilla.org/projects/security/pki/nss/
Dependencies
Required
Non-Multilib
Compile the package:
patch -Np0 -i ../nss-3.12.4-fixes-1.patch && sed -i 's@\$(MKSHLIB) -o@\$(MKSHLIB) \$(LDFLAGS) -o@g' mozilla/security/coreconf/rules.mk && for dir in mozilla/security/{coreconf,dbm,nss}; do make -C $dir BUILD_OPT=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \ NSPR_INCLUDE_DIR=$(pkg-config --variable=includedir) \ NSPR_LIB_DIR=$(pkg-config --variable=libdir) || break done
Install the package
install -m755 -d /usr/include/nss3 for file in libsoftokn3.so libfreebl3.so libnss3.so libnssutil3.so libssl3.so libsmime3.so libnssckbi.so libnssdbm3.so; do install -m755 mozilla/dist/*.OBJ/lib/${file} /usr/lib done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib done for file in certutil cmsutil crlutil modutil pk12util signtool signver ssltap; do install -m755 mozilla/dist/*.OBJ/bin/${file} /usr/bin done install -m644 mozilla/dist/public/nss/*.h /usr/include/nss3 && ln -sfv nss3 /usr/include/nss
Create the pkg-config file:
cat > /usr/lib/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF chmod 644 /usr/lib/pkgconfig/nss.pc ln -sfv nss.pc /usr/lib/pkgconfig/mozilla-nss.pc
Create /usr/bin/nss-config:
install -v -m755 ../nss-3.12-r5-config.in /usr/bin/nss-config && sed -i -e "s/@MOD_MAJOR_VERSION@/3/" \ -e "s/@MOD_MINOR_VERSION@/12/" \ -e "s/@MOD_PATCH_VERSION@/3/" \ -e "s/@prefix@/\/usr/" \ /usr/bin/nss-config
Multilib
32Bit
Compile the package:
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" USE_ARCH=32 && patch -Np0 -i ../nss-3.12.4-fixes-1.patch && sed -i 's@\$(MKSHLIB) -o@\$(MKSHLIB) \$(LDFLAGS) -o@g' mozilla/security/coreconf/rules.mk && for dir in mozilla/security/{coreconf,dbm,nss}; do make -C $dir BUILD_OPT=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 CC="gcc ${BUILD32}" \ NSPR_INCLUDE_DIR=$(pkg-config --variable=includedir) \ NSPR_LIB_DIR=$(pkg-config --variable=libdir) || break done unset PKG_CONFIG_PATH USE_ARCH
Install the package
install -m755 -d /usr/include/nss3 for file in libsoftokn3.so libfreebl3.so libnss3.so libnssutil3.so libssl3.so libsmime3.so libnssckbi.so libnssdbm3.so; do install -m755 mozilla/dist/*.OBJ/lib/${file} /usr/lib done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib done for file in certutil cmsutil crlutil modutil pk12util signtool signver ssltap; do install -m755 mozilla/dist/*.OBJ/bin/${file} /usr/bin done install -m644 mozilla/dist/public/nss/*.h /usr/include/nss3 && ln -sfv nss3 /usr/include/nss
Create the pkg-config file:
cat > /usr/lib/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF chmod 644 /usr/lib/pkgconfig/nss.pc ln -sfv nss.pc /usr/lib/pkgconfig/mozilla-nss.pc
Create /usr/bin/nss-config:
install -v -m755 ../nss-3.12-r5-config.in /usr/bin/nss-config-32 && sed -i -e "s/@MOD_MAJOR_VERSION@/3/" \ -e "s/@MOD_MINOR_VERSION@/12/" \ -e "s/@MOD_PATCH_VERSION@/3/" \ -e "s/@prefix@/\/usr/" \ /usr/bin/nss-config-32
N32
Compile the package:
export PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" USE_ARCH=N32 && patch -Np0 -i ../nss-3.12.4-fixes-1.patch && sed -i 's@\$(MKSHLIB) -o@\$(MKSHLIB) \$(LDFLAGS) -o@g' mozilla/security/coreconf/rules.mk && for dir in mozilla/security/{coreconf,dbm,nss}; do make -C $dir BUILD_OPT=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 CC="gcc ${BUILDN32}" \ NSPR_INCLUDE_DIR=$(pkg-config --variable=includedir) \ NSPR_LIB_DIR=$(pkg-config --variable=libdir) || break done unset PKG_CONFIG_PATH USE_ARCH
Install the package
install -m755 -d /usr/include/nss3 for file in libsoftokn3.so libfreebl3.so libnss3.so libnssutil3.so libssl3.so libsmime3.so libnssckbi.so libnssdbm3.so; do install -m755 mozilla/dist/*.OBJ/lib/${file} /usr/lib32 done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib32 done for file in certutil cmsutil crlutil modutil pk12util signtool signver ssltap; do install -m755 mozilla/dist/*.OBJ/bin/${file} /usr/bin done install -m644 mozilla/dist/public/nss/*.h /usr/include/nss3 && ln -sfv nss3 /usr/include/nss
Create the pkg-config file:
cat > /usr/lib32/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib32 includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF chmod 644 /usr/lib32/pkgconfig/nss.pc ln -sfv nss.pc /usr/lib32/pkgconfig/mozilla-nss.pc
Create /usr/bin/nss-config:
install -v -m755 ../nss-3.12-r5-config.in /usr/bin/nss-config-n32 && sed -i -e "s/@MOD_MAJOR_VERSION@/3/" \ -e "s/@MOD_MINOR_VERSION@/12/" \ -e "s/@MOD_PATCH_VERSION@/3/" \ -e "s/@prefix@/\/usr/" \ -e "/libdir=/s/\/lib/&32/" \ /usr/bin/nss-config-n32
64Bit
Compile the package:
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" USE_ARCH=64 && patch -Np0 -i ../nss-3.12.4-fixes-1.patch && sed -i 's@\$(MKSHLIB) -o@\$(MKSHLIB) \$(LDFLAGS) -o@g' mozilla/security/coreconf/rules.mk && for dir in mozilla/security/{coreconf,dbm,nss}; do make -C $dir USE_64=1 BUILD_OPT=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 CC="gcc ${BUILD64}" \ NSPR_INCLUDE_DIR=$(pkg-config --variable=includedir) \ NSPR_LIB_DIR=$(pkg-config --variable=libdir) || break done unset PKG_CONFIG_PATH USE_ARCH
Install the package
install -m755 -d /usr/include/nss3 for file in libsoftokn3.so libfreebl3.so libnss3.so libnssutil3.so libssl3.so libsmime3.so libnssckbi.so libnssdbm3.so; do install -m755 mozilla/dist/*.OBJ/lib/${file} /usr/lib64 done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib64 done for file in certutil cmsutil crlutil modutil pk12util signtool signver ssltap; do install -m755 mozilla/dist/*.OBJ/bin/${file} /usr/bin done install -m644 mozilla/dist/public/nss/*.h /usr/include/nss3 && ln -sfv nss3 /usr/include/nss
Create the pkg-config file:
cat > /usr/lib64/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib64 includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF chmod 644 /usr/lib64/pkgconfig/nss.pc ln -sfv nss.pc /usr/lib64/pkgconfig/mozilla-nss.pc
Create /usr/bin/nss-config:
install -v -m755 ../nss-3.12-r5-config.in /usr/bin/nss-config-64 && sed -i -e "s/@MOD_MAJOR_VERSION@/3/" \ -e "s/@MOD_MINOR_VERSION@/12/" \ -e "s/@MOD_PATCH_VERSION@/3/" \ -e "s/@prefix@/\/usr/" \ -e "/libdir=/s/\/lib/&64/" \ /usr/bin/nss-config-64 && ln -sfv multiarch_wrapper /usr/bin/nss-config
Contents
Installed Programs: | nspr-config and nss-config |
---|---|
Installed Libraries: | libcrmf.a, libfreebl3.so, libnspr4.so, libnss3.so, libnssckbi.so, libplc4.so, libplds4.so, libsmime3.so, libsoftokn3.so and libssl3.so |
Installed Directory: | /usr/include/nspr and /usr/include/nss |
Short Descriptions
nspr-config | is used to determine the NSPR installation settings of the installed NSPR libraries. |
---|---|
nss-config | is used to determine the NSS library settings of the installed NSS libraries. |
The libnspr4.so, libplc4.so and libplds4.so libraries make up the Netscape Portable Runtime (NSPR) libraries. These libraries provide a platform-neutral API for system level and libc like functions. The API is used in the Mozilla client, many of the Netscape/AOL/iPlanet offerings and other software applications.
The libcrmf.a, libfreebl.so, libnss3.so, libnssckbi.so, libsmime3.so, libsoftokn3.so and libnssl3.so libraries make up the NSS libraries.