Difference between revisions of "NSS"
(→64Bit) |
|||
Line 210: | Line 210: | ||
sed -i 's@\$(MKSHLIB) -o@\$(MKSHLIB) \$(LDFLAGS) -o@g' mozilla/security/coreconf/rules.mk && | sed -i 's@\$(MKSHLIB) -o@\$(MKSHLIB) \$(LDFLAGS) -o@g' mozilla/security/coreconf/rules.mk && | ||
for dir in mozilla/security/{coreconf,dbm,nss}; do | for dir in mozilla/security/{coreconf,dbm,nss}; do | ||
− | make -C $dir | + | make -C $dir USE_64=1 BUILD_OPT=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 CC="gcc ${BUILD64}" \ |
LDFLAGS="-Wl,-rpath,/usr/lib64/nss -Wl,-rpath,/usr/lib64/nspr" \ | LDFLAGS="-Wl,-rpath,/usr/lib64/nss -Wl,-rpath,/usr/lib64/nspr" \ | ||
NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's@-I@@') \ | NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's@-I@@') \ |
Revision as of 08:21, 12 September 2009
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
Project Homepage: Unknown
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 \ LDFLAGS="-Wl,-rpath,/usr/lib/nss -Wl,-rpath,/usr/lib/nspr" \ NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's@-I@@') \ NSPR_LIB_DIR=$(pkg-config --libs-only-L nspr | sed 's@-L@@') || break done
Install the package
install -m755 -d /usr/include/nss install -m755 -d /usr/lib/nss 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/nss done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib/nss 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/nss/
Create the pkg-config file:
cat > /usr/lib/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib/nss includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -Wl,-rpath,${libdir} -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF ln -sfv nss.pc /usr/lib/pkgconfig/mozilla-nss.pc chmod 644 /usr/lib/pkgconfig/*.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}" \ LDFLAGS="-Wl,-rpath,/usr/lib/nss -Wl,-rpath,/usr/lib/nspr" \ NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's@-I@@') \ NSPR_LIB_DIR=$(pkg-config --libs-only-L nspr | sed 's@-L@@') || break done unset PKG_CONFIG_PATH USE_ARCH
Install the package
install -m755 -d /usr/include/nss install -m755 -d /usr/lib/nss 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/nss done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib/nss 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/nss/
Create the pkg-config file:
cat > /usr/lib/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib/nss includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -Wl,-rpath,${libdir} -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF ln -sfv nss.pc /usr/lib/pkgconfig/mozilla-nss.pc chmod 644 /usr/lib/pkgconfig/*.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}" \ LDFLAGS="-Wl,-rpath,/usr/lib32/nss -Wl,-rpath,/usr/lib32/nspr" \ NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's@-I@@') \ NSPR_LIB_DIR=$(pkg-config --libs-only-L nspr | sed 's@-L@@') || break done unset PKG_CONFIG_PATH USE_ARCH
Install the package
install -m755 -d /usr/include/nss install -m755 -d /usr/lib32/nss 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/nss done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib32/nss 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/nss/
Create the pkg-config file:
cat > /usr/lib32/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib32/nss includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -Wl,-rpath,${libdir} -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF ln -sfv nss.pc /usr/lib32/pkgconfig/mozilla-nss.pc chmod 644 /usr/lib32/pkgconfig/*.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}" \ LDFLAGS="-Wl,-rpath,/usr/lib64/nss -Wl,-rpath,/usr/lib64/nspr" \ NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's@-I@@') \ NSPR_LIB_DIR=$(pkg-config --libs-only-L nspr | sed 's@-L@@') || break done unset PKG_CONFIG_PATH USE_ARCH
Install the package
install -m755 -d /usr/include/nss install -m755 -d /usr/lib64/nss 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/nss done for file in libcrmf.a libnssb.a libnssckfw.a; do install -m644 mozilla/dist/*.OBJ/lib/${file} /usr/lib64/nss 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/nss/
Create the pkg-config file:
cat > /usr/lib64/pkgconfig/nss.pc << "EOF" prefix=/usr exec_prefix=/usr/bin libdir=/usr/lib64/nss includedir=/usr/include/nss Name: NSS Description: Network Security Services Version: 3.12.4 Requires: sqlite3 nspr >= 4.9.4 Libs: -Wl,-rpath,${libdir} -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 Cflags: -I${includedir} EOF ln -sfv nss.pc /usr/lib64/pkgconfig/mozilla-nss.pc chmod 644 /usr/lib64/pkgconfig/*.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.