stevenblack-blocklist: 3.15.5 -> 3.15.8 (#372042)
[NixPkgs.git] / pkgs / tools / archivers / zpaq / zpaqd.nix
blob7a56de6a2cd2b06e0ca6c156211b6d0a97e4ab0d
2   lib,
3   stdenv,
4   fetchurl,
5   unzip,
6 }:
8 let
9   compileFlags = lib.concatStringsSep " " (
10     [
11       "-O3"
12       "-DNDEBUG"
13     ]
14     ++ lib.optional (stdenv.hostPlatform.isUnix) "-Dunix -pthread"
15     ++ lib.optional (!stdenv.hostPlatform.isx86) "-DNOJIT"
16   );
18 stdenv.mkDerivation rec {
19   pname = "zpaqd";
20   version = "715";
22   src = fetchurl {
23     url = "http://mattmahoney.net/dc/zpaqd${version}.zip";
24     sha256 = "sha256-Mx87Zt0AASk0ZZCjyTzYbhlYJAXBlb59OpUWsqynyCA=";
25   };
27   sourceRoot = ".";
29   nativeBuildInputs = [ unzip ];
31   buildPhase = ''
32     $CXX ${compileFlags} -fPIC --shared libzpaq.cpp -o libzpaq.so
33     $CXX ${compileFlags} -L. -L"$out/lib" -lzpaq zpaqd.cpp -o zpaqd
34   '';
36   installPhase = ''
37     mkdir -p "$out"/{bin,include,lib,share/doc/zpaq}
38     cp libzpaq.so "$out/lib"
39     cp zpaqd "$out/bin"
40     cp libzpaq.h "$out/include"
41     cp readme_zpaqd.txt "$out/share/doc/zpaq"
42   '';
44   meta = with lib; {
45     description = "ZPAQ archive (de)compressor and algorithm development tool";
46     mainProgram = "zpaqd";
47     license = licenses.gpl3Plus;
48     maintainers = with maintainers; [ raskin ];
49     platforms = platforms.linux;
50   };