diff --git a/pkgs/development/tools/analysis/garcosim/tracefilegen/builder.sh b/pkgs/development/tools/analysis/garcosim/tracefilegen/builder.sh deleted file mode 100644 index 6c66eb25ba31..000000000000 --- a/pkgs/development/tools/analysis/garcosim/tracefilegen/builder.sh +++ /dev/null @@ -1,17 +0,0 @@ -source "$stdenv"/setup - -cp --recursive "$src" ./ - -chmod --recursive u=rwx ./"$(basename "$src")" - -cd ./"$(basename "$src")" - -cmake ./ - -make - -mkdir --parents "$out"/bin -cp ./TraceFileGen "$out"/bin - -mkdir --parents "$out"/share/doc/"$name"/html -cp --recursive ./Documentation/html/* "$out/share/doc/$name/html/" diff --git a/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix b/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix index 07e3a579d345..f96f7e9b66bd 100644 --- a/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix +++ b/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix @@ -1,22 +1,29 @@ -{ stdenv, fetchgit, cmake }: +{ stdenv, fetchFromGitHub, cmake }: stdenv.mkDerivation rec { - name = "tracefilegen-2015-11-14"; + name = "tracefilegen-2017-05-13"; - src = fetchgit { - url = "https://github.com/GarCoSim/TraceFileGen.git"; - rev = "4acf75b142683cc475c6b1c841a221db0753b404"; - sha256 = "0mh661l9d1lczv0mr2y9swzqqlwikyqiv1hdd71r9v8cvm54y5ij"; + src = fetchFromGitHub { + owner = "GarCoSim"; + repo = "TraceFileGen"; + rev = "0ebfd1fdb54079d4bdeaa81fc9267ecb9f016d60"; + sha256 = "1gsx18ksgz5gwl3v62vgrmhxc0wc99i74qwhpn0h57zllk41drjc"; }; - buildInputs = [ cmake ]; + nativeBuildInputs = [ cmake ]; - builder = ./builder.sh; + patches = [ ./gcc7.patch ]; + + installPhase = '' + install -Dm755 TraceFileGen $out/bin/TraceFileGen + mkdir -p $out/share/doc/${name}/ + cp -ar $src/Documentation/html $out/share/doc/${name}/. + ''; meta = with stdenv.lib; { description = "Automatically generate all types of basic memory management operations and write into trace files"; - homepage = https://github.com/GarCoSim; + homepage = https://github.com/GarCoSim; maintainers = [ maintainers.cmcdragonkai ]; license = licenses.gpl2; platforms = platforms.linux; diff --git a/pkgs/development/tools/analysis/garcosim/tracefilegen/gcc7.patch b/pkgs/development/tools/analysis/garcosim/tracefilegen/gcc7.patch new file mode 100644 index 000000000000..48301bbf61ad --- /dev/null +++ b/pkgs/development/tools/analysis/garcosim/tracefilegen/gcc7.patch @@ -0,0 +1,13 @@ +diff --git a/Utils/Logger.cpp b/Utils/Logger.cpp +index 747cd63..e3efdf1 100644 +--- a/Utils/Logger.cpp ++++ b/Utils/Logger.cpp +@@ -29,7 +29,7 @@ Logger::Logger(char* tracepath) { + trace = fopen(tracepath, "w"); + + // dot file is not used, set null as default value +- dot = '\0'; ++ dot = nullptr; + //dot = fopen("gcKons.dot", "w"); + //fprintf(dot,"digraph G {\n"); + }