coccinelle: 1.0.0-r23 -> 1.0.6
* Remove camlp4 dependency, no longer needed * Keep pycaml to use ours over bundled version * Enable tests for sanity (broken on darwin) * no longer need to force specific ocaml version * don't create python wrappers, they don't seem to be needed * remove deprecated configure flag. * fix spgen by removing bytecode version.
This commit is contained in:
parent
747b62f909
commit
9614ebf137
@ -1,36 +1,37 @@
|
|||||||
{ fetchurl, stdenv, python, ncurses, ocamlPackages, pkgconfig, makeWrapper }:
|
{ fetchurl, stdenv, python, ncurses, ocamlPackages, pkgconfig }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "coccinelle-${version}";
|
name = "coccinelle-${version}";
|
||||||
version = "1.0.0-rc23";
|
version = "1.0.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://coccinelle.lip6.fr/distrib/${name}.tgz";
|
url = "http://coccinelle.lip6.fr/distrib/${name}.tgz";
|
||||||
sha256 = "1qrd4kr3wc0hm4l60fwn19iwzwqcjsx85mm3k4gm3cdhljjma82p";
|
sha256 = "02g9hmwkvfl838zz690yra5jzrqjg6y6ffxkrfcsx790bhkfsll4";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = with ocamlPackages; [
|
buildInputs = with ocamlPackages; [
|
||||||
ocaml findlib menhir ocamlPackages.camlp4
|
ocaml findlib menhir
|
||||||
ocaml_pcre pycaml
|
ocaml_pcre pycaml
|
||||||
python ncurses pkgconfig
|
python ncurses pkgconfig
|
||||||
makeWrapper
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# TODO: is the generation of this wrapper truly/still needed?
|
doCheck = !stdenv.isDarwin;
|
||||||
# I don't have a non-NixOS system, so I cannot verify this, but shouldn't
|
|
||||||
# libpython know where to find its modules? (the path is for example in
|
|
||||||
# its Sys-module).
|
|
||||||
postInstall =
|
|
||||||
# On non-NixOS systems, Coccinelle would end up looking up Python modules
|
|
||||||
# in the wrong directory.
|
|
||||||
'' for p in "$out/bin/"*
|
|
||||||
do
|
|
||||||
wrapProgram "$p" \
|
|
||||||
--prefix "PYTHONPATH" ":" "${python}/lib/python${python.majorVersion}"
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
|
|
||||||
configureFlags = "--enable-release";
|
# The build system builds two versions of spgen:
|
||||||
|
# 'spgen' with ocamlc -custom (bytecode specially linked)
|
||||||
|
# and 'spgen.opt' using ocamlopt.
|
||||||
|
# I'm not sure of the intentions here, but the way
|
||||||
|
# the 'spgen' binary is produced results in an
|
||||||
|
# invalid/incorrect interpreter path (/lib/ld-linux*).
|
||||||
|
# We could patch it, but without knowing why it's
|
||||||
|
# finding the wrong path it seems safer to use
|
||||||
|
# the .opt version that is built correctly.
|
||||||
|
# All that said, our fix here is simple: remove 'spgen'.
|
||||||
|
# The bin/spgen entrypoint is really a bash script
|
||||||
|
# and will use spgen.opt if 'spgen' doesn't exist.
|
||||||
|
postInstall = ''
|
||||||
|
rm $out/lib/coccinelle/spgen/spgen
|
||||||
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Program to apply semantic patches to C code";
|
description = "Program to apply semantic patches to C code";
|
||||||
|
@ -6315,9 +6315,7 @@ with pkgs;
|
|||||||
# Does not actually depend on Qt 5
|
# Does not actually depend on Qt 5
|
||||||
inherit (kdeFrameworks) extra-cmake-modules kapidox kdoctools;
|
inherit (kdeFrameworks) extra-cmake-modules kapidox kdoctools;
|
||||||
|
|
||||||
coccinelle = callPackage ../development/tools/misc/coccinelle {
|
coccinelle = callPackage ../development/tools/misc/coccinelle { };
|
||||||
ocamlPackages = ocamlPackages_4_01_0;
|
|
||||||
};
|
|
||||||
|
|
||||||
cpptest = callPackage ../development/libraries/cpptest { };
|
cpptest = callPackage ../development/libraries/cpptest { };
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user