blob: 3f4b0038488ce7abeed8b20b93eb46f63b37e5ea [file] [log] [blame]
Daniel Veillard01791d51998-07-24 19:24:09 +00001## Process this file with automake to produce Makefile.in
2
Daniel Veillardbe9e5951999-07-12 09:16:45 +00003SUBDIRS = doc
Daniel Veillard19b858c1999-02-06 18:12:01 +00004
Daniel Veillard361d8452000-04-03 19:48:13 +00005INCLUDES = -I@srcdir@ @Z_CFLAGS@ @CORBA_CFLAGS@
Daniel Veillard14fff061999-06-22 21:49:07 +00006
Daniel Veillard361d8452000-04-03 19:48:13 +00007noinst_PROGRAMS=testSAX testHTML testXPath testURI
Daniel Veillard27fb0751998-10-17 06:47:46 +00008
Daniel Veillard361d8452000-04-03 19:48:13 +00009bin_PROGRAMS = xmllint
Daniel Veillard01791d51998-07-24 19:24:09 +000010
Daniel Veillarda6e1d121998-10-04 14:41:05 +000011bin_SCRIPTS=xml-config
12
Daniel Veillard0dc897e1998-07-26 04:12:22 +000013lib_LTLIBRARIES = libxml.la
Tomasz Kłoczkoae7cb7f2000-02-02 23:51:10 +000014libxml_la_LIBADD = @Z_LIBS@
Daniel Veillard01791d51998-07-24 19:24:09 +000015
Daniel Veillard14fff061999-06-22 21:49:07 +000016libxml_la_LDFLAGS = -version-info @LIBXML_VERSION_INFO@
17
Daniel Veillard0dc897e1998-07-26 04:12:22 +000018libxml_la_SOURCES = \
Daniel Veillard260a68f1998-08-13 03:39:55 +000019 SAX.c \
20 entities.c \
Daniel Veillard891e4041998-10-19 00:43:02 +000021 encoding.c \
Daniel Veillard260a68f1998-08-13 03:39:55 +000022 error.c \
23 parser.c \
Daniel Veillard361d8452000-04-03 19:48:13 +000024 tree.c \
25 xmlIO.c \
26 xmlmemory.c \
27 uri.c \
28 valid.c \
29 xlink.c \
Daniel Veillardbe70ff71999-07-05 16:50:46 +000030 HTMLparser.c \
Daniel Veillard1566d3a1999-07-15 14:24:29 +000031 HTMLtree.c \
Daniel Veillardbaf4cd51998-10-27 22:56:57 +000032 debugXML.c \
Daniel Veillard1566d3a1999-07-15 14:24:29 +000033 xpath.c \
Daniel Veillard7f7d1111999-09-22 09:46:25 +000034 nanohttp.c \
Daniel Veillard361d8452000-04-03 19:48:13 +000035 nanoftp.c
Daniel Veillard260a68f1998-08-13 03:39:55 +000036
Daniel Veillard361d8452000-04-03 19:48:13 +000037xmlincdir = $(includedir)/libxml
Tom Tromeyc19653d1998-08-14 01:22:43 +000038xmlinc_HEADERS = \
Daniel Veillard294cbca1999-12-03 13:19:09 +000039 SAX.h \
Daniel Veillard260a68f1998-08-13 03:39:55 +000040 entities.h \
Daniel Veillard891e4041998-10-19 00:43:02 +000041 encoding.h \
Daniel Veillard260a68f1998-08-13 03:39:55 +000042 parser.h \
Daniel Veillard294cbca1999-12-03 13:19:09 +000043 parserInternals.h \
44 xml-error.h \
Daniel Veillard5233ffc1999-07-06 22:25:25 +000045 HTMLparser.h \
Daniel Veillard1566d3a1999-07-15 14:24:29 +000046 HTMLtree.h \
Daniel Veillardbaf4cd51998-10-27 22:56:57 +000047 debugXML.h \
Daniel Veillard39a1f9a1999-01-17 19:11:59 +000048 tree.h \
Daniel Veillard1566d3a1999-07-15 14:24:29 +000049 xpath.h \
Daniel Veillard14fff061999-06-22 21:49:07 +000050 xmlIO.h \
Daniel Veillard6454aec1999-09-02 22:04:43 +000051 xmlmemory.h \
Daniel Veillard7f7d1111999-09-22 09:46:25 +000052 nanohttp.h \
James Henstridgef3be9312000-01-28 13:59:21 +000053 nanoftp.h \
Daniel Veillard3dd82e72000-03-20 11:48:04 +000054 uri.h \
Daniel Veillard10a2c651999-12-12 13:03:50 +000055 valid.h \
Daniel Veillard361d8452000-04-03 19:48:13 +000056 xlink.h \
57 xmlversion.h
Daniel Veillard01791d51998-07-24 19:24:09 +000058
Daniel Veillard0dc897e1998-07-26 04:12:22 +000059DEPS = $(top_builddir)/libxml.la
Daniel Veillardb05deb71999-08-10 19:04:08 +000060LDADDS = $(top_builddir)/libxml.la @Z_LIBS@ @M_LIBS@
Daniel Veillard01791d51998-07-24 19:24:09 +000061
Daniel Veillard361d8452000-04-03 19:48:13 +000062xmllint_SOURCES=xmllint.c
63xmllint_LDFLAGS =
64xmllint_DEPENDENCIES = $(DEPS)
65xmllint_LDADD= @RDL_LIBS@ $(LDADDS)
Daniel Veillard01791d51998-07-24 19:24:09 +000066
Daniel Veillard011b63c1999-06-02 17:44:04 +000067testSAX_SOURCES=testSAX.c
68testSAX_LDFLAGS =
69testSAX_DEPENDENCIES = $(DEPS)
70testSAX_LDADD= $(LDADDS)
71
Daniel Veillardbe70ff71999-07-05 16:50:46 +000072testHTML_SOURCES=testHTML.c
73testHTML_LDFLAGS =
74testHTML_DEPENDENCIES = $(DEPS)
75testHTML_LDADD= $(LDADDS)
76
Daniel Veillard1566d3a1999-07-15 14:24:29 +000077testXPath_SOURCES=testXPath.c
78testXPath_LDFLAGS =
79testXPath_DEPENDENCIES = $(DEPS)
80testXPath_LDADD= $(LDADDS)
81
Daniel Veillard361d8452000-04-03 19:48:13 +000082testURI_SOURCES=testURI.c
83testURI_LDFLAGS =
84testURI_DEPENDENCIES = $(DEPS)
85testURI_LDADD= $(LDADDS)
86
Raja R Harinatha86c23e1999-03-05 22:14:01 +000087check-local: tests
88
Daniel Veillard361d8452000-04-03 19:48:13 +000089$(srcdir)/libxml:
90 -$(RM) $(srcdir)/libxml
91 ln -s $(srcdir)/. $(srcdir)/libxml
92
Daniel Veillardbe803962000-06-28 23:40:59 +000093install-data: $(srcdir)/libxml
94
95$(libxml_la_SOURCES): $(srcdir)/libxml
96
Daniel Veillardb05deb71999-08-10 19:04:08 +000097testall : tests SVGtests SAXtests XPathtests XMLenttests
Daniel Veillard011b63c1999-06-02 17:44:04 +000098
Daniel Veillardb05deb71999-08-10 19:04:08 +000099tests: XMLtests HTMLtests Validtests
100
Daniel Veillard82150d81999-07-07 07:32:15 +0000101HTMLtests : testHTML
Daniel Veillardb05deb71999-08-10 19:04:08 +0000102 @echo "##"
103 @echo "## HTML regression tests"
104 @echo "##"
105 @(for i in $(srcdir)/test/HTML/* ; do \
106 name=`basename $$i`; \
Daniel Veillard82150d81999-07-07 07:32:15 +0000107 if [ ! -d $$i ] ; then \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000108 if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \
109 echo New test file $$name ; \
Daniel Veillard7c1206f1999-10-14 09:10:25 +0000110 $(top_builddir)/testHTML $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \
Daniel Veillard82150d81999-07-07 07:32:15 +0000111 else \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000112 echo Testing $$name ; \
Daniel Veillard35008381999-10-25 13:15:52 +0000113 $(top_builddir)/testHTML $$i > result.$$name 2> error.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000114 diff $(srcdir)/result/HTML/$$name result.$$name ; \
Daniel Veillard7c1206f1999-10-14 09:10:25 +0000115 diff $(srcdir)/result/HTML/$$name.err error.$$name ; \
Daniel Veillard35008381999-10-25 13:15:52 +0000116 $(top_builddir)/testHTML result.$$name > result2.$$name 2>error.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000117 diff result.$$name result2.$$name ; \
Daniel Veillard7c1206f1999-10-14 09:10:25 +0000118 rm result.$$name result2.$$name error.$$name ; \
Daniel Veillard82150d81999-07-07 07:32:15 +0000119 fi ; fi ; done)
120
Daniel Veillard361d8452000-04-03 19:48:13 +0000121XMLtests : xmllint
Daniel Veillardb05deb71999-08-10 19:04:08 +0000122 @echo "##"
123 @echo "## XML regression tests"
124 @echo "##"
125 @(for i in $(srcdir)/test/* ; do \
126 name=`basename $$i`; \
Daniel Veillard01791d51998-07-24 19:24:09 +0000127 if [ ! -d $$i ] ; then \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000128 if [ ! -f $(srcdir)/result/$$name ] ; then \
129 echo New test file $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000130 $(top_builddir)/xmllint $$i > $(srcdir)/result/$$name ; \
Daniel Veillard01791d51998-07-24 19:24:09 +0000131 else \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000132 echo Testing $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000133 $(top_builddir)/xmllint $$i > result.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000134 diff $(srcdir)/result/$$name result.$$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000135 $(top_builddir)/xmllint result.$$name > result2.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000136 diff result.$$name result2.$$name ; \
137 rm result.$$name result2.$$name ; \
Daniel Veillard01791d51998-07-24 19:24:09 +0000138 fi ; fi ; done)
139
Daniel Veillard361d8452000-04-03 19:48:13 +0000140XMLenttests : xmllint
Daniel Veillardb05deb71999-08-10 19:04:08 +0000141 @echo "##"
142 @echo "## XML entity subst regression tests"
143 @echo "##"
144 @(for i in $(srcdir)/test/* ; do \
145 name=`basename $$i`; \
Daniel Veillard011b63c1999-06-02 17:44:04 +0000146 if [ ! -d $$i ] ; then \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000147 if [ ! -f $(srcdir)/result/noent/$$name ] ; then \
148 echo New test file $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000149 $(top_builddir)/xmllint --noent $$i > $(srcdir)/result/noent/$$name ; \
Daniel Veillard011b63c1999-06-02 17:44:04 +0000150 else \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000151 echo Testing $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000152 $(top_builddir)/xmllint --noent $$i > result.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000153 diff $(srcdir)/result/noent/$$name result.$$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000154 $(top_builddir)/xmllint --noent result.$$name > result2.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000155 diff result.$$name result2.$$name ; \
156 rm result.$$name result2.$$name ; \
Daniel Veillard011b63c1999-06-02 17:44:04 +0000157 fi ; fi ; done)
158
Daniel Veillard1566d3a1999-07-15 14:24:29 +0000159XPathtests : testXPath
Daniel Veillardb05deb71999-08-10 19:04:08 +0000160 @echo "##"
161 @echo "## XPath regression tests"
162 @echo "##"
163 @(for i in $(srcdir)/test/XPath/expr/* ; do \
Daniel Veillard1566d3a1999-07-15 14:24:29 +0000164 name=`basename $$i`; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000165 if [ ! -d $$i ] ; then \
166 if [ ! -f $(srcdir)/result/XPath/expr/$$name ] ; then \
167 echo New test file $$name ; \
CEST 1999 Timur Bakeyev6db3cb01999-09-04 20:25:14 +0000168 $(top_builddir)/testXPath -f --expr $$i > $(srcdir)/result/XPath/expr/$$name ; \
Daniel Veillard1566d3a1999-07-15 14:24:29 +0000169 else \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000170 echo Testing $$name ; \
CEST 1999 Timur Bakeyev6db3cb01999-09-04 20:25:14 +0000171 $(top_builddir)/testXPath -f --expr $$i > result.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000172 diff $(srcdir)/result/XPath/expr/$$name result.$$name ; \
173 rm result.$$name ; \
174 fi ; fi ; done)
175 @(for i in $(srcdir)/test/XPath/docs/* ; do \
176 if [ ! -d $$i ] ; then \
177 doc=`basename $$i`; \
178 for j in $(srcdir)/test/XPath/tests/$$doc* ; do \
179 name=`basename $$j`; \
180 if [ ! -d $$j ] ; then \
181 if [ ! -f $(srcdir)/result/XPath/tests/$$name ] ; then \
182 echo New test file $$name ; \
CEST 1999 Timur Bakeyev6db3cb01999-09-04 20:25:14 +0000183 $(top_builddir)/testXPath -f -i $$i $$j > $(srcdir)/result/XPath/tests/$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000184 else \
185 echo Testing $$name ; \
CEST 1999 Timur Bakeyev6db3cb01999-09-04 20:25:14 +0000186 $(top_builddir)/testXPath -f -i $$i $$j > result.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000187 diff $(srcdir)/result/XPath/tests/$$name result.$$name ; \
188 rm result.$$name ; \
Daniel Veillard1566d3a1999-07-15 14:24:29 +0000189 fi ; fi ; done ; fi ; done)
190
Daniel Veillard361d8452000-04-03 19:48:13 +0000191SVGtests : xmllint
Daniel Veillardb05deb71999-08-10 19:04:08 +0000192 @echo "##"
193 @echo "## SVG parsing regression tests"
194 @echo "##"
195 @(for i in $(srcdir)/test/SVG/* ; do \
196 name=`basename $$i`; \
Daniel Veillard011b63c1999-06-02 17:44:04 +0000197 if [ ! -d $$i ] ; then \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000198 if [ ! -f $(srcdir)/result/SVG/$$name ] ; then \
199 echo New test file $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000200 $(top_builddir)/xmllint $$i > $(srcdir)/result/SVG/$$name ; \
Daniel Veillard011b63c1999-06-02 17:44:04 +0000201 else \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000202 echo Testing $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000203 $(top_builddir)/xmllint $$i > result.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000204 diff $(srcdir)/result/SVG/$$name result.$$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000205 $(top_builddir)/xmllint result.$$name > result2.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000206 diff result.$$name result2.$$name ; \
207 rm result.$$name result2.$$name ; \
Daniel Veillard011b63c1999-06-02 17:44:04 +0000208 fi ; fi ; done)
209
Daniel Veillardb05deb71999-08-10 19:04:08 +0000210SAXtests : testSAX
211 @echo "##"
212 @echo "## SAX callbacks regression tests"
213 @echo "##"
214 @(for i in $(srcdir)/test/* ; do \
215 name=`basename $$i`; \
216 if [ ! -d $$i ] ; then \
217 if [ ! -f $(srcdir)/SAXresult/$$name ] ; then \
218 echo New test file $$name ; \
CEST 1999 Timur Bakeyev6db3cb01999-09-04 20:25:14 +0000219 $(top_builddir)/testSAX $$i > $(srcdir)/SAXresult/$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000220 else \
221 echo Testing $$name ; \
CEST 1999 Timur Bakeyev6db3cb01999-09-04 20:25:14 +0000222 $(top_builddir)/testSAX $$i > result.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000223 diff $(srcdir)/SAXresult/$$name result.$$name ; \
224 rm result.$$name ; \
225 fi ; fi ; done)
Arturo Espinosa15fe6e71998-09-07 17:27:57 +0000226
Arturo Espinosa15fe6e71998-09-07 17:27:57 +0000227
Daniel Veillard361d8452000-04-03 19:48:13 +0000228Validtests : xmllint
Daniel Veillardb05deb71999-08-10 19:04:08 +0000229 @echo "##"
230 @echo "## Validity checking regression tests"
231 @echo "##"
232 @(for i in $(srcdir)/test/VC/* ; do \
233 name=`basename $$i`; \
234 if [ ! -d $$i ] ; then \
235 if [ ! -f $(srcdir)/result/VC/$$name ] ; then \
236 echo New test file $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000237 $(top_builddir)/xmllint --noout --valid $$i 2> $(srcdir)/result/VC/$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000238 else \
239 echo Testing $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000240 $(top_builddir)/xmllint --noout --valid $$i 2> result.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000241 diff $(srcdir)/result/VC/$$name result.$$name ; \
242 rm result.$$name ; \
243 fi ; fi ; done)
244 @echo "##"
245 @echo "## Valid documents regression tests"
246 @echo "##"
247 @(for i in $(srcdir)/test/valid/* ; do \
248 name=`basename $$i`; \
249 if [ ! -d $$i ] ; then \
250 if [ ! -f $(srcdir)/result/valid/$$name ] ; then \
251 echo New test file $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000252 $(top_builddir)/xmllint --valid $$i > $(srcdir)/result/valid/$$name 2>$(srcdir)/result/valid/$$name.err ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000253 else \
254 echo Testing $$name ; \
Daniel Veillard361d8452000-04-03 19:48:13 +0000255 $(top_builddir)/xmllint --valid $$i > result.$$name 2>error.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000256 diff $(srcdir)/result/valid/$$name result.$$name ; \
Daniel Veillard35008381999-10-25 13:15:52 +0000257 diff $(srcdir)/result/valid/$$name.err error.$$name ; \
258 rm result.$$name error.$$name ; \
Daniel Veillardb05deb71999-08-10 19:04:08 +0000259 fi ; fi ; done)
Arturo Espinosa15fe6e71998-09-07 17:27:57 +0000260
Elliot Leeca848471999-09-24 16:18:00 +0000261dist-hook: libxml.spec
Daniel Veillard9ec78f72000-01-05 16:31:25 +0000262 -cp libxml.spec $(distdir)
263 (cd $(srcdir) ; tar -cf - --exclude CVS test result SAXresult ) | (cd $(distdir); tar xf -)
Michael Fulbright63dc42c1999-02-21 21:20:12 +0000264
Arturo Espinosa15fe6e71998-09-07 17:27:57 +0000265## We create xmlConf.sh here and not from configure because we want
266## to get the paths expanded correctly. Macros like srcdir are given
267## the value NONE in configure if the user doesn't specify them (this
268## is an autoconf feature, not a bug).
269
Daniel Veillardb556eb51999-08-15 17:19:50 +0000270confexecdir=$(libdir)
271confexec_DATA = xmlConf.sh
272
Elliot Lee56316b01999-08-23 18:18:32 +0000273CLEANFILES=xmlConf.sh
274
Daniel Veillardb556eb51999-08-15 17:19:50 +0000275confexecdir=$(libdir)
276confexec_DATA = xmlConf.sh
Daniel Veillard35008381999-10-25 13:15:52 +0000277EXTRA_DIST = xmlConf.sh.in libxml.spec.in libxml.spec \
Daniel Veillardb556eb51999-08-15 17:19:50 +0000278 example/Makefile.am example/gjobread.c example/gjobs.xml
279
Arturo Espinosa15fe6e71998-09-07 17:27:57 +0000280xmlConf.sh: xmlConf.sh.in Makefile
281## Use sed and then mv to avoid problems if the user interrupts.
Miguel de Icaza60681bd1998-09-30 19:28:59 +0000282 sed -e 's?\@XML_LIBDIR\@?$(XML_LIBDIR)?g' \
283 -e 's?\@XML_INCLUDEDIR\@?$(XML_INCLUDEDIR)?g' \
284 -e 's?\@XML_LIBS\@?$(XML_LIBS)?g' \
Daniel Veillard6077d031999-10-09 09:11:45 +0000285 -e 's?\@VERSION\@?$(VERSION)?g' \
Arturo Espinosa15fe6e71998-09-07 17:27:57 +0000286 < $(srcdir)/xmlConf.sh.in > xmlConf.tmp \
287 && mv xmlConf.tmp xmlConf.sh