1Notes for compiling on zOS: 2 3- since testapi.c file is huge (over 52000 lines), it's compilation 4 fails: I skipped the problem by removing all references to testapi in the 5 Makefile.in, but it would be neater if one can build without test files 6 (I didn't find an option in configure...) 7 8- since the name of files (or qualifier) in PDS are limited to 8 I had to 9 rename xmlschemas.c and xmlschemastypes.c in (resp.) xmlsche.c xmlschet.c 10 (and I had to modify all occurrences of these files accordingly in the 11 rest of the Makefile !!!). 12 13- in order to copy objects to PDS, I had the cp command at line 860 14 of Makefile.in 15 16libxml2.la: $(libxml2_la_OBJECTS) $(libxml2_la_DEPENDENCIES) 17 $(AM_V_CCLD)$(libxml2_la_LINK) -rpath $(libdir) $(libxml2_la_OBJECTS) $(libxml2_la_LIBADD) $(LIBS) 18 # Copy objects to PDS 19 @list='$(libxml2_OBJECTS)' ; for p in $$list; do \ 20 cp -ACMv $$p "//'<PDS NAME>'"; \ 21 done 22 23 with <PDS NAME> stands for the name of my PDS and 24 25libxml2_OBJECTS = SAX.o entities.o encoding.o error.o \ 26 parserInternals.o parser.o tree.o hash.o list.o xmlIO.o \ 27 xmlmemory.o uri.o valid.o xlink.o HTMLparser.o \ 28 HTMLtree.o debugXML.o xpath.o xpointer.o xinclude.o \ 29 nanohttp.o nanoftp.o triostr.o trio.o catalog.o globals.o \ 30 threads.o c14n.o xmlstring.o buf.o xmlregexp.o \ 31 xmlsche.o xmlschet.o xmlunicode.o \ 32 xmlreader.o relaxng.o dict.o SAX2.o \ 33 xmlwriter.o legacy.o chvalid.o pattern.o xmlsave.o \ 34 xmlmodule.o schematron.o xzlib.o 35 36In order to handle the support of zOS without breaking the existing 37Makefile maybe a new option/flag zOs would copy xmlschemas.c and 38xmlschemastypes.c files and use specifics targets rather than existing 39ones with the longer names... A variable to handle the PDS name has to 40be provided also... 41 42See patch below for set of changes to Makefile.in 43 44Stéphane Michaut <smichaut@axway.com> 45July 2017 46 47 48--- Makefile.in 2017-08-01 08:17:15.000000000 +0200 49+++ Makefile-new.in 2017-08-01 08:07:26.000000000 +0200 50@@ -41,7 +41,7 @@ 51 testSAX$(EXEEXT) testHTML$(EXEEXT) testXPath$(EXEEXT) \ 52 testURI$(EXEEXT) testThreads$(EXEEXT) testC14N$(EXEEXT) \ 53 testAutomata$(EXEEXT) testRegexp$(EXEEXT) testReader$(EXEEXT) \ 54- testapi$(EXEEXT) testModule$(EXEEXT) runtest$(EXEEXT) \ 55+ testModule$(EXEEXT) runtest$(EXEEXT) \ 56 runsuite$(EXEEXT) testchar$(EXEEXT) testdict$(EXEEXT) \ 57 runxmlconf$(EXEEXT) testrecurse$(EXEEXT) testlimits$(EXEEXT) 58 bin_PROGRAMS = xmllint$(EXEEXT) xmlcatalog$(EXEEXT) 59@@ -106,6 +106,7 @@ 60 debugXML.c xpath.c xpointer.c xinclude.c nanohttp.c nanoftp.c \ 61 DOCBparser.c catalog.c globals.c threads.c c14n.c xmlstring.c \ 62 buf.c xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \ 63+ xmlsche.c xmlschet.c \ 64 triostr.c trio.c xmlreader.c relaxng.c dict.c SAX2.c \ 65 xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c xmlmodule.c \ 66 schematron.c xzlib.c 67@@ -118,10 +119,24 @@ 68 nanohttp.lo nanoftp.lo $(am__objects_1) catalog.lo globals.lo \ 69 threads.lo c14n.lo xmlstring.lo buf.lo xmlregexp.lo \ 70 xmlschemas.lo xmlschemastypes.lo xmlunicode.lo \ 71+ xmlsche.lo xmlschet.lo \ 72 $(am__objects_2) xmlreader.lo relaxng.lo dict.lo SAX2.lo \ 73 xmlwriter.lo legacy.lo chvalid.lo pattern.lo xmlsave.lo \ 74 xmlmodule.lo schematron.lo xzlib.lo 75 libxml2_la_OBJECTS = $(am_libxml2_la_OBJECTS) 76+ 77+libxml2_OBJECTS = SAX.o entities.o encoding.o error.o \ 78+ parserInternals.o parser.o tree.o hash.o list.o xmlIO.o \ 79+ xmlmemory.o uri.o valid.o xlink.o HTMLparser.o \ 80+ HTMLtree.o debugXML.o xpath.o xpointer.o xinclude.o \ 81+ nanohttp.o nanoftp.o triostr.o trio.o catalog.o globals.o \ 82+ threads.o c14n.o xmlstring.o buf.o xmlregexp.o \ 83+ xmlschemas.o xmlschemastypes.o xmlunicode.o \ 84+ xmlsche.o xmlschemast.o \ 85+ xmlreader.o relaxng.o dict.o SAX2.o \ 86+ xmlwriter.o legacy.o chvalid.o pattern.o xmlsave.o \ 87+ xmlmodule.o schematron.o xzlib.o 88+ 89 AM_V_lt = $(am__v_lt_$(V)) 90 am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) 91 am__v_lt_0 = --silent 92@@ -216,11 +231,6 @@ 93 testXPath_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 94 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 95 $(testXPath_LDFLAGS) $(LDFLAGS) -o $@ 96-am_testapi_OBJECTS = testapi.$(OBJEXT) 97-testapi_OBJECTS = $(am_testapi_OBJECTS) 98-testapi_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 99- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 100- $(testapi_LDFLAGS) $(LDFLAGS) -o $@ 101 am_testchar_OBJECTS = testchar.$(OBJEXT) 102 testchar_OBJECTS = $(am_testchar_OBJECTS) 103 testchar_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 104@@ -285,7 +295,7 @@ 105 $(testReader_SOURCES) $(testRegexp_SOURCES) \ 106 $(testRelax_SOURCES) $(testSAX_SOURCES) $(testSchemas_SOURCES) \ 107 $(testThreads_SOURCES) $(testURI_SOURCES) $(testXPath_SOURCES) \ 108- $(testapi_SOURCES) $(testchar_SOURCES) $(testdict_SOURCES) \ 109+ $(testchar_SOURCES) $(testdict_SOURCES) \ 110 $(testlimits_SOURCES) $(testrecurse_SOURCES) \ 111 $(xmlcatalog_SOURCES) $(xmllint_SOURCES) 112 DIST_SOURCES = $(am__libxml2_la_SOURCES_DIST) $(testdso_la_SOURCES) \ 113@@ -295,7 +305,7 @@ 114 $(testReader_SOURCES) $(testRegexp_SOURCES) \ 115 $(testRelax_SOURCES) $(testSAX_SOURCES) $(testSchemas_SOURCES) \ 116 $(am__testThreads_SOURCES_DIST) $(testURI_SOURCES) \ 117- $(testXPath_SOURCES) $(testapi_SOURCES) $(testchar_SOURCES) \ 118+ $(testXPath_SOURCES) $(testchar_SOURCES) \ 119 $(testdict_SOURCES) $(testlimits_SOURCES) \ 120 $(testrecurse_SOURCES) $(xmlcatalog_SOURCES) \ 121 $(xmllint_SOURCES) 122@@ -700,11 +710,6 @@ 123 noinst_LTLIBRARIES = testdso.la 124 testdso_la_SOURCES = testdso.c 125 testdso_la_LDFLAGS = -module -no-undefined -avoid-version -rpath $(libdir) 126-BUILT_SOURCES = testapi.c 127-testapi_SOURCES = testapi.c 128-testapi_LDFLAGS = 129-testapi_DEPENDENCIES = $(DEPS) 130-testapi_LDADD = $(LDADDS) 131 runxmlconf_SOURCES = runxmlconf.c 132 runxmlconf_LDFLAGS = 133 runxmlconf_DEPENDENCIES = $(DEPS) 134@@ -854,6 +859,12 @@ 135 done 136 libxml2.la: $(libxml2_la_OBJECTS) $(libxml2_la_DEPENDENCIES) 137 $(AM_V_CCLD)$(libxml2_la_LINK) -rpath $(libdir) $(libxml2_la_OBJECTS) $(libxml2_la_LIBADD) $(LIBS) 138+ # Copie des obj 139+ @list='$(libxml2_OBJECTS)' ; for p in $$list; do \ 140+ echo "copy to PDS: $$p"; \ 141+ cp -ACMv $$p "//'A009153.XRDEV230.FIC.OBJLIB.LIBXML'"; \ 142+ done 143+ 144 testdso.la: $(testdso_la_OBJECTS) $(testdso_la_DEPENDENCIES) 145 $(AM_V_CCLD)$(testdso_la_LINK) $(testdso_la_OBJECTS) $(testdso_la_LIBADD) $(LIBS) 146 install-binPROGRAMS: $(bin_PROGRAMS) 147@@ -953,9 +964,6 @@ 148 testXPath$(EXEEXT): $(testXPath_OBJECTS) $(testXPath_DEPENDENCIES) 149 @rm -f testXPath$(EXEEXT) 150 $(AM_V_CCLD)$(testXPath_LINK) $(testXPath_OBJECTS) $(testXPath_LDADD) $(LIBS) 151-testapi$(EXEEXT): $(testapi_OBJECTS) $(testapi_DEPENDENCIES) 152- @rm -f testapi$(EXEEXT) 153- $(AM_V_CCLD)$(testapi_LINK) $(testapi_OBJECTS) $(testapi_LDADD) $(LIBS) 154 testchar$(EXEEXT): $(testchar_OBJECTS) $(testchar_DEPENDENCIES) 155 @rm -f testchar$(EXEEXT) 156 $(AM_V_CCLD)$(testchar_LINK) $(testchar_OBJECTS) $(testchar_LDADD) $(LIBS) 157@@ -1056,7 +1064,6 @@ 158 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testThreadsWin32.Po@am__quote@ 159 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testURI.Po@am__quote@ 160 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testXPath.Po@am__quote@ 161-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testapi.Po@am__quote@ 162 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testchar.Po@am__quote@ 163 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testdict.Po@am__quote@ 164 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testdso.Plo@am__quote@ 165@@ -1755,18 +1762,6 @@ 166 uninstall-local uninstall-m4dataDATA uninstall-man \ 167 uninstall-man1 uninstall-man3 uninstall-pkgconfigDATA 168 169- 170-# that one forces the rebuild when "make rebuild" is run on doc/ 171-rebuild_testapi: 172- -@(if [ "$(PYTHON)" != "" ] ; then \ 173- $(PYTHON) $(srcdir)/gentest.py $(srcdir) ; fi ) 174- 175-# that one is just to make sure it is rebuilt if missing 176-# but adding the dependances generate mess 177-testapi.c: $(srcdir)/gentest.py 178- -@(if [ "$(PYTHON)" != "" ] ; then \ 179- $(PYTHON) $(srcdir)/gentest.py $(srcdir) ; fi ) 180- 181 #testOOM_SOURCES=testOOM.c testOOMlib.h testOOMlib.c 182 #testOOM_LDFLAGS = 183 #testOOM_DEPENDENCIES = $(DEPS) 184@@ -1775,7 +1770,7 @@ 185 runtests: 186 [ -d test ] || $(LN_S) $(srcdir)/test . 187 [ -d result ] || $(LN_S) $(srcdir)/result . 188- $(CHECKER) ./runtest$(EXEEXT) && $(CHECKER) ./testrecurse$(EXEEXT) &&$(CHECKER) ./testapi$(EXEEXT) && $(CHECKER) ./testchar$(EXEEXT)&& $(CHECKER) ./testdict$(EXEEXT) && $(CHECKER) ./runxmlconf$(EXEEXT) 189+ $(CHECKER) ./runtest$(EXEEXT) && $(CHECKER) ./testrecurse$(EXEEXT) &&$(CHECKER) && $(CHECKER) ./testchar$(EXEEXT)&& $(CHECKER) ./testdict$(EXEEXT) && $(CHECKER) ./runxmlconf$(EXEEXT) 190 @(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; \ 191 $(MAKE) tests ; fi) 192 193@@ -1797,10 +1792,6 @@ 194 $(MAKE) tests ; fi) 195 @(cd doc/examples ; $(MAKE) tests) 196 197-APItests: testapi$(EXEEXT) 198- @echo "## Running the API regression tests this may take a little while" 199- -@($(CHECKER) $(top_builddir)/testapi -q) 200- 201 HTMLtests : testHTML$(EXEEXT) 202 @(echo > .memdump) 203 @echo "## HTML regression tests" 204@@ -2746,7 +2737,7 @@ 205 dist-test: distdir 206 (mkdir -p $(distdir)) 207 (cd $(srcdir) ; tar -cf - --exclude CVS --exclude .svn --exclude .git xstc/Tests) | (cd $(distdir); tar xf -) 208- tar -cf - $(distdir)/test $(distdir)/result $(distdir)/xstc/Tests $(distdir)/Makefile.tests $(distdir)/README $(distdir)/README.tests $(distdir)/AUTHORS $(distdir)/testapi.c $(distdir)/runtest.c $(distdir)/runsuite.c | GZIP=$(GZIP_ENV) gzip -c >`echo "$(distdir)" | sed "s+libxml2+libxml2-tests+"`.tar.gz 209+ tar -cf - $(distdir)/test $(distdir)/result $(distdir)/xstc/Tests $(distdir)/Makefile.tests $(distdir)/README $(distdir)/README.tests $(distdir)/AUTHORS $(distdir)/runtest.c $(distdir)/runsuite.c | GZIP=$(GZIP_ENV) gzip -c >`echo "$(distdir)" | sed "s+libxml2+libxml2-tests+"`.tar.gz 210 @(rm -rf $(distdir)/xstc/Test) 211 212 cleantar: 213