diff options
author | Tobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com> | 2016-03-18 06:02:18 +0100 |
---|---|---|
committer | Tobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com> | 2016-03-18 08:03:48 +0100 |
commit | fb6786de36437402882dcc135433477c39ecde44 (patch) | |
tree | 2d3acdcf395b5f9afc0260c9b200214bf6faa001 /pkgs/tools/archivers/zpaq | |
parent | 87ca9b962917a1c86b4ca73b791eba4745321e6c (diff) |
zpaq: 705 -> 706
Changes:
- Fixes handling of some corrupted archives.
- Conforms to new spec zpaq205.pdf.
- New man page.
- Add Makefile [and adapt Nix expression to use it].
Diffstat (limited to 'pkgs/tools/archivers/zpaq')
-rw-r--r-- | pkgs/tools/archivers/zpaq/default.nix | 43 |
1 files changed, 19 insertions, 24 deletions
diff --git a/pkgs/tools/archivers/zpaq/default.nix b/pkgs/tools/archivers/zpaq/default.nix index 2b761df3863f..fe5dc54a27dc 100644 --- a/pkgs/tools/archivers/zpaq/default.nix +++ b/pkgs/tools/archivers/zpaq/default.nix @@ -1,23 +1,14 @@ -{ stdenv, fetchurl, unzip }: +{ stdenv, fetchurl, perl, unzip }: let s = # Generated upstream information rec { baseName="zpaq"; - version="705"; + version="706"; name="${baseName}-${version}"; - hash="0d1knq4f6693nvbwjx4wznb45hm4zyn4k88xvhynyk0dcbiy7ayq"; - url="http://mattmahoney.net/dc/zpaq705.zip"; - sha256="0d1knq4f6693nvbwjx4wznb45hm4zyn4k88xvhynyk0dcbiy7ayq"; + hash="0wn5hs02aac61rjbba3s6wibyk73f1mfcbqnf34hcpyj2gl5i59k"; + url="http://mattmahoney.net/dc/zpaq706.zip"; + sha256="0wn5hs02aac61rjbba3s6wibyk73f1mfcbqnf34hcpyj2gl5i59k"; }; - isUnix = with stdenv; isLinux || isGNU || isDarwin || isFreeBSD || isOpenBSD; - isx86 = stdenv.isi686 || stdenv.isx86_64; - compileFlags = with stdenv; "" - + (lib.optionalString (isUnix) " -Dunix -pthread") - + (lib.optionalString (isi686) " -march=i686") - + (lib.optionalString (isx86_64) " -march=nocona") - + (lib.optionalString (!isx86) " -DNOJIT") - + " -O3 -mtune=generic -DNDEBUG" - ; in stdenv.mkDerivation { inherit (s) name version; @@ -28,20 +19,24 @@ stdenv.mkDerivation { sourceRoot = "."; + nativeBuildInputs = [ perl /* for pod2man */ ]; buildInputs = [ unzip ]; - buildPhase = '' - g++ ${compileFlags} -fPIC --shared libzpaq.cpp -o libzpaq.so - g++ ${compileFlags} -L. -L"$out/lib" -lzpaq zpaq.cpp -o zpaq + preBuild = let + CPPFLAGS = with stdenv; "" + + (lib.optionalString (!isi686 && !isx86_64) "-DNOJIT ") + + "-Dunix"; + CXXFLAGS = with stdenv; "" + + (lib.optionalString (isi686) "-march=i686 ") + + (lib.optionalString (isx86_64) "-march=nocona ") + + "-O3 -mtune=generic -DNDEBUG"; + in '' + buildFlagsArray=( "CPPFLAGS=${CPPFLAGS}" "CXXFLAGS=${CXXFLAGS}" ) ''; - installPhase = '' - mkdir -p "$out"/{bin,include,lib,share/doc/zpaq} - cp libzpaq.so "$out/lib" - cp zpaq "$out/bin" - cp libzpaq.h "$out/include" - cp readme.txt "$out/share/doc/zpaq" - ''; + enableParallelBuilding = true; + + installFlags = [ "PREFIX=$(out)" ]; meta = with stdenv.lib; { inherit (s) version; |