summaryrefslogtreecommitdiff
path: root/source4/build/make
diff options
context:
space:
mode:
Diffstat (limited to 'source4/build/make')
-rw-r--r--source4/build/make/python.mk37
1 files changed, 37 insertions, 0 deletions
diff --git a/source4/build/make/python.mk b/source4/build/make/python.mk
new file mode 100644
index 0000000000..6f54cd6a44
--- /dev/null
+++ b/source4/build/make/python.mk
@@ -0,0 +1,37 @@
+pythonbuilddir = $(builddir)/bin/python
+
+# Install Python
+# Arguments: Module path, source location
+define python_module_template
+
+$$(pythonbuilddir)/$(1): $(2) ;
+ mkdir -p $$(@D)
+ cp $$< $$@
+
+installpython:: $$(pythonbuilddir)/$(1) ;
+ cp $$< $$(DESTDIR)$$(PYTHONDIR)/$(1)
+
+uninstallpython::
+ rm -f $$(DESTDIR)$$(PYTHONDIR)/$(1) ;
+
+pythonmods:: $$(pythonbuilddir)/$(1) ;
+
+endef
+
+# Swig extensions
+swig:: pythonmods
+
+.SUFFIXES: _wrap.c .i
+
+.i_wrap.c:
+ [ "$(SWIG)" == "no" ] || $(SWIG) -O -Wall -I$(srcdir)/scripting/swig -python -keyword $<
+
+realdistclean::
+ @echo "Removing SWIG output files"
+ # FIXME: Remove _wrap.c files
+
+pythonmods::
+
+clean::
+ @echo "Removing python modules"
+ @rm -rf $(pythonbuilddir)