Difference between revisions of "NSPR"

From CBLFS
Jump to navigationJump to search
 
(2 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:
  
sed -i 's%libdirs=-L$libdir%libdirs=-Wl,-rpath,$libdir -L$libdir%' \
 
    ../mozilla/nsprpub/config/nspr-config.in &&
 
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 35: 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 45: 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 54: 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 77: Line 69:
 
Compile the package:
 
Compile the package:
  
sed -i 's%libdirs=-L$libdir%libdirs=-Wl,-rpath,$libdir -L$libdir%' \
 
    ../mozilla/nsprpub/config/nspr-config.in &&
 
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 89: 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 100: 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 109: 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 130: Line 114:
 
Compile the package:
 
Compile the package:
  
sed -i 's%libdirs=-L$libdir%libdirs=-Wl,-rpath,$libdir -L$libdir%' \
 
    ../mozilla/nsprpub/config/nspr-config.in &&
 
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 142: 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 153: 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 162: 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 183: Line 159:
 
Compile the package:
 
Compile the package:
  
sed -i 's%libdirs=-L$libdir%libdirs=-Wl,-rpath,$libdir -L$libdir%' \
 
    ../mozilla/nsprpub/config/nspr-config.in &&
 
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 195: 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 207: 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 216: 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 17: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
Retrieved from "?title=NSPR&oldid=19753"