Daniel Veillard | 5e5c2d0 | 2002-02-09 18:03:01 +0000 | [diff] [blame] | 1 | # Makefile for libxml2 python library |
| 2 | AUTOMAKE_OPTIONS = 1.4 foreign |
| 3 | |
Daniel Veillard | 253aa2c | 2002-02-02 09:17:16 +0000 | [diff] [blame] | 4 | SUBDIRS= . tests |
| 5 | |
Daniel Veillard | 5e5c2d0 | 2002-02-09 18:03:01 +0000 | [diff] [blame] | 6 | INCLUDES = \ |
| 7 | -I/usr/include/python$(PYTHON_VERSION) \ |
| 8 | -I$(PYTHON_INCLUDES) \ |
| 9 | -I$(top_srcdir)/include |
Daniel Veillard | 253aa2c | 2002-02-02 09:17:16 +0000 | [diff] [blame] | 10 | |
Daniel Veillard | 5e5c2d0 | 2002-02-09 18:03:01 +0000 | [diff] [blame] | 11 | DOCS_DIR = $(prefix)/share/doc/libxml2-python-$(LIBXML_VERSION) |
Daniel Veillard | 253aa2c | 2002-02-02 09:17:16 +0000 | [diff] [blame] | 12 | DOCS = TODO libxml2class.txt |
Daniel Veillard | c3e3944 | 2002-02-01 09:29:41 +0000 | [diff] [blame] | 13 | |
Daniel Veillard | 4cf998a | 2002-02-02 10:42:43 +0000 | [diff] [blame] | 14 | EXTRA_DIST = \ |
| 15 | libxml.c \ |
Daniel Veillard | 3ce5257 | 2002-02-03 15:08:05 +0000 | [diff] [blame] | 16 | types.c \ |
Daniel Veillard | 4cf998a | 2002-02-02 10:42:43 +0000 | [diff] [blame] | 17 | generator.py \ |
| 18 | libxml_wrap.h \ |
| 19 | libxml.py \ |
| 20 | libxml2-python-api.xml \ |
Daniel Veillard | 253aa2c | 2002-02-02 09:17:16 +0000 | [diff] [blame] | 21 | $(DOCS) |
Daniel Veillard | c3e3944 | 2002-02-01 09:29:41 +0000 | [diff] [blame] | 22 | |
Daniel Veillard | f1d0e6b | 2002-01-31 23:42:44 +0000 | [diff] [blame] | 23 | if WITH_PYTHON |
Daniel Veillard | 5e5c2d0 | 2002-02-09 18:03:01 +0000 | [diff] [blame] | 24 | mylibs = \ |
| 25 | $(top_builddir)/libxml2.la |
| 26 | |
| 27 | all: libxml2mod.so libxml2.py |
| 28 | |
| 29 | LDADD = -lxml2 |
| 30 | CFLAGS = -Wall -g |
| 31 | |
| 32 | pythondir = $(prefix)/lib/python${PYTHON_VERSION}/site-packages |
| 33 | python_PROGRAMS = libxml2mod.so |
| 34 | |
| 35 | libxml2mod_so_SOURCES = |
| 36 | libxml2mod_so_LDFLAGS = $(mylibs) $(LIBS) -shared -Wl,-soname,libxml2mod.so |
| 37 | |
| 38 | noinst_LTLIBRARIES = libxmlmodule.la |
| 39 | libxmlmodule_la_SOURCES = libxml.c types.c libxml2-py.c |
| 40 | |
| 41 | libxml2mod.so: $(libxmlmodule_la_OBJECTS) |
| 42 | $(LINK) -o $@ $(libxmlmodule_la_OBJECTS) $(libxml2mod_so_LDFLAGS) |
| 43 | |
Daniel Veillard | 96c9af7 | 2002-02-01 00:06:44 +0000 | [diff] [blame] | 44 | |
Daniel Veillard | 253aa2c | 2002-02-02 09:17:16 +0000 | [diff] [blame] | 45 | libxml2.py: $(srcdir)/libxml.py libxml2class.py |
| 46 | cat $(srcdir)/libxml.py libxml2class.py > libxml2.py |
Daniel Veillard | f1d0e6b | 2002-01-31 23:42:44 +0000 | [diff] [blame] | 47 | |
Daniel Veillard | 7a96efc | 2002-02-05 16:34:33 +0000 | [diff] [blame] | 48 | install-data-local: |
| 49 | $(mkinstalldirs) $(DESTDIR)$(PYTHON_SITE_PACKAGES) |
| 50 | -@INSTALL@ -m 0644 libxml2.py $(DESTDIR)$(PYTHON_SITE_PACKAGES) |
Daniel Veillard | 7a96efc | 2002-02-05 16:34:33 +0000 | [diff] [blame] | 51 | $(mkinstalldirs) $(DESTDIR)$(DOCS_DIR) |
| 52 | -@(for doc in $(DOCS) ; \ |
| 53 | do @INSTALL@ -m 0644 $$doc $(DESTDIR)$(DOCS_DIR) ; done) |
Daniel Veillard | f1d0e6b | 2002-01-31 23:42:44 +0000 | [diff] [blame] | 54 | |
Daniel Veillard | f1d0e6b | 2002-01-31 23:42:44 +0000 | [diff] [blame] | 55 | GENERATE = generator.py |
Daniel Veillard | 9589d45 | 2002-02-02 10:28:17 +0000 | [diff] [blame] | 56 | API_DESC = $(top_srcdir)/doc/libxml2-api.xml $(srcdir)/libxml2-python-api.xml |
Daniel Veillard | f1d0e6b | 2002-01-31 23:42:44 +0000 | [diff] [blame] | 57 | GENERATED= $(srcdir)/libxml2class.py \ |
| 58 | $(srcdir)/libxml2-export.c \ |
| 59 | $(srcdir)/libxml2-py.c \ |
| 60 | $(srcdir)/libxml2-py.h |
| 61 | |
| 62 | $(GENERATED): $(srcdir)/$(GENERATE) $(API_DESC) |
| 63 | cd $(srcdir) && $(PYTHON) $(GENERATE) |
Daniel Veillard | 1c18e30 | 2002-02-09 22:16:40 +0000 | [diff] [blame^] | 64 | |
| 65 | $(libxmlmodule_la_OBJECTS): $(GENERATED) |
| 66 | |
Daniel Veillard | 7db3871 | 2002-02-07 16:39:11 +0000 | [diff] [blame] | 67 | else |
| 68 | all: |
| 69 | endif |
Daniel Veillard | f1d0e6b | 2002-01-31 23:42:44 +0000 | [diff] [blame] | 70 | |
Daniel Veillard | 3ce5257 | 2002-02-03 15:08:05 +0000 | [diff] [blame] | 71 | tests: all |
Daniel Veillard | cfb0546 | 2002-02-02 23:18:22 +0000 | [diff] [blame] | 72 | cd tests && $(MAKE) tests |
| 73 | |
Daniel Veillard | f1d0e6b | 2002-01-31 23:42:44 +0000 | [diff] [blame] | 74 | clean: |
Daniel Veillard | a7340c8 | 2002-02-01 17:56:45 +0000 | [diff] [blame] | 75 | rm -f $(GENERATED) *.o _libxml.so *.pyc libxml2.py |
Daniel Veillard | 253aa2c | 2002-02-02 09:17:16 +0000 | [diff] [blame] | 76 | |