Skip to content

Commit

Permalink
nss: Omit an extraneous definition; fix other problems on Darwin
Browse files Browse the repository at this point in the history
  • Loading branch information
jwiegley committed Jan 3, 2018
1 parent 25aff92 commit e8caa47
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 5 deletions.
11 changes: 11 additions & 0 deletions pkgs/development/libraries/nss/ckpem.patch
@@ -0,0 +1,11 @@
--- nss/lib/ckfw/pem/ckpem.h 2018-01-03 13:36:12.000000000 -0800
+++ nss/lib/ckfw/pem/ckpem.h 2018-01-03 13:36:20.000000000 -0800
@@ -156,8 +156,6 @@
NSS_EXTERN_DATA pemInternalObject nss_pem_data[];
NSS_EXTERN_DATA const PRUint32 nss_pem_nObjects;

- PRBool logged_in;
-
/* our raw object data array */
NSS_EXTERN_DATA pemInternalObject nss_pem_data[];
NSS_EXTERN_DATA const PRUint32 nss_pem_nObjects;
19 changes: 14 additions & 5 deletions pkgs/development/libraries/nss/default.nix
Expand Up @@ -28,6 +28,7 @@ in stdenv.mkDerivation rec {
[
# Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
./85_security_load.patch
./ckpem.patch
];

patchFlags = "-p0";
Expand All @@ -45,7 +46,8 @@ in stdenv.mkDerivation rec {
"NSS_ENABLE_ECC=1"
"USE_SYSTEM_ZLIB=1"
"NSS_USE_SYSTEM_SQLITE=1"
] ++ stdenv.lib.optional stdenv.is64bit "USE_64=1";
] ++ stdenv.lib.optional stdenv.is64bit "USE_64=1"
++ stdenv.lib.optional stdenv.isDarwin "CCC=clang++";

NIX_CFLAGS_COMPILE = "-Wno-error";

Expand Down Expand Up @@ -84,15 +86,22 @@ in stdenv.mkDerivation rec {

postFixup = ''
for libname in freebl3 nssdbm3 softokn3
do
libfile="$out/lib/lib$libname.so"
LD_LIBRARY_PATH=$out/lib $out/bin/shlibsign -v -i "$libfile"
do '' +
(if stdenv.isDarwin
then ''
libfile="$out/lib/lib$libname.dylib"
DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'' else ''
libfile="$out/lib/lib$libname.so"
LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'') + ''
$out/bin/shlibsign -v -i "$libfile"
done
moveToOutput bin "$tools"
moveToOutput bin/nss-config "$dev"
moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
rm "$out"/lib/*.a
rm -f "$out"/lib/*.a
'';

meta = {
Expand Down

0 comments on commit e8caa47

Please sign in to comment.