Browse Source

Nix expressions: Separate the package function from the composition.

Ambroz Bizjak 11 năm trước cách đây
mục cha
commit
1be45b445d
2 tập tin đã thay đổi với 16 bổ sung19 xóa
  1. 13 0
      badvpn.nix
  2. 3 19
      build.nix

+ 13 - 0
badvpn.nix

@@ -0,0 +1,13 @@
+{ 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}" );
+    '';
+}

+ 3 - 19
build.nix

@@ -1,22 +1,6 @@
-let
-    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; };
+    badvpnFunc = import ./badvpn.nix;
+    badvpn = pkgs.callPackage badvpnFunc {};
+    badvpnDebug = pkgs.callPackage badvpnFunc { debug = true; };
 }