New NSS feature in Glibc's libcrypt

Robert Connolly robert at linuxfromscratch.org
Sun Jan 10 22:13:25 PST 2010


Before installing Glibc, NSS can be installed like this first.

I don't really like this idea of installing a minimal NSS and linking libcrypt 
to it, but there isn't much choice. I would be happier if Glibc's libcrypt 
was retested after NSS is completely reinstalled. There is also a problem 
with the linking to libgcc.so, which should be a static link so we remove the 
dependency on /usr/lib.

Install to /tools if you prefer. It should also work. Do this from a native 
toolchain, in the chroot.

tar xf nss-3.12.5.tar.gz
cd nss-3.12.5/
tar xf ../nspr-4.8.2.tar.gz
mv -v nspr-4.8.2/mozilla/nsprpub/ mozilla/
rmdir -v nspr-4.8.2/mozilla/
rmdir -v nspr-4.8.2/

# Remove --enable-64bit for 32bit:
cd mozilla/nsprpub/
./configure --disable-debug --disable-ipv6 --enable-64bit
make

# Remove USE_64=1 for 32bit:
cd ../security/
for dir in {coreconf,dbm,nss}; do
    make -C $dir BUILD_OPT=1 FREEBL_NO_DEPEND=1 \
      NSPR_INCLUDE_DIR=$(pwd)/../nsprpub/dist/include/nspr/ \
      NSPR_LIB_DIR=$(pwd)/../nsprpub/dist/lib/ USE_64=1 || break
done

# The Glibc test suite expects "$includedir/nss3":
install -v -m755 -d /usr/include/nss3/
install -v -m644 ./nss/lib/freebl/{hasht.h,nsslowhash.h} /usr/include/nss3

install -v -m755 ./nss/lib/freebl/*.OBJ/Linux_SINGLE_SHLIB/libfreebl3.so /lib
# We need this file, or else segfault:
install -v -m644 ./nss/lib/freebl/*.OBJ/Linux_SINGLE_SHLIB/libfreebl3.chk /lib
# GCC is linking to /tools/lib, so we need this symlink for ./configure:
ln -vs /lib/libfreebl3.so /tools/lib/libfreebl3.so

# Glibc:
sed -i.orig \
	's at nss_includes=.*@nss_includes=-I/usr/include/nss3@' configure{,.in}
sed -i.orig \
	's at -I$(shell nss-config --includedir)@-I/usr/include/nss3@' crypt/Makefile

Add --enable-nss-crypt

# GCC:

# libfreebl3.so depends on libgcc_s.so.1, so it should be installed to /lib.
# I haven't figured out where NSS links to libgcc_s.so, to use the static
# library instead.

robert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.linuxfromscratch.org/pipermail/hlfs-dev/attachments/20100111/bb0b072d/attachment.sig>


More information about the hlfs-dev mailing list