deepen slicemgr cleanup
[sfa.git] / wsdl / Makefile
index e4f58ef..78dc70d 100644 (file)
@@ -1,24 +1,64 @@
 # attempt to update at build-time
-SFA := sfa.wsdl
-ALL := $(SFA) registry.wsdl slice-manager.wsdl aggregate.wsdl 
 
-all: $(SFA)
+INTERFACES=sfa registry aggregate
 
-# create missing __init__.py files
-../sfa/__init__.py:
-       make -C .. index
+WSDLS = $(foreach interface,$(INTERFACES),$(interface).wsdl)
+HTMLS = $(foreach interface,$(INTERFACES),$(interface).html)
 
-registry.wsdl: ../sfa/__init__.py
-       PYTHONPATH=../ ./gw2wsdl.py --registry > $@
+all: $(WSDLS) $(HTMLS)
 
-slice-manager.wsdl: ../sfa/__init__.py
-       PYTHONPATH=../ ./gw2wsdl.py --slice-manager > $@
+# temporary: turn off wsdl generation as it is failing
+#TEMPORARY_OFF = yes
 
-aggregate.wsdl: ../sfa/__init__.py
-       PYTHONPATH=../ ./gw2wsdl.py --aggregate > $@
+ifdef TEMPORARY_OFF
+registry.wsdl aggregate.wsdl sfa.wsdl:
+       touch $@
+else
+registry.wsdl: sfa2wsdl.py
+       PYTHONPATH=../ ./sfa2wsdl.py --registry > $@
 
-sfa.wsdl: ../sfa/__init__.py
-       PYTHONPATH=../ ./gw2wsdl.py --registry --slice-manager --aggregate > $@
+aggregate.wsdl: sfa2wsdl.py
+       PYTHONPATH=../ ./sfa2wsdl.py --aggregate > $@
 
-clean:
-       rm -f *wsdl
+sfa.wsdl: sfa2wsdl.py
+       PYTHONPATH=../ ./sfa2wsdl.py --registry --aggregate > $@
+endif
+
+#################### install
+# DESTDIR set but the calling Makefile in ../
+INSTALL_PATH=/var/www/html/wsdl
+INSTALLED=$(foreach wsdl,$(WSDLS),$(DESTDIR)$(INSTALL_PATH)/$(wsdl))
+
+install: $(INSTALLED)
+
+$(DESTDIR)$(INSTALL_PATH):
+       install -d -m 0755 $(DESTDIR)$(INSTALL_PATH)
+
+$(DESTDIR)$(INSTALL_PATH)/%: wsdl=$(notdir $@)
+$(DESTDIR)$(INSTALL_PATH)/%: $(DESTDIR)$(INSTALL_PATH) %
+       install -c -m 0755 $(wsdl) $@
+
+#################### clean
+clean::
+       rm -f $(WSDLS)
+
+install-clean:
+       rm -f $(INSTALLED)
+
+.PHONY: all clean install install-clean
+
+#################### generate html document
+%.html: %.wsdl wsdl2html.xsl
+       xsltproc $(XSLTFLAGS) wsdl2html.xsl $*.wsdl > $@ || rm $@
+
+clean::
+       rm -f $(HTMLS)
+
+
+backup:
+       $(foreach wsdl,$(WSDLS), cp $(wsdl) $(wsdl).bak;)
+       $(foreach html,$(HTMLS), cp $(html) $(html).bak;)
+
+diff:
+       $(foreach wsdl,$(WSDLS), diff $(wsdl) $(wsdl).bak;)
+       $(foreach html,$(HTMLS), diff $(html) $(html).bak;)