diff --git a/.gitignore b/.gitignore index 88f1e96..184913e 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ docs/_build Makefile src/plugconf.rpgle src/xmlstoredp.sql +*.savf* diff --git a/Makefile.in b/Makefile.in index 6a565da..24722dd 100644 --- a/Makefile.in +++ b/Makefile.in @@ -40,16 +40,28 @@ TEST_SRVPGMS=\ XMLSTOREDP_MODULES=xmlstoredp.module $(COMMON) +XMLSERVICE_OBJECTS=\ + xmlmain.pgm \ + xmlservice.pgm \ + xmlver.pgm \ + xmlstoredp.srvpgm \ + xmlstoredp.sqlinst \ + xmlcgi.pgm + # Ensure that intermediate files created by rules chains don't get # automatically deleted .PRECIOUS: %.module %.srcpf %.lib -all: build +all: build-all + +build-all: build-xmlservice build-test prod: build-main build-procedure build-cgi prod-clean build: build-main build-procedure build-cgi build-test +build-xmlservice: build-main build-procedure build-cgi + build-main: $(LIBRARY).lib xmlmain.pgm xmlservice.pgm xmlver.pgm build-procedure: $(LIBRARY).lib xmlstoredp.srvpgm xmlstoredp.sqlinst @@ -58,6 +70,8 @@ build-cgi: $(LIBRARY).lib xmlcgi.pgm build-test: $(TEST_PGMS) $(TEST_SRVPGMS) +savf: xmlservice-full.savf.xz xmlservice.savf.xz xmlservice-tests.savf.xz + prod-clean: rm -f *.module *.srcpf rm -rf /qsys.lib/$(LIBRARY).lib/*.FILE @@ -124,3 +138,18 @@ xmlstoredp.srvpgm: qsrvsrc.srcpf $(XMLSTOREDP_MODULES) %.srcpf: $(LIBRARY).lib (system -q 'CHKOBJ $(LIBRARY)/$* *FILE' || system -q 'CRTSRCPF $(LIBRARY)/$*') && touch $@ +xmlservice-full.savf.xz: $(XMLSERVICE_OBJECTS) $(TEST_PGMS) $(TEST_SRVPGMS) + system -q 'CRTSAVF $(LIBRARY)/XMLSRVFULL' || : + system -q "SAVLIB LIB($(LIBRARY)) DEV(*SAVF) SAVF($(LIBRARY)/XMLSRVFULL) TGTRLS($(TGTRLS)) CLEAR(*ALL) OMITOBJ((*ALL *MODULE) (*ALL *FILE))" + xz < /qsys.lib/$(LIBRARY).lib/XMLSRVFULL.file > $@ + +xmlservice.savf.xz: $(XMLSERVICE_OBJECTS) + system -q 'CRTSAVF $(LIBRARY)/XMLSRVONLY' || : + system -q "SAVLIB LIB($(LIBRARY)) DEV(*SAVF) SAVF($(LIBRARY)/XMLSRVONLY) TGTRLS($(TGTRLS)) CLEAR(*ALL) OMITOBJ((*ALL *MODULE) (*ALL *FILE) (ZZ*))" + xz < /qsys.lib/$(LIBRARY).lib/XMLSRVONLY.file > $@ + +xmlservice-tests.savf.xz: $(TEST_PGMS) $(TEST_SRVPGMS) + system -q 'CRTSAVF $(LIBRARY)/XMLSRVTEST' || : + system -q "SAVLIB LIB($(LIBRARY)) DEV(*SAVF) SAVF($(LIBRARY)/XMLSRVTEST) TGTRLS($(TGTRLS)) CLEAR(*ALL) OMITOBJ((*ALL *MODULE) (*ALL *FILE)) SELECT((*INCLUDE ZZ*))" + xz < /qsys.lib/$(LIBRARY).lib/XMLSRVTEST.file > $@ +