about summary refs log tree commit diff
path: root/perl/local.mk
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-02-01T15·41+0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-02-01T15·41+0100
commit2f9bb5c7e744ddca3fbe5576e520a3e80c106c55 (patch)
tree7a3d5d57a460aa87a8f8b58d46102ca339e97770 /perl/local.mk
parentc5ba08133370f98de722c978bda3b446721985de (diff)
parent6dca72006aa9b1cf2f226bb5b538e744fcab976f (diff)
Merge branch 'make'
Diffstat (limited to 'perl/local.mk')
-rw-r--r--perl/local.mk40
1 files changed, 40 insertions, 0 deletions
diff --git a/perl/local.mk b/perl/local.mk
new file mode 100644
index 000000000000..74c054e7133f
--- /dev/null
+++ b/perl/local.mk
@@ -0,0 +1,40 @@
+nix_perl_sources := \
+  $(d)/lib/Nix/Store.pm \
+  $(d)/lib/Nix/Manifest.pm \
+  $(d)/lib/Nix/GeneratePatches.pm \
+  $(d)/lib/Nix/SSH.pm \
+  $(d)/lib/Nix/CopyClosure.pm \
+  $(d)/lib/Nix/Config.pm.in \
+  $(d)/lib/Nix/Utils.pm \
+  $(d)/lib/Nix/Crypto.pm
+
+nix_perl_modules := $(nix_perl_sources:.in=)
+
+$(foreach x, $(nix_perl_modules), $(eval $(call install-data-in, $(x), $(perllibdir)/Nix)))
+
+ifeq ($(perlbindings), yes)
+
+  $(d)/lib/Nix/Store.cc: $(d)/lib/Nix/Store.xs
+	$(trace-gen) xsubpp $^ -output $@
+
+  libraries += Store
+
+  Store_DIR := $(d)/lib/Nix
+
+  Store_SOURCES := $(Store_DIR)/Store.cc
+
+  Store_LIBS = libstore
+
+  Store_CXXFLAGS = \
+    -I$(shell $(perl) -e 'use Config; print $$Config{archlibexp};')/CORE \
+    -D_FILE_OFFSET_BITS=64
+
+  Store_ALLOW_UNDEFINED = 1
+
+  Store_FORCE_INSTALL = 1
+
+  Store_INSTALL_DIR = $(perllibdir)/auto/Nix/Store
+
+endif
+
+clean-files += $(d)/lib/Nix/Config.pm $(d)/lib/Nix/Store.cc