about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2013-11-25T08·55+0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2013-11-25T08·55+0000
commit4315acb8c0a40703b17f837ab82e9a691b5c14ab (patch)
tree0f4047425c9a8bbc6eac5b8118fa219ce5415029
parentc7547cff1951aec5e36580a8497dd13020dfc8d3 (diff)
Add a generic rule for installing files
-rw-r--r--Makefile.lib14
-rw-r--r--corepkgs/Makefile.new3
2 files changed, 16 insertions, 1 deletions
diff --git a/Makefile.lib b/Makefile.lib
index b9114a07c0b1..cacf921052e8 100644
--- a/Makefile.lib
+++ b/Makefile.lib
@@ -3,11 +3,23 @@ default: all
 
 # Include Autoconf variables.
 Makefile.config: Makefile.config.in
-	./config.status
+	./config.status --file $@
 
 include Makefile.config
 
 
+# Installing stuff.
+define install-file-in =
+
+  install:: $(1)/$(notdir $(2))
+
+  $(1)/$(notdir $(2)): $(2)
+	install -d $(1)
+	install -t $(1) $(2)
+
+endef
+
+
 # Include all sub-Makefiles.
 define include_sub_makefile =
   d := $$(patsubst %/, %, $$(dir $(1)))
diff --git a/corepkgs/Makefile.new b/corepkgs/Makefile.new
new file mode 100644
index 000000000000..d208478259d2
--- /dev/null
+++ b/corepkgs/Makefile.new
@@ -0,0 +1,3 @@
+corepkgs_FILES = nar.nix buildenv.nix buildenv.pl unpack-channel.nix derivation.nix fetchurl.nix imported-drv-to-derivation.nix
+
+$(foreach file,config.nix $(corepkgs_FILES),$(eval $(call install-file-in,$(datadir)/nix/corepkgs,$(d)/$(file))))