summary refs log tree commit diff
path: root/pkgs/development/libraries/skalibs/default.nix
diff options
context:
space:
mode:
authorProfpatsch <mail@profpatsch.de>2018-09-02 23:31:26 +0200
committerProfpatsch <mail@profpatsch.de>2018-09-06 11:53:22 +0200
commit0071ae1d4f1a18542b19a815d06d2b7bbf292dd4 (patch)
treeb6c94409341b69786743eeef397e2ab86c315585 /pkgs/development/libraries/skalibs/default.nix
parent57b431590b3c555469f4ebeffa2dc524ef806293 (diff)
downloadnixpkgs-0071ae1d4f1a18542b19a815d06d2b7bbf292dd4.tar
nixpkgs-0071ae1d4f1a18542b19a815d06d2b7bbf292dd4.tar.gz
nixpkgs-0071ae1d4f1a18542b19a815d06d2b7bbf292dd4.tar.bz2
nixpkgs-0071ae1d4f1a18542b19a815d06d2b7bbf292dd4.tar.lz
nixpkgs-0071ae1d4f1a18542b19a815d06d2b7bbf292dd4.tar.xz
nixpkgs-0071ae1d4f1a18542b19a815d06d2b7bbf292dd4.tar.zst
nixpkgs-0071ae1d4f1a18542b19a815d06d2b7bbf292dd4.zip
skawarePackages: factor out the common parts
Introduce a `skawarePackages.buildPackage` function that contains the
common setup, removing a lot of duplication.
In particular, we require that the build directory has to be empty
after the `fixupPhase`, to make sure every relevant file is moved to
the outputs.

A next step would be to deduplicate the `configureFlags` attributes
and only require a `skawareInputs` field.
Diffstat (limited to 'pkgs/development/libraries/skalibs/default.nix')
-rw-r--r--pkgs/development/libraries/skalibs/default.nix45
1 files changed, 12 insertions, 33 deletions
diff --git a/pkgs/development/libraries/skalibs/default.nix b/pkgs/development/libraries/skalibs/default.nix
index 85b1b060700..98977381f0f 100644
--- a/pkgs/development/libraries/skalibs/default.nix
+++ b/pkgs/development/libraries/skalibs/default.nix
@@ -1,51 +1,30 @@
-{ stdenv, fetchgit }:
+{ stdenv, skawarePackages }:
 
-let
+with skawarePackages;
 
+buildPackage {
+  pname = "skalibs";
   version = "2.7.0.0";
+  sha256 = "068pkbl91mi35amlhv491dwrbzyfifrlxijss0g2vf693xvx6lxm";
 
-in stdenv.mkDerivation rec {
-
-  name = "skalibs-${version}";
-
-  src = fetchgit {
-    url = "git://git.skarnet.org/skalibs";
-    rev = "refs/tags/v${version}";
-    sha256 = "068pkbl91mi35amlhv491dwrbzyfifrlxijss0g2vf693xvx6lxm";
-  };
+  description = "A set of general-purpose C programming libraries";
 
   outputs = [ "lib" "dev" "doc" "out" ];
 
-  dontDisableStatic = true;
-
-  enableParallelBuilding = true;
-
   configureFlags = [
-    "--enable-force-devr"       # assume /dev/random works
+    # assume /dev/random works
+    "--enable-force-devr"
     "--libdir=\${lib}/lib"
     "--dynlibdir=\${lib}/lib"
     "--includedir=\${dev}/include"
     "--sysdepdir=\${lib}/lib/skalibs/sysdeps"
-  ]
-  ++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ])
-  # On darwin, the target triplet from -dumpmachine includes version number, but
-  # skarnet.org software uses the triplet to test binary compatibility.
-  # Explicitly setting target ensures code can be compiled against a skalibs
-  # binary built on a different version of darwin.
-  # http://www.skarnet.org/cgi-bin/archive.cgi?1:mss:623:heiodchokfjdkonfhdph
-  ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+  ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/skalibs
+    rm -rf sysdeps.cfg
+    rm libskarnet.*
+
     mv doc $doc/share/doc/skalibs/html
   '';
 
-  meta = {
-    homepage = http://skarnet.org/software/skalibs/;
-    description = "A set of general-purpose C programming libraries";
-    platforms = stdenv.lib.platforms.all;
-    license = stdenv.lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
-
 }