- can't link directly against libvserver anymore
[util-vserver.git] / python / Makefile
1 #
2 # GNUMakefile for util-vserver Python bindings
3 #
4 # It's too hard to integrate distutils into the autoconf/libtool
5 # framework, so run this Makefile separately from and after the normal
6 # util-vserver build.
7 #
8 # Steve Muir <smuir@cs.princeton.edu>
9 # Mark Huang <mlhuang@cs.princeton.edu>
10 # Copyright (C) 2005 The Trustees of Princeton University
11 #
12 # $Id$
13 #
14
15 ALL := vserverimpl.so vduimpl.so util_vserver_vars.py
16
17 pythonlibdir := @libdir@/python@PYTHON_VERSION@/site-packages
18
19 all: $(ALL)
20
21 %.o: %.c
22         # builds object and incompletely linked library
23         python setup.py build_ext
24         # copy to current directory
25         cp -a build/temp.*/*.o .
26
27 vserverimpl.so vduimpl.so: %.so: %.o
28         # relink the object against libvserver with libtool
29         ../libtool --tag=CC --mode=link $(CC) -shared -o $@ $< ../lib/libvserver.la
30
31 util_vserver_vars.py: ../scripts/util-vserver-vars
32         install -m 644 $< $@
33
34 install: $(ALL)
35         # install relinked libraries and byte-compiled scripts
36         python setup.py install --root="$(DESTDIR)"
37         # reinstall libraries with libtool so that the final path
38         # to libvserver is resolved
39         for so in $(filter %.so, $(ALL)) ; do \
40           ../libtool --tag=CC --mode=install install "$$so" `find "$(DESTDIR)" -name "$$so"` ; \
41         done
42
43 clean:
44         rm -rf $(ALL) *.o build
45
46 .PHONY: all install clean