diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2015-12-05 11:11:51 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2015-12-05 11:11:51 +0100 |
commit | 263fd55d4b2d9c17dac87ee7a7a39c951aee1b86 (patch) | |
tree | 50c30ebb0626be0b3333d90202081e8697a85abf /pkgs/tools/compression | |
parent | b1dca6ca881e3e5864c60a2ef206579ce4d718b1 (diff) | |
parent | c20b6846f2ec4b1fe70d62fe99d165476aed65d0 (diff) | |
download | nixlib-263fd55d4b2d9c17dac87ee7a7a39c951aee1b86.tar nixlib-263fd55d4b2d9c17dac87ee7a7a39c951aee1b86.tar.gz nixlib-263fd55d4b2d9c17dac87ee7a7a39c951aee1b86.tar.bz2 nixlib-263fd55d4b2d9c17dac87ee7a7a39c951aee1b86.tar.lz nixlib-263fd55d4b2d9c17dac87ee7a7a39c951aee1b86.tar.xz nixlib-263fd55d4b2d9c17dac87ee7a7a39c951aee1b86.tar.zst nixlib-263fd55d4b2d9c17dac87ee7a7a39c951aee1b86.zip |
Merge recent staging built on Hydra
http://hydra.nixos.org/eval/1231884 Only Darwin jobs seem to be queued now, but we can't afford to wait for that single build slave.
Diffstat (limited to 'pkgs/tools/compression')
-rw-r--r-- | pkgs/tools/compression/bzip2/builder.sh | 24 | ||||
-rw-r--r-- | pkgs/tools/compression/bzip2/default.nix | 68 |
2 files changed, 52 insertions, 40 deletions
diff --git a/pkgs/tools/compression/bzip2/builder.sh b/pkgs/tools/compression/bzip2/builder.sh deleted file mode 100644 index a598dfcf808c..000000000000 --- a/pkgs/tools/compression/bzip2/builder.sh +++ /dev/null @@ -1,24 +0,0 @@ -source $stdenv/setup -installFlags="PREFIX=$out" - -if test -n "$sharedLibrary"; then - - preBuild() { - make -f Makefile-libbz2_so - } - - preInstall() { - mkdir -p $out/lib - mv libbz2.so* $out/lib - (cd $out/lib && ln -s libbz2.so.1.0.? libbz2.so && ln -s libbz2.so.1.0.? libbz2.so.1); - } - -fi - -postInstall() { - rm $out/bin/bunzip2* $out/bin/bzcat* - ln -s bzip2 $out/bin/bunzip2 - ln -s bzip2 $out/bin/bzcat -} - -genericBuild diff --git a/pkgs/tools/compression/bzip2/default.nix b/pkgs/tools/compression/bzip2/default.nix index 74da91431a43..3e835c30e3d7 100644 --- a/pkgs/tools/compression/bzip2/default.nix +++ b/pkgs/tools/compression/bzip2/default.nix @@ -1,11 +1,13 @@ -{ stdenv, fetchurl, linkStatic ? false }: +{ stdenv, fetchurl, libtool, autoconf, automake, gnum4, linkStatic ? false }: -let version = "1.0.6"; in +let + version = "1.0.6"; -stdenv.mkDerivation { - name = "bzip2-${version}"; + sharedLibrary = !stdenv.isDarwin && !(stdenv ? isStatic) + && stdenv.system != "i686-cygwin" && !linkStatic; - builder = ./builder.sh; +in stdenv.mkDerivation { + name = "bzip2-${version}"; src = fetchurl { url = "http://www.bzip.org/${version}/bzip2-${version}.tar.gz"; @@ -13,24 +15,58 @@ stdenv.mkDerivation { }; crossAttrs = { - patchPhase = '' + buildInputs = [ libtool autoconf automake gnum4 ]; + patches = [ + # original upstream for the autoconf patch is here: + # http://ftp.suse.com/pub/people/sbrabec/bzip2/for_downstream/bzip2-1.0.6-autoconfiscated.patch + # but we get the mingw-builds version of the patch, which fixes + # a few more issues + (fetchurl { + url = "https://raw.githubusercontent.com/niXman/mingw-builds/17ae841dcf6e72badad7941a06d631edaf687436/patches/bzip2/bzip2-1.0.6-autoconfiscated.patch"; + sha256 = "1flbd3i8vg9kzq0a712qcg9j2c4ymnqvgd0ldyafpzvbqj1iicnp"; + }) + ]; + patchFlags = "-p0"; + postPatch = '' sed -i -e '/<sys\\stat\.h>/s|\\|/|' bzip2.c - sed -i -e 's/CC=gcc/CC=${stdenv.cross.config}-gcc/' \ - -e 's/AR=ar/AR=${stdenv.cross.config}-ar/' \ - -e 's/RANLIB=ranlib/RANLIB=${stdenv.cross.config}-ranlib/' \ - -e 's/bzip2recover test/bzip2recover/' \ - Makefile* ''; + preConfigure = "sh ./autogen.sh"; + # clear native hooks that are not needed with autoconf + preBuild = ""; + preInstall = ""; + postInstall = ""; }; - sharedLibrary = - !stdenv.isDarwin && !(stdenv ? isStatic) && stdenv.system != "i686-cygwin" && !linkStatic; + preBuild = stdenv.lib.optionalString sharedLibrary '' + make -f Makefile-libbz2_so + ''; + + preInstall = stdenv.lib.optionalString sharedLibrary '' + mkdir -p $out/lib + mv libbz2.so* $out/lib + ( cd $out/lib && + ln -s libbz2.so.1.0.? libbz2.so && + ln -s libbz2.so.1.0.? libbz2.so.1 + ) + ''; + + installFlags = [ "PREFIX=$(out)" ]; + + postInstall = '' + rm $out/bin/bunzip2* $out/bin/bzcat* + ln -s bzip2 $out/bin/bunzip2 + ln -s bzip2 $out/bin/bzcat + ''; - patchPhase = stdenv.lib.optionalString stdenv.isDarwin "substituteInPlace Makefile --replace 'CC=gcc' 'CC=clang'"; + patchPhase = stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace Makefile --replace 'CC=gcc' 'CC=clang' + ''; - preConfigure = "substituteInPlace Makefile --replace '$(PREFIX)/man' '$(PREFIX)/share/man'"; + preConfigure = '' + substituteInPlace Makefile --replace '$(PREFIX)/man' '$(PREFIX)/share/man' + ''; - makeFlags = if linkStatic then "LDFLAGS=-static" else ""; + makeFlags = stdenv.lib.optional linkStatic "LDFLAGS=-static"; inherit linkStatic; |