bzip2: fix cross build on mingw by using autoconf patch
This commit is contained in:
parent
5f25c63bfd
commit
aeb3d8ce4c
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, linkStatic ? false }:
|
{ stdenv, fetchurl, libtool, autoconf, automake, gnum4, linkStatic ? false }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "1.0.6";
|
version = "1.0.6";
|
||||||
@ -15,14 +15,26 @@ in stdenv.mkDerivation {
|
|||||||
};
|
};
|
||||||
|
|
||||||
crossAttrs = {
|
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 '/<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 = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
preBuild = stdenv.lib.optionalString sharedLibrary ''
|
preBuild = stdenv.lib.optionalString sharedLibrary ''
|
||||||
|
Loading…
x
Reference in New Issue
Block a user