فهرست منبع

Rewrite the Nix expression so it doesn't depend on the one in nixpkgs.

Ambroz Bizjak 11 سال پیش
والد
کامیت
17e554271a
1فایلهای تغییر یافته به همراه20 افزوده شده و 5 حذف شده
  1. 20 5
      build.nix

+ 20 - 5
build.nix

@@ -1,7 +1,22 @@
-with import <nixpkgs> {};
 let
-   badvpnLocal = pkgs.badvpn.overrideDerivation (attrs: { src = stdenv.lib.cleanSource ./. ; });
-in rec {
-   badvpn = badvpnLocal;
-   badvpnWithDebug = badvpnLocal.override { debug = true; };
+    badvpnLocal = (
+        { stdenv, cmake, pkgconfig, openssl, nspr, nss, debug ? false }:
+        let
+            compileFlags = "-O3 ${stdenv.lib.optionalString (!debug) "-DNDEBUG"}";
+        in
+        stdenv.mkDerivation {
+            name = "badvpn";
+            nativeBuildInputs = [ cmake pkgconfig ];
+            buildInputs = [ openssl nspr nss ];
+            src = stdenv.lib.cleanSource ./.;
+            preConfigure = ''
+                cmakeFlagsArray=( "-DCMAKE_BUILD_TYPE=" "-DCMAKE_C_FLAGS=${compileFlags}" );
+            '';
+        }
+    );
+in
+with import <nixpkgs> {};
+rec {
+   badvpn = pkgs.callPackage badvpnLocal {};
+   badvpnDebug = pkgs.callPackage badvpnLocal { debug = true; };
 }