anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / tools / archivers / zpaq / zpaqd.nix
blob07ef4db4d6b0597344207ca94a5726767c30a7dc
1 { lib, stdenv, fetchurl, unzip }:
3 let
4   compileFlags = lib.concatStringsSep " " ([ "-O3" "-DNDEBUG" ]
5     ++ lib.optional (stdenv.hostPlatform.isUnix) "-Dunix -pthread"
6     ++ lib.optional (!stdenv.hostPlatform.isx86) "-DNOJIT");
7 in
8 stdenv.mkDerivation rec {
9   pname = "zpaqd";
10   version = "715";
12   src = fetchurl {
13     url = "http://mattmahoney.net/dc/zpaqd${version}.zip";
14     sha256 = "sha256-Mx87Zt0AASk0ZZCjyTzYbhlYJAXBlb59OpUWsqynyCA=";
15   };
17   sourceRoot = ".";
19   nativeBuildInputs = [ unzip ];
21   buildPhase = ''
22     $CXX ${compileFlags} -fPIC --shared libzpaq.cpp -o libzpaq.so
23     $CXX ${compileFlags} -L. -L"$out/lib" -lzpaq zpaqd.cpp -o zpaqd
24   '';
26   installPhase = ''
27     mkdir -p "$out"/{bin,include,lib,share/doc/zpaq}
28     cp libzpaq.so "$out/lib"
29     cp zpaqd "$out/bin"
30     cp libzpaq.h "$out/include"
31     cp readme_zpaqd.txt "$out/share/doc/zpaq"
32   '';
34   meta = with lib; {
35     description = "ZPAQ archive (de)compressor and algorithm development tool";
36     mainProgram = "zpaqd";
37     license = licenses.gpl3Plus;
38     maintainers = with maintainers; [ raskin ];
39     platforms = platforms.linux;
40   };