Merge pull request #30473 from teto/pygccxml

[RDY] pygccxml + castxml + pybindgen
This commit is contained in:
Jörg Thalheim
2018-04-05 14:08:52 +01:00
committed by GitHub
5 changed files with 105 additions and 1 deletions

View File

@@ -0,0 +1,49 @@
{ stdenv, fetchFromGitHub
, pythonPackages
, pkgconfig
, cmake
, llvmPackages
, withMan ? true
}:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "CastXML";
version = "20180403";
src = fetchFromGitHub {
owner = "CastXML";
repo = "CastXML";
rev = "c2a44d06d9379718292b696f4e13a2725ff9d95e";
sha256 = "1hjh8ihjyp1m2jb5yypp5c45bpbz8k004f4p1cjw4gc7pxhjacdj";
};
buildInputs = [
cmake
llvmPackages.clang-unwrapped
llvmPackages.llvm
] ++ stdenv.lib.optionals withMan [ pythonPackages.sphinx ];
propagatedbuildInputs = [ llvmPackages.libclang ];
preConfigure = ''
cmakeFlagsArray+=(
${if withMan then "-DSPHINX_MAN=ON" else ""}
)'';
# 97% tests passed, 96 tests failed out of 2866
# mostly because it checks command line and nix append -isystem and all
doCheck=false;
checkPhase = ''
# -E exclude 4 tests based on names
# see https://github.com/CastXML/CastXML/issues/90
ctest -E 'cmd.cc-(gnu|msvc)-((c-src-c)|(src-cxx))-cmd'
'';
meta = with stdenv.lib; {
homepage = http://www.kitware.com;
license = licenses.asl20;
description = "Abstract syntax tree XML output tool";
platforms = platforms.unix;
};
}