diff --git a/pkgs/development/tools/build-managers/kati/default.nix b/pkgs/development/tools/build-managers/kati/default.nix new file mode 100644 index 00000000000..7b5dc2b7937 --- /dev/null +++ b/pkgs/development/tools/build-managers/kati/default.nix @@ -0,0 +1,26 @@ +{ fetchgit, stdenv }: + +stdenv.mkDerivation rec { + name = "kati-unstable-${version}"; + version = "2017-05-23"; + rev = "2dde61e46ab789f18956ff3b7c257dd8eb97993f"; + + src = fetchgit { + inherit rev; + url = "https://github.com/google/kati.git"; + sha256 = "1das1fvycra546lmh72cr5qpgblhbzqqy7gfywiijjgx160l75vq"; + }; + + patches = [ ./version.patch ]; + + installPhase = '' + install -D ckati $out/bin/ckati + ''; + + meta = { + description = "An experimental GNU make clone"; + homepage = "https://github.com/google/kati"; + platforms = stdenv.lib.platforms.all; + license = stdenv.lib.licenses.asl20; + }; +} diff --git a/pkgs/development/tools/build-managers/kati/version.patch b/pkgs/development/tools/build-managers/kati/version.patch new file mode 100644 index 00000000000..1821ac6bbb7 --- /dev/null +++ b/pkgs/development/tools/build-managers/kati/version.patch @@ -0,0 +1,19 @@ +diff --git a/Makefile.ckati b/Makefile.ckati +index e4067bb..15518f3 100644 +--- a/Makefile.ckati ++++ b/Makefile.ckati +@@ -102,14 +102,8 @@ $(KATI_CXX_TEST_EXES): $(KATI_BIN_PATH)/%: $(KATI_INTERMEDIATES_PATH)/%.o + $(KATI_LD) $^ -o $@ $(KATI_LIBS) + + # Rule to generate version.cc +-KATI_GIT_DIR := $(shell git -C $(KATI_SRC_PATH) rev-parse --show-toplevel) +-ifneq ($(KATI_GIT_DIR),) +-KATI_VERSION_DEPS := $(KATI_GIT_DIR)/.git/HEAD $(KATI_GIT_DIR)/.git/index +-KATI_VERSION := $(shell git -C $(KATI_GIT_DIR) rev-parse HEAD) +-else + KATI_VERSION_DEPS := + KATI_VERSION := unknown +-endif + $(KATI_INTERMEDIATES_PATH)/version.cc: $(KATI_VERSION_DEPS) + @mkdir -p $(dir $@) + echo '// +build ignore' > $@ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 885313e6aff..29c6da0962a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6862,6 +6862,8 @@ with pkgs; jenkins-job-builder = pythonPackages.jenkins-job-builder; + kati = callPackage ../development/tools/build-managers/kati { }; + kconfig-frontends = callPackage ../development/tools/misc/kconfig-frontends { gperf = gperf_3_0; };