Difference between revisions of "NSS"

From CBLFS
Jump to navigationJump to search
(I added the package description from BLFS.)
(I added the "Contents" secton from BLFS.)
Line 189: Line 189:
 
  sed -i "s:/lib:&64:g" /usr/bin/nss-config-64 &&
 
  sed -i "s:/lib:&64:g" /usr/bin/nss-config-64 &&
 
  ln -sfv multiarch_wrapper /usr/bin/nss-config
 
  ln -sfv multiarch_wrapper /usr/bin/nss-config
 +
 +
= Contents =
 +
 +
{| style="text-align: left;"
 +
|-
 +
! 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 ===
 +
 +
{| style="text-align: left;"
 +
|-
 +
! 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.

Revision as of 18:21, 7 December 2006

Download Source: http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_11_3_RTM/src/nss-3.11.3.tar.gz
Download nss-config: http://www.cross-lfs.org/~jciccone/nss-config

Introduction to NSS

The Network Security Services (NSS) package is a set of libraries designed to support cross-platform development of security-enabled client and server applications. Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security standards. This is useful for implementing SSL and S/MIME or other Internet security standards into an application.

Dependencies

Required

Non-Multilib

NOTE: someone check if we should be including more shlibs in the .pc file

Compile the package (NOTE: for pure64 builds add 'USE_64=1' to the make line):

export WORKINGDIR=$PWD &&
echo 'INCLUDES += -I/usr/include/nspr' >> mozilla/security/coreconf/headers.mk &&
for dir in $PWD/mozilla/security/{coreconf,dbm,nss}; do
  cd $dir &&
  make BUILD_OPT=1
done

Install the package

export NSS_LINUXDIR=$(basename `dir -d $WORKINGDIR/mozilla/dist/Linux*`) &&
cd $WORKINGDIR/mozilla/dist &&
install -v -m755 $NSS_LINUXDIR/lib/*.so /usr/lib &&
install -v -m644 $NSS_LINUXDIR/lib/*.{chk,a} /usr/lib &&
install -v -d /usr/include/nss &&
install -v -m644 {public,private}/nss/* /usr/include/nss &&
unset NSS_LINUXDIR WORKINGDIR

Create the pkg-config file:

cat > /usr/lib/pkgconfig/nss.pc << "EOF"
prefix=/usr
exec_prefix=/usr
libdir=/usr/lib
includedir=/usr/include/nss

Name: NSS
Description: Network Security Services
Version: 3.11.3
Requires: nspr >= 4.6.3
Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -Wl,-R${libdir}
Cflags: -I${includedir}
EOF

Create /usr/bin/nss-config:

install -v -m755 ../nss-config /usr/bin/nss-config

Multilib

32Bit

Compile the package:

export WORKINGDIR=$PWD &&
echo 'INCLUDES += -I/usr/include/nspr' >> mozilla/security/coreconf/headers.mk &&
for dir in $PWD/mozilla/security/{coreconf,dbm,nss}; do
  cd $dir &&
  make CC="gcc ${BUILD32}" BUILD_OPT=1
done

Install the package

export NSS_LINUXDIR=$(basename `dir -d $WORKINGDIR/mozilla/dist/Linux*`) &&
cd $WORKINGDIR/mozilla/dist &&
install -v -m755 $NSS_LINUXDIR/lib/*.so /usr/lib &&
install -v -m644 $NSS_LINUXDIR/lib/*.{chk,a} /usr/lib &&
install -v -d /usr/include/nss &&
install -v -m644 {public,private}/nss/* /usr/include/nss &&
unset NSS_LINUXDIR WORKINGDIR

Create the pkg-config file:

cat > /usr/lib/pkgconfig/nss.pc << "EOF"
prefix=/usr
exec_prefix=/usr
libdir=/usr/lib
includedir=/usr/include/nss

Name: NSS
Description: Network Security Services
Version: 3.11.3
Requires: nspr >= 4.6.3
Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -Wl,-R${libdir}
Cflags: -I${includedir}
EOF

Create /usr/bin/nss-config:

install -v -m755 ../nss-config /usr/bin/nss-config-32

N32

Compile the package:

export WORKINGDIR=$PWD &&
echo 'INCLUDES += -I/usr/include/nspr' >> mozilla/security/coreconf/headers.mk &&
for dir in $PWD/mozilla/security/{coreconf,dbm,nss}; do
  cd $dir &&
  make CC="gcc ${BUILDN32}" BUILD_OPT=1
done

Install the package

export NSS_LINUXDIR=$(basename `dir -d $WORKINGDIR/mozilla/dist/Linux*`) &&
cd $WORKINGDIR/mozilla/dist &&
install -v -m755 $NSS_LINUXDIR/lib/*.so /usr/lib32 &&
install -v -m644 $NSS_LINUXDIR/lib/*.{chk,a} /usr/lib32 &&
install -v -d /usr/include/nss &&
install -v -m644 {public,private}/nss/* /usr/include/nss &&
unset NSS_LINUXDIR WORKINGDIR

Create the pkg-config file:

cat > /usr/lib32/pkgconfig/nss.pc << "EOF"
prefix=/usr
exec_prefix=/usr
libdir=/usr/lib32
includedir=/usr/include/nss

Name: NSS
Description: Network Security Services
Version: 3.11.3
Requires: nspr >= 4.6.3
Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -Wl,-R${libdir}
Cflags: -I${includedir}
EOF

Create /usr/bin/nss-config:

install -v -m755 ../nss-config /usr/bin/nss-config-n32 &&
sed -i "s:/lib:&32:g" /usr/bin/nss-config-n32

64Bit

Compile the package:

export WORKINGDIR=$PWD &&
echo 'INCLUDES += -I/usr/include/nspr' >> mozilla/security/coreconf/headers.mk &&
for dir in $PWD/mozilla/security/{coreconf,dbm,nss}; do
  cd $dir &&
  make CC="gcc ${BUILD64}" USE_64=1 BUILD_OPT=1
done

Install the package

export NSS_LINUXDIR=$(basename `dir -d $WORKINGDIR/mozilla/dist/Linux*`) &&
cd $WORKINGDIR/mozilla/dist &&
install -v -m755 $NSS_LINUXDIR/lib/*.so /usr/lib64 &&
install -v -m644 $NSS_LINUXDIR/lib/*.{chk,a} /usr/lib64 &&
install -v -d /usr/include/nss &&
install -v -m644 {public,private}/nss/* /usr/include/nss &&
unset NSS_LINUXDIR WORKINGDIR

Create the pkg-config file:

cat > /usr/lib64/pkgconfig/nss.pc << "EOF"
prefix=/usr
exec_prefix=/usr
libdir=/usr/lib64
includedir=/usr/include/nss

Name: NSS
Description: Network Security Services
Version: 3.11.3
Requires: nspr >= 4.6.3
Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -Wl,-R${libdir}
Cflags: -I${includedir}
EOF

Create /usr/bin/nss-config:

install -v -m755 ../nss-config /usr/bin/nss-config-64 &&
sed -i "s:/lib:&64:g" /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.