summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/system/monit/default.nix23
1 files changed, 16 insertions, 7 deletions
diff --git a/pkgs/tools/system/monit/default.nix b/pkgs/tools/system/monit/default.nix
index 9057e5bc9c50..a5d6f2f518c8 100644
--- a/pkgs/tools/system/monit/default.nix
+++ b/pkgs/tools/system/monit/default.nix
@@ -1,5 +1,7 @@
-{stdenv, fetchurl, openssl, bison, flex, pam, zlib, usePAM ? stdenv.isLinux }:
-
+{stdenv, fetchurl, openssl, bison, flex, pam, zlib, usePAM ? stdenv.isLinux
+ , buildPlatform, hostPlatform }:
+let useSSL = (openssl != null);
+    isCross = ( buildPlatform != hostPlatform ) ; in
 stdenv.mkDerivation rec {
   name = "monit-5.25.1";
 
@@ -9,12 +11,19 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ bison flex ];
-  buildInputs = [ openssl zlib.dev ] ++ stdenv.lib.optionals usePAM [ pam ];
+  buildInputs = [ zlib.dev ] ++
+    stdenv.lib.optionals useSSL [ openssl ] ++
+    stdenv.lib.optionals usePAM [ pam ];
 
-  configureFlags = [
-    "--with-ssl-incl-dir=${openssl.dev}/include"
-    "--with-ssl-lib-dir=${openssl.out}/lib"
-  ] ++ stdenv.lib.optionals (! usePAM) [ "--without-pam" ];
+  configureFlags =
+    if useSSL then [
+      "--with-ssl-incl-dir=${openssl.dev}/include"
+      "--with-ssl-lib-dir=${openssl.out}/lib"
+    ] else [ "--without-ssl" ] ++
+    stdenv.lib.optionals (! usePAM) [ "--without-pam" ] ++
+    # will need to check both these are true for musl
+    stdenv.lib.optionals isCross [ "libmonit_cv_setjmp_available=yes"
+                                   "libmonit_cv_vsnprintf_c99_conformant=yes"];
 
   meta = {
     homepage = http://mmonit.com/monit/;