capstone: enable for darwin, enable tests & fix pkg-config output

turns out capstone.pc is generated during the buildPhase, so needs
PREFIX set here too for it to be correct
This commit is contained in:
Robert Scott 2020-01-03 23:31:31 +00:00 committed by Frederik Rietdijk
parent ba30ee3389
commit a8c0c21f78

View File

@ -9,9 +9,23 @@ stdenv.mkDerivation rec {
sha256 = "1isxw2qwy1fi3m3w7igsr5klzczxc5cxndz0a78dfss6ps6ymfvr";
};
# replace faulty macos detection
postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
sed -i 's/^IS_APPLE := .*$/IS_APPLE := 1/' Makefile
'';
configurePhase = '' patchShebangs make.sh '';
buildPhase = '' ./make.sh '';
installPhase = '' env PREFIX=$out ./make.sh install '';
buildPhase = "PREFIX=$out ./make.sh";
doCheck = true;
checkPhase = ''
# first remove fuzzing steps from check target
substituteInPlace Makefile --replace "fuzztest fuzzallcorp" ""
make check
'';
installPhase = (stdenv.lib.optionalString stdenv.isDarwin "HOMEBREW_CAPSTONE=1 ")
+ "PREFIX=$out ./make.sh install";
nativeBuildInputs = [
pkgconfig
@ -23,7 +37,7 @@ stdenv.mkDerivation rec {
description = "Advanced disassembly library";
homepage = "http://www.capstone-engine.org";
license = stdenv.lib.licenses.bsd3;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
platforms = stdenv.lib.platforms.unix;
maintainers = with stdenv.lib.maintainers; [ thoughtpolice ris ];
};
}