Difference between revisions of "NSPR"

From CBLFS
Jump to navigationJump to search
 
(7 intermediate revisions by 2 users not shown)
Line 7: Line 7:
 
----
 
----
  
{{Blank-Package-Introduction}}
+
{{Package-Introduction|Netscape Portable Runtime (NSPR) provides a platform-neutral API for system level and libc like functions. The API is used in the Mozilla clients and many of Red Hat's, Sun's, and other software offerings.|http://www.mozilla.org/projects/nspr/}}
  
 
== Dependencies ==
 
== Dependencies ==
Line 24: Line 24:
 
Compile the package:
 
Compile the package:
  
LDFLAGS="-Wl,-rpath,/usr/lib/nspr" \
 
 
  ../mozilla/nsprpub/configure --prefix=/usr \
 
  ../mozilla/nsprpub/configure --prefix=/usr \
   --libdir=/usr/lib/nspr --infodir=/usr/share/info --mandir=/usr/share/man \
+
   --libdir=/usr/lib --infodir=/usr/share/info --mandir=/usr/share/man \
   --disable-debug --disable-ipv6 --enable-system-sqlite
+
   --disable-debug --disable-ipv6 --enable-system-sqlite &&
 
  make
 
  make
  
Line 33: Line 32:
  
 
  make install &&
 
  make install &&
  chmod 644 /usr/lib/nspr/*.a &&
+
  chmod 644 /usr/lib/lib{nspr4,plc4,plds4}.a &&
  rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
+
  rm -fv /usr/bin/{compile-et.pl,prerr.properties}
rm -fv /usr/share/aclocal/nspr.m4 &&
 
rm -rfv /usr/include/nspr/md
 
  
 
Create the pkg-config file:
 
Create the pkg-config file:
Line 43: Line 40:
 
  prefix=/usr
 
  prefix=/usr
 
  exec_prefix=/usr/bin
 
  exec_prefix=/usr/bin
  libdir=/usr/lib/nspr
+
  libdir=/usr/lib
 
  includedir=/usr/include/nspr
 
  includedir=/usr/include/nspr
 
   
 
   
Line 52: Line 49:
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  EOF
 
  EOF
+
 
  NSPR_LIBS=$(./config/nspr-config --libs)
+
  sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
NSPR_CFLAGS=$(./config/nspr-config --cflags)
+
        -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
NSPR_VERSION=$(./config/nspr-config --version)
+
        -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
+
     /usr/lib/pkgconfig/nspr.pc
sed -i -e "s,%NSPR_VERSION%,${NSPR_VERSION}," \
+
 
     -e "s,%FULL_NSPR_LIBS%,${NSPR_LIBS}," \
 
    -e "s,%FULL_NSPR_CFLAGS%,${NSPR_CFLAGS}," /usr/lib/pkgconfig/nspr.pc
 
 
 
 
  chmod 644 /usr/lib/pkgconfig/nspr.pc
 
  chmod 644 /usr/lib/pkgconfig/nspr.pc
 
  ln -sf nspr.pc /usr/lib/pkgconfig/mozilla-nspr.pc
 
  ln -sf nspr.pc /usr/lib/pkgconfig/mozilla-nspr.pc
Line 75: Line 69:
 
Compile the package:
 
Compile the package:
  
LDFLAGS="-Wl,-rpath,/usr/lib/nspr" \
 
 
  CC="gcc ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" USE_ARCH=32 \
 
  CC="gcc ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" USE_ARCH=32 \
 
  ../mozilla/nsprpub/configure --prefix=/usr \
 
  ../mozilla/nsprpub/configure --prefix=/usr \
   --libdir=/usr/lib/nspr --infodir=/usr/share/info --mandir=/usr/share/man \
+
   --libdir=/usr/lib --infodir=/usr/share/info --mandir=/usr/share/man \
 
   --disable-debug --disable-ipv6 --enable-system-sqlite &&
 
   --disable-debug --disable-ipv6 --enable-system-sqlite &&
 
  make
 
  make
Line 85: Line 78:
  
 
  make install &&
 
  make install &&
  chmod 644 /usr/lib/nspr/*.a &&
+
  chmod 644 /usr/lib/lib{nspr4,plc4,plds4}.a &&
 
  rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
 
  rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
rm -fv /usr/share/aclocal/nspr.m4 &&
 
rm -rfv /usr/include/nspr/md &&
 
 
  mv -v /usr/bin/nspr-config{,-32}
 
  mv -v /usr/bin/nspr-config{,-32}
  
Line 96: Line 87:
 
  prefix=/usr
 
  prefix=/usr
 
  exec_prefix=/usr/bin
 
  exec_prefix=/usr/bin
  libdir=/usr/lib/nspr
+
  libdir=/usr/lib
 
  includedir=/usr/include/nspr
 
  includedir=/usr/include/nspr
 
   
 
   
Line 105: Line 96:
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  EOF
 
  EOF
+
 
  NSPR_LIBS=$(./config/nspr-config --libs)
+
  sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
NSPR_CFLAGS=$(./config/nspr-config --cflags)
+
        -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
NSPR_VERSION=$(./config/nspr-config --version)
+
        -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
+
     /usr/lib/pkgconfig/nspr.pc
sed -i -e "s,%NSPR_VERSION%,${NSPR_VERSION}," \
+
 
     -e "s,%FULL_NSPR_LIBS%,${NSPR_LIBS}," \
 
    -e "s,%FULL_NSPR_CFLAGS%,${NSPR_CFLAGS}," /usr/lib/pkgconfig/nspr.pc
 
 
 
 
  chmod 644 /usr/lib/pkgconfig/nspr.pc
 
  chmod 644 /usr/lib/pkgconfig/nspr.pc
 
  ln -sf nspr.pc /usr/lib/pkgconfig/mozilla-nspr.pc
 
  ln -sf nspr.pc /usr/lib/pkgconfig/mozilla-nspr.pc
Line 126: Line 114:
 
Compile the package:
 
Compile the package:
  
LDFLAGS="-Wl,-rpath,/usr/lib32/nspr" \
 
 
  CC="gcc ${BUILDN32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" USE_ARCH=N32 \
 
  CC="gcc ${BUILDN32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" USE_ARCH=N32 \
 
  ../mozilla/nsprpub/configure --prefix=/usr \
 
  ../mozilla/nsprpub/configure --prefix=/usr \
   --libdir=/usr/lib32/nspr --infodir=/usr/share/info --mandir=/usr/share/man \
+
   --libdir=/usr/lib32 --infodir=/usr/share/info --mandir=/usr/share/man \
 
   --disable-debug --disable-ipv6 --enable-system-sqlite &&
 
   --disable-debug --disable-ipv6 --enable-system-sqlite &&
 
  make
 
  make
Line 136: Line 123:
  
 
  make install &&
 
  make install &&
  chmod 644 /usr/lib32/nspr/*.a &&
+
  chmod 644 /usr/lib32/lib{nspr4,plc4,plds4}.a &&
 
  rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
 
  rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
rm -fv /usr/share/aclocal/nspr.m4 &&
 
rm -rfv /usr/include/nspr/md &&
 
 
  mv -v /usr/bin/nspr-config{,-n32}
 
  mv -v /usr/bin/nspr-config{,-n32}
  
Line 147: Line 132:
 
  prefix=/usr
 
  prefix=/usr
 
  exec_prefix=/usr/bin
 
  exec_prefix=/usr/bin
  libdir=/usr/lib32/nspr
+
  libdir=/usr/lib32
 
  includedir=/usr/include/nspr
 
  includedir=/usr/include/nspr
 
   
 
   
Line 156: Line 141:
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  EOF
 
  EOF
+
 
  NSPR_LIBS=$(./config/nspr-config --libs)
+
  sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
NSPR_CFLAGS=$(./config/nspr-config --cflags)
+
        -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
NSPR_VERSION=$(./config/nspr-config --version)
+
        -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
+
     /usr/lib32/pkgconfig/nspr.pc
sed -i -e "s,%NSPR_VERSION%,${NSPR_VERSION}," \
+
 
     -e "s,%FULL_NSPR_LIBS%,${NSPR_LIBS}," \
 
    -e "s,%FULL_NSPR_CFLAGS%,${NSPR_CFLAGS}," /usr/lib32/pkgconfig/nspr.pc
 
 
 
 
  chmod 644 /usr/lib32/pkgconfig/nspr.pc
 
  chmod 644 /usr/lib32/pkgconfig/nspr.pc
 
  ln -sf nspr.pc /usr/lib32/pkgconfig/mozilla-nspr.pc
 
  ln -sf nspr.pc /usr/lib32/pkgconfig/mozilla-nspr.pc
Line 177: Line 159:
 
Compile the package:
 
Compile the package:
  
LDFLAGS="-Wl,-rpath,/usr/lib64/nspr" \
 
 
  CC="gcc ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" USE_ARCH=64 \
 
  CC="gcc ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" USE_ARCH=64 \
 
  ../mozilla/nsprpub/configure --prefix=/usr \
 
  ../mozilla/nsprpub/configure --prefix=/usr \
   --libdir=/usr/lib64/nspr --infodir=/usr/share/info --mandir=/usr/share/man \
+
   --libdir=/usr/lib64 --infodir=/usr/share/info --mandir=/usr/share/man \
 
   --disable-debug --disable-ipv6 --enable-system-sqlite --enable-64bit &&
 
   --disable-debug --disable-ipv6 --enable-system-sqlite --enable-64bit &&
 
  make
 
  make
Line 187: Line 168:
  
 
  make install &&
 
  make install &&
  chmod 644 /usr/lib64/nspr/*.a &&
+
  chmod 644 /usr/lib64/lib{nspr4,plc4,plds4}.a &&
 
  rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
 
  rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
rm -fv /usr/share/aclocal/nspr.m4 &&
 
rm -rfv /usr/include/nspr/md &&
 
 
  mv -v /usr/bin/nspr-config{,-64} &&
 
  mv -v /usr/bin/nspr-config{,-64} &&
 
  ln -sfv multiarch_wrapper /usr/bin/nspr-config
 
  ln -sfv multiarch_wrapper /usr/bin/nspr-config
Line 199: Line 178:
 
  prefix=/usr
 
  prefix=/usr
 
  exec_prefix=/usr/bin
 
  exec_prefix=/usr/bin
  libdir=/usr/lib64/nspr
+
  libdir=/usr/lib64
 
  includedir=/usr/include/nspr
 
  includedir=/usr/include/nspr
 
   
 
   
Line 208: Line 187:
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  Cflags: %FULL_NSPR_CFLAGS%
 
  EOF
 
  EOF
+
 
  NSPR_LIBS=$(./config/nspr-config --libs)
+
  sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
NSPR_CFLAGS=$(./config/nspr-config --cflags)
+
        -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
NSPR_VERSION=$(./config/nspr-config --version)
+
        -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
+
     /usr/lib64/pkgconfig/nspr.pc
sed -i -e "s,%NSPR_VERSION%,${NSPR_VERSION}," \
+
 
     -e "s,%FULL_NSPR_LIBS%,${NSPR_LIBS}," \
 
    -e "s,%FULL_NSPR_CFLAGS%,${NSPR_CFLAGS}," /usr/lib64/pkgconfig/nspr.pc
 
 
 
 
  chmod 644 /usr/lib64/pkgconfig/nspr.pc
 
  chmod 644 /usr/lib64/pkgconfig/nspr.pc
 
  ln -sf nspr.pc /usr/lib64/pkgconfig/mozilla-nspr.pc
 
  ln -sf nspr.pc /usr/lib64/pkgconfig/mozilla-nspr.pc
 
   
 
   
 
[[Category:Security]]
 
[[Category:Security]]

Latest revision as of 18:34, 1 January 2010

Download Source: http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.9.4/src/nspr-4.9.4.tar.gz

Introduction to NSPR

Netscape Portable Runtime (NSPR) provides a platform-neutral API for system level and libc like functions. The API is used in the Mozilla clients and many of Red Hat's, Sun's, and other software offerings.

Project Homepage: http://www.mozilla.org/projects/nspr/

Dependencies

Non-Multilib

Create a build directory:

mkdir -v build &&
cd build

If building on pure64 (x86_64 at least perhaps others) add this to the configure line below:

--enable-64bit

Compile the package:

../mozilla/nsprpub/configure --prefix=/usr \
 --libdir=/usr/lib --infodir=/usr/share/info --mandir=/usr/share/man \
 --disable-debug --disable-ipv6 --enable-system-sqlite &&
make

Install the package

make install &&
chmod 644 /usr/lib/lib{nspr4,plc4,plds4}.a &&
rm -fv /usr/bin/{compile-et.pl,prerr.properties}

Create the pkg-config file:

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

Name: NSPR
Description: The Netscape Portable Runtime
Version: %NSPR_VERSION%
Libs: %FULL_NSPR_LIBS%
Cflags: %FULL_NSPR_CFLAGS%
EOF
sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
       -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
       -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
    /usr/lib/pkgconfig/nspr.pc
chmod 644 /usr/lib/pkgconfig/nspr.pc
ln -sf nspr.pc /usr/lib/pkgconfig/mozilla-nspr.pc

Multilib

32Bit

Create a build directory:

mkdir -v build &&
cd build

Compile the package:

CC="gcc ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" USE_ARCH=32 \
../mozilla/nsprpub/configure --prefix=/usr \
 --libdir=/usr/lib --infodir=/usr/share/info --mandir=/usr/share/man \
 --disable-debug --disable-ipv6 --enable-system-sqlite &&
make

Install the package

make install &&
chmod 644 /usr/lib/lib{nspr4,plc4,plds4}.a &&
rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
mv -v /usr/bin/nspr-config{,-32}

Create the pkg-config file:

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

Name: NSPR
Description: The Netscape Portable Runtime
Version: %NSPR_VERSION%
Libs: %FULL_NSPR_LIBS%
Cflags: %FULL_NSPR_CFLAGS%
EOF
sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
       -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
       -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
    /usr/lib/pkgconfig/nspr.pc
chmod 644 /usr/lib/pkgconfig/nspr.pc
ln -sf nspr.pc /usr/lib/pkgconfig/mozilla-nspr.pc

N32

Create a build directory:

mkdir -v build &&
cd build

Compile the package:

CC="gcc ${BUILDN32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" USE_ARCH=N32 \
../mozilla/nsprpub/configure --prefix=/usr \
 --libdir=/usr/lib32 --infodir=/usr/share/info --mandir=/usr/share/man \
 --disable-debug --disable-ipv6 --enable-system-sqlite &&
make

Install the package

make install &&
chmod 644 /usr/lib32/lib{nspr4,plc4,plds4}.a &&
rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
mv -v /usr/bin/nspr-config{,-n32}

Create the pkg-config file:

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

Name: NSPR
Description: The Netscape Portable Runtime
Version: %NSPR_VERSION%
Libs: %FULL_NSPR_LIBS%
Cflags: %FULL_NSPR_CFLAGS%
EOF
sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
       -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
       -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
    /usr/lib32/pkgconfig/nspr.pc
chmod 644 /usr/lib32/pkgconfig/nspr.pc
ln -sf nspr.pc /usr/lib32/pkgconfig/mozilla-nspr.pc

64Bit

Create a build directory:

mkdir -v build &&
cd build

Compile the package:

CC="gcc ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" USE_ARCH=64 \
../mozilla/nsprpub/configure --prefix=/usr \
 --libdir=/usr/lib64 --infodir=/usr/share/info --mandir=/usr/share/man \
 --disable-debug --disable-ipv6 --enable-system-sqlite --enable-64bit &&
make

Install the package

make install &&
chmod 644 /usr/lib64/lib{nspr4,plc4,plds4}.a &&
rm -fv /usr/bin/{compile-et.pl,prerr.properties} &&
mv -v /usr/bin/nspr-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/nspr-config

Create the pkg-config file:

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

Name: NSPR
Description: The Netscape Portable Runtime
Version: %NSPR_VERSION%
Libs: %FULL_NSPR_LIBS%
Cflags: %FULL_NSPR_CFLAGS%
EOF
sed -i -e "s@%NSPR_VERSION%@$(./config/nspr-config --version)@" \
       -e "s@%FULL_NSPR_LIBS%@$(./config/nspr-config --libs)@" \
       -e "s@%FULL_NSPR_CFLAGS%@$(./config/nspr-config --cflags)@" \
    /usr/lib64/pkgconfig/nspr.pc
chmod 644 /usr/lib64/pkgconfig/nspr.pc
ln -sf nspr.pc /usr/lib64/pkgconfig/mozilla-nspr.pc