about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/servers/dns/bind/darwin-openssl-linking-fix.patch26
-rw-r--r--pkgs/servers/dns/bind/default.nix3
2 files changed, 28 insertions, 1 deletions
diff --git a/pkgs/servers/dns/bind/darwin-openssl-linking-fix.patch b/pkgs/servers/dns/bind/darwin-openssl-linking-fix.patch
new file mode 100644
index 000000000000..b7e7bfc73bf9
--- /dev/null
+++ b/pkgs/servers/dns/bind/darwin-openssl-linking-fix.patch
@@ -0,0 +1,26 @@
+diff --git a/configure b/configure
+index 6779cc3..4275520 100755
+--- a/configure
++++ b/configure
+@@ -15707,21 +15707,6 @@ $as_echo "not found" >&6; }
+ 			*-hp-hpux*)
+ 				DST_OPENSSL_LIBS="-L$use_openssl/lib -Wl,+b: -lcrypto"
+ 				;;
+-			*-apple-darwin*)
+-				#
+-				# Apple's ld seaches for serially for dynamic
+-				# then static libraries.  This means you can't
+-				# use -L to override dynamic system libraries
+-				# with static ones when linking.  Instead
+-				# we specify a absolute path.
+-				#
+-				if test -f "$use_openssl/lib/libcrypto.dylib"
+-				then
+-					DST_OPENSSL_LIBS="-L$use_openssl/lib -lcrypto"
+-				else
+-					DST_OPENSSL_LIBS="$use_openssl/lib/libcrypto.a"
+-				fi
+-				;;
+ 			*)
+ 				DST_OPENSSL_LIBS="-L$use_openssl/lib -lcrypto"
+ 				;;
diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix
index a92da7f35ed3..9afb622eb5e0 100644
--- a/pkgs/servers/dns/bind/default.nix
+++ b/pkgs/servers/dns/bind/default.nix
@@ -10,7 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "0mmhzi4483mkak47wj255a36g3v0yilxwfwlbckr1hssinri5m7q";
   };
 
-  patches = [ ./remove-mkdir-var.patch ];
+  patches = [ ./remove-mkdir-var.patch ] ++
+    stdenv.lib.optional stdenv.isDarwin ./darwin-openssl-linking-fix.patch;
 
   buildInputs = [ openssl libtool perl libxml2 ];