X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=Makefile;fp=Makefile;h=b218b35bf68adc1691c27bf0a330d0993faac9ea;hb=422b15a8d2846d2f2ab9e7c8c9b6faf5e4f5f200;hp=b019480cbf03ea91c6ed3629e337eb2ef899fe33;hpb=713604a9906484482d3d579cf3291795f39a494e;p=plcapi.git diff --git a/Makefile b/Makefile index b019480c..b218b35b 100644 --- a/Makefile +++ b/Makefile @@ -4,14 +4,19 @@ # Mark Huang # Copyright (C) 2005 The Trustees of Princeton University # -# $Id: Makefile,v 1.7 2006/11/08 23:27:52 mlhuang Exp $ +# $Id: Makefile,v 1.8 2006/11/10 06:34:19 mlhuang Exp $ # # Metafiles -INIT := PLC/__init__.py PLC/Methods/__init__.py +init := PLC/__init__.py PLC/Methods/__init__.py + +# Python modules +modules := psycopg2 pycurl +modules-install := $(foreach module, $(modules), $(module)-install) +modules-clean := $(foreach module, $(modules), $(module)-clean) # Other stuff -SUBDIRS := doc php php/xmlrpc +subdirs := doc php php/xmlrpc # autoconf compatible variables DESTDIR := /plc/root @@ -20,38 +25,45 @@ bindir := /usr/bin PWD := $(shell pwd) -all: $(INIT) $(SUBDIRS) +all: $(init) $(subdirs) $(modules) python setup.py build - # Install in the current directory so that we can import it - cd psycopg2 && \ - python setup.py build && \ - python setup.py install --install-lib=$(PWD) -install: +install: $(modules-install) python setup.py install \ --install-purelib=$(DESTDIR)/$(datadir)/plc_api \ --install-scripts=$(DESTDIR)/$(datadir)/plc_api \ --install-data=$(DESTDIR)/$(datadir)/plc_api - (cd psycopg2 && \ - python setup.py install --install-lib=$(DESTDIR)/$(datadir)/plc_api) install -D -m 755 php/xmlrpc/xmlrpc.so $(DESTDIR)/$(shell php-config --extension-dir)/xmlrpc.so -$(SUBDIRS): %: +$(subdirs): $(init) + +$(subdirs): %: $(MAKE) -C $@ -clean: +$(modules): + # Install in the current directory so that we can import it while developing + cd $@ && \ + python setup.py build && \ + python setup.py install_lib --install-dir=$(PWD) + +$(modules-install): %-install: + cd $* && \ + python setup.py install_lib --install-dir=$(DESTDIR)/$(datadir)/plc_api + +$(modules-clean): %-clean: + cd $* && python setup.py clean && rm -rf build + +clean: $(modules-clean) find . -name '*.pyc' | xargs rm -f rm -f $(INIT) for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir clean ; done python setup.py clean && rm -rf build - cd psycopg2 && python setup.py clean && rm -rf build -index: $(INIT) +index: $(init) tags: find . '(' -name '*.py' -o -name '*.sql' -o -name '*.php' -o -name Makefile ')' | xargs etags - # All .py files in PLC/ PLC := $(filter-out %/__init__.py, $(wildcard PLC/*.py)) PLC_init := all = '$(notdir $(PLC:.py=))'.split() @@ -76,4 +88,4 @@ endif force: -.PHONY: all install force clean index tags $(SUBDIRS) +.PHONY: all install force clean index tags $(subdirs) $(modules)