blob: 41c39dd10e7f951eadcec1f5c572af837869b87b [file] [log] [blame]
Daniel Veillardf985ada2014-10-09 23:59:36 +08001dnl Process this file with autoconf to produce a configure script.
2AC_PREREQ([2.63])
Haibo Huangf0a546b2020-09-01 20:28:19 -07003
4m4_define([MAJOR_VERSION], 2)
5m4_define([MINOR_VERSION], 9)
Elliott Hughesecdab2a2022-02-23 14:33:50 -08006m4_define([MICRO_VERSION], 13)
Haibo Huangf0a546b2020-09-01 20:28:19 -07007
8AC_INIT([libxml2],[MAJOR_VERSION.MINOR_VERSION.MICRO_VERSION])
Daniel Veillardf985ada2014-10-09 23:59:36 +08009AC_CONFIG_SRCDIR([entities.c])
10AC_CONFIG_HEADERS([config.h])
orzenb5ca2602016-02-09 17:23:48 +010011AM_MAINTAINER_MODE([enable])
Daniel Veillardf985ada2014-10-09 23:59:36 +080012AC_CONFIG_MACRO_DIR([m4])
13AC_CANONICAL_HOST
14
Haibo Huangf0a546b2020-09-01 20:28:19 -070015LIBXML_MAJOR_VERSION=MAJOR_VERSION
16LIBXML_MINOR_VERSION=MINOR_VERSION
17LIBXML_MICRO_VERSION=MICRO_VERSION
Daniel Veillardf985ada2014-10-09 23:59:36 +080018LIBXML_MICRO_VERSION_SUFFIX=
19LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
20LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
21
22LIBXML_VERSION_NUMBER=`expr $LIBXML_MAJOR_VERSION \* 10000 + $LIBXML_MINOR_VERSION \* 100 + $LIBXML_MICRO_VERSION`
23
Elliott Hughesecdab2a2022-02-23 14:33:50 -080024if test -d .git ; then
Daniel Veillardf985ada2014-10-09 23:59:36 +080025 extra=`git describe 2>/dev/null | sed 's+LIBXML[[0-9.]]*-++'`
26 echo extra=$extra
27 if test "$extra" != ""
28 then
29 LIBXML_VERSION_EXTRA="-GIT$extra"
30 fi
31fi
Elliott Hughesecdab2a2022-02-23 14:33:50 -080032
Daniel Veillardf985ada2014-10-09 23:59:36 +080033AC_SUBST(LIBXML_MAJOR_VERSION)
34AC_SUBST(LIBXML_MINOR_VERSION)
35AC_SUBST(LIBXML_MICRO_VERSION)
36AC_SUBST(LIBXML_VERSION)
37AC_SUBST(LIBXML_VERSION_INFO)
38AC_SUBST(LIBXML_VERSION_NUMBER)
39AC_SUBST(LIBXML_VERSION_EXTRA)
40
41VERSION=${LIBXML_VERSION}
42
Haibo Huangf0a546b2020-09-01 20:28:19 -070043AM_INIT_AUTOMAKE([foreign])
Daniel Veillardf985ada2014-10-09 23:59:36 +080044
45# Support silent build rules, requires at least automake-1.11. Disable
46# by either passing --disable-silent-rules to configure or passing V=1
47# to make
48m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
49
50dnl Checks for programs.
51AC_PROG_CC
52AC_PROG_INSTALL
53AC_PROG_LN_S
54AC_PROG_MKDIR_P
55AC_PROG_CPP
56AC_PATH_PROG(MV, mv, /bin/mv)
57AC_PATH_PROG(TAR, tar, /bin/tar)
58AC_PATH_PROG(PERL, perl, /usr/bin/perl)
59AC_PATH_PROG(WGET, wget, /usr/bin/wget)
60AC_PATH_PROG(XMLLINT, xmllint, /usr/bin/xmllint)
61AC_PATH_PROG(XSLTPROC, xsltproc, /usr/bin/xsltproc)
62PKG_PROG_PKG_CONFIG
63
64LT_INIT
65
66dnl
67dnl if the system support linker version scripts for symbol versioning
68dnl then add it
69dnl
70VERSION_SCRIPT_FLAGS=
71# lt_cv_prog_gnu_ld is from libtool 2.+
72if test "$lt_cv_prog_gnu_ld" = yes; then
73 VERSION_SCRIPT_FLAGS=-Wl,--version-script=
74else
75 case $host in
76 *-*-sunos*) VERSION_SCRIPT_FLAGS="-Wl,-M -Wl,";;
77 esac
78fi
79AC_SUBST(VERSION_SCRIPT_FLAGS)
80AM_CONDITIONAL([USE_VERSION_SCRIPT], [test -n "$VERSION_SCRIPT_FLAGS"])
81
82dnl
83dnl We process the AC_ARG_WITH first so that later we can modify
84dnl some of them to try to prevent impossible combinations. This
85dnl also allows up so alphabetize the choices
86dnl
87
88dnl
89dnl zlib option might change flags, so we save them initially
90dnl
91_cppflags="${CPPFLAGS}"
92_libs="${LIBS}"
93
94AC_ARG_WITH(c14n,
95[ --with-c14n add the Canonicalization support (on)])
96AC_ARG_WITH(catalog,
97[ --with-catalog add the Catalog support (on)])
98AC_ARG_WITH(debug,
99[ --with-debug add the debugging module (on)])
100AC_ARG_WITH(docbook,
Elliott Hughesecdab2a2022-02-23 14:33:50 -0800101[ --with-docbook add Docbook SGML support (off)])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800102AC_ARG_WITH(fexceptions,
103[ --with-fexceptions add GCC flag -fexceptions for C++ exceptions (off)])
104AC_ARG_WITH(ftp,
Elliott Hughesecdab2a2022-02-23 14:33:50 -0800105[ --with-ftp add the FTP support (off)])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800106AC_ARG_WITH(history,
107[ --with-history add history support to xmllint shell(off)])
108AC_ARG_WITH(html,
109[ --with-html add the HTML support (on)])
110dnl Specific dir for HTML output ?
111AC_ARG_WITH(html-dir, AS_HELP_STRING([--with-html-dir=path],
Elliott Hughesecdab2a2022-02-23 14:33:50 -0800112 [path to base html directory, default $docdir/html]),
113 [HTML_DIR=$withval], [HTML_DIR='$(docdir)/html'])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800114
115AC_ARG_WITH(html-subdir, AS_HELP_STRING([--with-html-subdir=path],
Elliott Hughesecdab2a2022-02-23 14:33:50 -0800116 [directory used under html-dir, default '']),
117 [test "x$withval" != "x" && HTML_DIR="$HTML_DIR/$withval"])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800118AC_SUBST(HTML_DIR)
119AC_ARG_WITH(http,
120[ --with-http add the HTTP support (on)])
121AC_ARG_WITH(iconv,
122[ --with-iconv[[=DIR]] add ICONV support (on)])
123AC_ARG_WITH(icu,
124[ --with-icu add ICU support (off)])
125AC_ARG_WITH(iso8859x,
126[ --with-iso8859x add ISO8859X support if no iconv (on)])
127AC_ARG_WITH(legacy,
Elliott Hughesecdab2a2022-02-23 14:33:50 -0800128[ --with-legacy add deprecated APIs for compatibility (off)])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800129AC_ARG_WITH(mem_debug,
130[ --with-mem-debug add the memory debugging module (off)])
131AC_ARG_WITH(minimum,
132[ --with-minimum build a minimally sized library (off)])
133AC_ARG_WITH(output,
134[ --with-output add the serialization support (on)])
135AC_ARG_WITH(pattern,
136[ --with-pattern add the xmlPattern selection interface (on)])
137AC_ARG_WITH(push,
138[ --with-push add the PUSH parser interfaces (on)])
139AC_ARG_WITH(python,
140[ --with-python[[=DIR]] build Python bindings if found])
141AC_ARG_WITH(python_install_dir,
142[ --with-python-install-dir=DIR
143 install Python bindings in DIR])
144AC_ARG_WITH(reader,
145[ --with-reader add the xmlReader parsing interface (on)])
146AC_ARG_WITH(readline,
147[ --with-readline=DIR use readline in DIR],[
148 if test "$withval" != "no" -a "$withval" != "yes"; then
149 RDL_DIR=$withval
150 CPPFLAGS="${CPPFLAGS} -I$withval/include"
Mattias Hansson40fd6d22016-01-28 14:20:09 +0100151 LDFLAGS="${LDFLAGS} -L$withval/lib"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800152 fi
153])
154AC_ARG_WITH(regexps,
155[ --with-regexps add Regular Expressions support (on)])
156AC_ARG_WITH(run_debug,
157[ --with-run-debug add the runtime debugging module (off)])
158AC_ARG_WITH(sax1,
159[ --with-sax1 add the older SAX1 interface (on)])
160AC_ARG_WITH(schemas,
161[ --with-schemas add Relax-NG and Schemas support (on)])
162AC_ARG_WITH(schematron,
163[ --with-schematron add Schematron support (on)])
164AC_ARG_WITH(threads,
165[ --with-threads add multithread support(on)])
166AC_ARG_WITH(thread-alloc,
167[ --with-thread-alloc add per-thread memory(off)])
168AC_ARG_WITH(tree,
169[ --with-tree add the DOM like tree manipulation APIs (on)])
170AC_ARG_WITH(valid,
171[ --with-valid add the DTD validation support (on)])
172AC_ARG_WITH(writer,
173[ --with-writer add the xmlWriter saving interface (on)])
174AC_ARG_WITH(xinclude,
175[ --with-xinclude add the XInclude support (on)])
176AC_ARG_WITH(xpath,
177[ --with-xpath add the XPATH support (on)])
178AC_ARG_WITH(xptr,
179[ --with-xptr add the XPointer support (on)])
180AC_ARG_WITH(modules,
181[ --with-modules add the dynamic modules support (on)])
182AC_ARG_WITH(zlib,
183[ --with-zlib[[=DIR]] use libz in DIR],[
184 if test "$withval" != "no" -a "$withval" != "yes"; then
185 Z_DIR=$withval
186 CPPFLAGS="${CPPFLAGS} -I$withval/include"
Mattias Hansson40fd6d22016-01-28 14:20:09 +0100187 LDFLAGS="${LDFLAGS} -L$withval/lib"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800188 fi
189])
190AC_ARG_WITH(lzma,
191[ --with-lzma[[=DIR]] use liblzma in DIR],[
192 if test "$withval" != "no" -a "$withval" != "yes"; then
193 LZMA_DIR=$withval
194 CPPFLAGS="${CPPFLAGS} -I$withval/include"
Mattias Hansson40fd6d22016-01-28 14:20:09 +0100195 LDFLAGS="${LDFLAGS} -L$withval/lib"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800196 fi
197])
198AC_ARG_WITH(coverage,
199[ --with-coverage build for code coverage with GCC (off)])
200
201AC_ARG_ENABLE(rebuild-docs,
202[ --enable-rebuild-docs[[=yes/no]] rebuild some generated docs [[default=no]]])
203if test "$enable_rebuild_docs" = "yes" -a "$srcdir" != "."; then
204 AC_MSG_ERROR([cannot rebuild docs when builddir != srcdir])
205fi
Elliott Hughesecdab2a2022-02-23 14:33:50 -0800206AM_CONDITIONAL([REBUILD_DOCS], [test "$enable_rebuild_docs" = "yes"])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800207
208dnl
Haibo Huangcfd91dc2020-07-30 23:01:33 -0700209dnl hard dependencies on options
Daniel Veillardf985ada2014-10-09 23:59:36 +0800210dnl
211if test "$with_schemas" = "yes"
212then
213 with_pattern=yes
214 with_regexps=yes
215fi
216if test "$with_schematron" = "yes"
217then
218 with_pattern=yes
219 with_tree=yes
220 with_xpath=yes
221fi
222if test "$with_reader" = "yes"
223then
224 with_push=yes
225fi
226if test "$with_xptr" = "yes"
227then
228 with_xpath=yes
229fi
230dnl
231dnl option to build a minimal libxml2 library
232dnl
233if test "$with_minimum" = "yes"
234then
235 echo "Configuring for a minimal library"
236 if test "$with_c14n" = ""
237 then
238 with_c14n=no
239 fi
240 if test "$with_catalog" = ""
241 then
242 with_catalog=no
243 fi
244 echo So far so good!
245 if test "$with_debug" = ""
246 then
247 with_debug=no
248 fi
Daniel Veillardf985ada2014-10-09 23:59:36 +0800249 if test "$with_fexceptions" = ""
250 then
251 with_fexceptions=no
252 fi
Daniel Veillardf985ada2014-10-09 23:59:36 +0800253 if test "$with_history" = ""
254 then
255 with_history=no
256 fi
257 if test "$with_html" = ""
258 then
259 with_html=no
260 fi
261 if test "$with_http" = ""
262 then
263 with_http=no
264 fi
265 if test "$with_iconv" = ""
266 then
267 with_iconv=no
268 fi
269 if test "$with_iso8859x" = ""
270 then
271 with_iso8859x=no
272 fi
Daniel Veillardf985ada2014-10-09 23:59:36 +0800273 if test "$with_mem_debug" = ""
274 then
275 with_mem_debug=no
276 fi
277 if test "$with_output" = ""
278 then
279 with_output=no
280 fi
281 if test "$with_pattern" = ""
282 then
283 with_pattern=no
284 fi
285 if test "$with_push" = ""
286 then
287 with_push=no
288 fi
289 if test "$with_python" = ""
290 then
291 with_python=no
292 fi
293 if test "$with_reader" = ""
294 then
295 with_reader=no
296 fi
297 if test "$with_readline" = ""
298 then
299 with_readline=no
300 fi
301 if test "$with_regexps" = ""
302 then
303 with_regexps=no
304 fi
305 if test "$with_run_debug" = ""
306 then
307 with_run_debug=no
308 fi
309 if test "$with_sax1" = ""
310 then
311 with_sax1=no
312 fi
313 if test "$with_schemas" = ""
314 then
315 with_schemas=no
316 fi
317 if test "$with_schematron" = ""
318 then
319 with_schematron=no
320 fi
321 if test "$with_threads" = ""
322 then
323 with_threads=no
324 fi
325 if test "$with_thread_alloc" = ""
326 then
327 with_thread_alloc=no
328 fi
329 if test "$with_tree" = ""
330 then
331 with_tree=no
332 fi
333 if test "$with_valid" = ""
334 then
335 with_valid=no
336 fi
337 if test "$with_writer" = ""
338 then
339 with_writer=no
340 fi
341 if test "$with_xinclude" = ""
342 then
343 with_xinclude=no
344 fi
345 if test "$with_xpath" = ""
346 then
347 with_xpath=no
348 fi
349 if test "$with_xptr" = ""
350 then
351 with_xptr=no
352 fi
353 if test "$with_zlib" = ""
354 then
355 with_zlib=no
356 fi
357 if test "$with_modules" = ""
358 then
359 with_modules=no
360 fi
361fi
362
363echo Checking zlib
364
365dnl Checks for zlib library.
366
367WITH_ZLIB=0
368if test "$with_zlib" = "no"; then
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100369 echo "Disabling zlib compression support"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800370else
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100371 # Don't run pkg-config if with_zlib contains a path.
372 if test "x$Z_DIR" = "x"; then
373 # Try pkg-config first so that static linking works.
374 PKG_CHECK_MODULES([Z],[zlib],
375 [WITH_ZLIB=1],
Haibo Huangcfd91dc2020-07-30 23:01:33 -0700376 [:])
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100377 fi
Stewart Brodie45f0abd2016-05-09 10:13:12 +0800378
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100379 if test "$WITH_ZLIB" = "0"; then
Stewart Brodie45f0abd2016-05-09 10:13:12 +0800380 AC_CHECK_HEADERS(zlib.h,
Stewart Brodie45f0abd2016-05-09 10:13:12 +0800381 AC_CHECK_LIB(z, gzread,[
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100382 WITH_ZLIB=1
Stewart Brodie45f0abd2016-05-09 10:13:12 +0800383 if test "x${Z_DIR}" != "x"; then
384 Z_CFLAGS="-I${Z_DIR}/include"
385 Z_LIBS="-L${Z_DIR}/lib -lz"
386 [case ${host} in
387 *-*-solaris*)
388 Z_LIBS="-L${Z_DIR}/lib -R${Z_DIR}/lib -lz"
389 ;;
390 esac]
391 else
392 Z_LIBS="-lz"
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100393 fi])
394 )
Stewart Brodie45f0abd2016-05-09 10:13:12 +0800395 fi
Daniel Veillardf985ada2014-10-09 23:59:36 +0800396fi
397
398AC_SUBST(Z_CFLAGS)
399AC_SUBST(Z_LIBS)
400AC_SUBST(WITH_ZLIB)
401
402echo Checking lzma
403
404dnl Checks for lzma library.
405
406WITH_LZMA=0
407if test "$with_lzma" = "no"; then
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100408 echo "Disabling lzma compression support"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800409else
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100410 # Don't run pkg-config if with_lzma contains a path.
411 if test "x$LZMA_DIR" = "x"; then
412 # Try pkg-config first so that static linking works.
413 PKG_CHECK_MODULES([LZMA],[liblzma],
414 [WITH_LZMA=1],
Haibo Huangcfd91dc2020-07-30 23:01:33 -0700415 [:])
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100416 fi
Daniel Veillardf985ada2014-10-09 23:59:36 +0800417
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100418 # If pkg-config failed, fall back to AC_CHECK_LIB. This
419 # will not pick up the necessary LIBS flags for liblzma's
420 # private dependencies, though, so static linking may fail.
421 if test "$WITH_LZMA" = "0"; then
422 AC_CHECK_HEADERS(lzma.h,
Daniel Veillardf985ada2014-10-09 23:59:36 +0800423 AC_CHECK_LIB(lzma, lzma_code,[
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100424 WITH_LZMA=1
Daniel Veillardf985ada2014-10-09 23:59:36 +0800425 if test "x${LZMA_DIR}" != "x"; then
426 LZMA_CFLAGS="-I${LZMA_DIR}/include"
427 LZMA_LIBS="-L${LZMA_DIR}/lib -llzma"
428 else
429 LZMA_LIBS="-llzma"
Nick Wellnhofercb5541c2017-11-13 17:08:38 +0100430 fi])
431 )
Daniel Veillardf985ada2014-10-09 23:59:36 +0800432 fi
433fi
434
435AC_SUBST(LZMA_CFLAGS)
436AC_SUBST(LZMA_LIBS)
437AC_SUBST(WITH_LZMA)
438
439CPPFLAGS=${_cppflags}
440LIBS=${_libs}
441
442echo Checking headers
443
444dnl Checks for header files.
445AC_HEADER_DIRENT
446AC_HEADER_STDC
447AC_CHECK_HEADERS([fcntl.h])
448AC_CHECK_HEADERS([unistd.h])
449AC_CHECK_HEADERS([ctype.h])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800450AC_CHECK_HEADERS([errno.h])
451AC_CHECK_HEADERS([malloc.h])
452AC_CHECK_HEADERS([stdarg.h])
453AC_CHECK_HEADERS([sys/stat.h])
454AC_CHECK_HEADERS([sys/types.h])
455AC_CHECK_HEADERS([stdint.h])
456AC_CHECK_HEADERS([inttypes.h])
457AC_CHECK_HEADERS([time.h])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800458AC_CHECK_HEADERS([math.h])
459AC_CHECK_HEADERS([limits.h])
Daniel Veillardf985ada2014-10-09 23:59:36 +0800460AC_CHECK_HEADERS([float.h])
461AC_CHECK_HEADERS([stdlib.h])
462AC_CHECK_HEADERS([sys/socket.h], [], [],
463[#if HAVE_SYS_TYPES_H
464# include <sys/types.h>
465# endif
466])
467AC_CHECK_HEADERS([netinet/in.h], [], [],
468[#if HAVE_SYS_TYPES_H
469# include <sys/types.h>
470# endif
471])
472AC_CHECK_HEADERS([arpa/inet.h], [], [],
473[#if HAVE_SYS_TYPES_H
474# include <sys/types.h>
475# endif
476#if HAVE_ARPA_INET_H
477# include <arpa/inet.h>
478# endif
479])
480AC_CHECK_HEADERS([netdb.h])
481AC_CHECK_HEADERS([sys/time.h])
482AC_CHECK_HEADERS([sys/select.h])
483AC_CHECK_HEADERS([poll.h])
484AC_CHECK_HEADERS([sys/mman.h])
485AC_CHECK_HEADERS([sys/timeb.h])
486AC_CHECK_HEADERS([signal.h])
487AC_CHECK_HEADERS([arpa/nameser.h], [], [],
488[#if HAVE_SYS_TYPES_H
489# include <sys/types.h>
490# endif
491])
492AC_CHECK_HEADERS([resolv.h], [], [],
493[#if HAVE_SYS_TYPES_H
494# include <sys/types.h>
495# endif
496#if HAVE_NETINET_IN_H
497# include <netinet/in.h>
498# endif
499#if HAVE_ARPA_NAMESER_H
500# include <arpa/nameser.h>
501# endif
502])
503AC_CHECK_HEADERS([dl.h])
504AC_CHECK_HEADERS([dlfcn.h])
505
506
507echo Checking types
508
509AC_TYPE_UINT32_T
510
511
512echo Checking libraries
513
514dnl Checks for library functions.
515AC_FUNC_STRFTIME
Daniel Veillardf985ada2014-10-09 23:59:36 +0800516AC_CHECK_FUNCS(strftime localtime gettimeofday ftime)
Nick Wellnhoferbf3b4562017-11-13 18:33:23 +0100517AC_CHECK_FUNCS(stat signal)
Daniel Veillardf985ada2014-10-09 23:59:36 +0800518AC_CHECK_FUNCS(rand rand_r srand time)
519AC_CHECK_FUNCS(isascii mmap munmap putenv)
520
521AH_VERBATIM([HAVE_MUNMAP_AFTER],[/* mmap() is no good without munmap() */
522#if defined(HAVE_MMAP) && !defined(HAVE_MUNMAP)
523# undef /**/ HAVE_MMAP
524#endif])
525
526dnl Checking for va_copy availability
527AC_MSG_CHECKING([for va_copy])
528AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>
529va_list ap1,ap2;]], [[va_copy(ap1,ap2);]])],
530have_va_copy=yes,
531have_va_copy=no)
532AC_MSG_RESULT($have_va_copy)
533if test x"$have_va_copy" = x"yes"; then
534 AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available])
535else
536 AC_MSG_CHECKING([for __va_copy])
537 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>
538 va_list ap1,ap2;]], [[__va_copy(ap1,ap2);]])],
539 have___va_copy=yes,
540 have___va_copy=no)
541 AC_MSG_RESULT($have___va_copy)
542 if test x"$have___va_copy" = x"yes"; then
543 AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available])
544 fi
545fi
546
547dnl Checking whether va_list is an array type
548AC_MSG_CHECKING([whether va_list is an array type])
549AC_TRY_COMPILE2([
550#include <stdarg.h>
551void a(va_list * ap) {}],[
552va_list ap1, ap2; a(&ap1); ap2 = (va_list) ap1],[
553 AC_MSG_RESULT(no)],[
554 AC_MSG_RESULT(yes)
555 AC_DEFINE([VA_LIST_IS_ARRAY], [1],[Define if va_list is an array type])])
556
557dnl Checks for inet libraries:
558AC_SEARCH_LIBS(gethostent, [nsl])
559AC_SEARCH_LIBS(setsockopt, [socket net network])
560AC_SEARCH_LIBS(connect, [inet])
561
562dnl Determine what socket length (socklen_t) data type is
563AC_MSG_CHECKING([for type of socket length (socklen_t)])
564AC_TRY_COMPILE2([
565#include <stddef.h>
566#include <sys/types.h>
567#include <sys/socket.h>],[
568(void)getsockopt (1, 1, 1, NULL, (socklen_t *)NULL)],[
569 AC_MSG_RESULT(socklen_t *)
570 XML_SOCKLEN_T=socklen_t],[
571 AC_TRY_COMPILE2([
572#include <stddef.h>
573#include <sys/types.h>
574#include <sys/socket.h>],[
575(void)getsockopt (1, 1, 1, NULL, (size_t *)NULL)],[
576 AC_MSG_RESULT(size_t *)
577 XML_SOCKLEN_T=size_t],[
578 AC_TRY_COMPILE2([
579#include <stddef.h>
580#include <sys/types.h>
581#include <sys/socket.h>],[
582(void)getsockopt (1, 1, 1, NULL, (int *)NULL)],[
583 AC_MSG_RESULT(int *)
584 XML_SOCKLEN_T=int],[
585 AC_MSG_WARN(could not determine)
586 XML_SOCKLEN_T="int"])])])
587AC_DEFINE_UNQUOTED(XML_SOCKLEN_T, $XML_SOCKLEN_T, [Determine what socket length (socklen_t) data type is])
588
589dnl Checking if gethostbyname() argument is const.
590AC_MSG_CHECKING([for const gethostbyname() argument])
591AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netdb.h>]],
592 [[(void)gethostbyname((const char *)"");]])],
593have_gethostbyname_const_arg=yes,
594have_gethostbyname_const_arg=no)
595AC_MSG_RESULT($have_gethostbyname_const_arg)
596if test x"$have_gethostbyname_const_arg" = x"yes"; then
597 AC_DEFINE([GETHOSTBYNAME_ARG_CAST], [],
598 [Type cast for the gethostbyname() argument])
599else
600 AC_DEFINE([GETHOSTBYNAME_ARG_CAST], [(char *)],
601 [Type cast for the gethostbyname() argument])
602fi
603
604dnl Checking if send() second argument is const.
605AC_MSG_CHECKING([for const send() second argument])
606AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
607#include <sys/socket.h>]],
608 [[(void)send(1,(const char *)"",1,1);]])],
609have_send_const_arg2=yes,
610have_send_const_arg2=no)
611AC_MSG_RESULT($have_send_const_arg2)
612if test x"$have_send_const_arg2" = x"yes"; then
613 AC_DEFINE([SEND_ARG2_CAST], [],
614 [Type cast for the send() function 2nd arg])
615else
616 AC_DEFINE([SEND_ARG2_CAST], [(char *)],
617 [Type cast for the send() function 2nd arg])
618fi
619
Haibo Huangcfd91dc2020-07-30 23:01:33 -0700620dnl Checking whether __attribute__((destructor)) is accepted by the compiler
621AC_MSG_CHECKING([whether __attribute__((destructor)) is accepted])
622AC_TRY_COMPILE2([
623void __attribute__((destructor))
624f(void) {}], [], [
625 AC_MSG_RESULT(yes)
626 AC_DEFINE([HAVE_ATTRIBUTE_DESTRUCTOR], [1],[Define if __attribute__((destructor)) is accepted])
627 AC_DEFINE([ATTRIBUTE_DESTRUCTOR], [__attribute__((destructor))],[A form that will not confuse apibuild.py])],[
628 AC_MSG_RESULT(no)])
629
630
Daniel Veillardf985ada2014-10-09 23:59:36 +0800631dnl ***********************Checking for availability of IPv6*******************
632
633AC_MSG_CHECKING([whether to enable IPv6])
634AC_ARG_ENABLE(ipv6, [ --enable-ipv6[[=yes/no]] enables compilation of IPv6 code [[default=yes]]],, enable_ipv6=yes)
635if test "$with_minimum" = "yes"
636then
637 enable_ipv6=no
638fi
639if test $enable_ipv6 = yes; then
640 have_ipv6=no
641 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
642# include <sys/types.h>
643# include <sys/socket.h>
644 ]], [[
645 struct sockaddr_storage ss;
646 socket(AF_INET6, SOCK_STREAM, 0)
647 ]])],
648 have_ipv6=yes,
649 have_ipv6=no
650 )
651 AC_MSG_RESULT($have_ipv6)
652
653 if test $have_ipv6 = yes; then
654 AC_DEFINE([SUPPORT_IP6], [], [Support for IPv6])
655 have_broken_ss_family=no
656
657 dnl *********************************************************************
658 dnl on some platforms (like AIX 5L), the structure sockaddr doesn't have
659 dnl a ss_family member, but rather __ss_family. Let's detect that
660 dnl and define the HAVE_BROKEN_SS_FAMILY when we are on one of these
661 dnl platforms. However, we should only do this if ss_family is not
662 dnl present.
663 dnl ********************************************************************
664 AC_MSG_CHECKING([struct sockaddr::ss_family])
665 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
666# include <sys/types.h>
667# include <sys/socket.h>
668 ]], [[
669 struct sockaddr_storage ss ;
670 ss.ss_family = 0 ;
671 ]])],
672 have_ss_family=yes,
673 have_ss_family=no
674 )
675 AC_MSG_RESULT($have_ss_family)
676 if test x$have_ss_family = xno ; then
677 AC_MSG_CHECKING([broken struct sockaddr::ss_family])
678 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
679# include <sys/types.h>
680# include <sys/socket.h>
681 ]], [[
682 struct sockaddr_storage ss ;
683 ss.__ss_family = 0 ;
684 ]])],
685 have_broken_ss_family=yes,
686 have_broken_ss_family=no
687 )
688 AC_MSG_RESULT($have_broken_ss_family)
689 if test x$have_broken_ss_family = xyes ; then
690 AC_DEFINE(HAVE_BROKEN_SS_FAMILY, [],
691 [Whether struct sockaddr::__ss_family exists])
692 AC_DEFINE(ss_family, __ss_family,
693 [ss_family is not defined here, use __ss_family instead])
694 else
695 AC_MSG_WARN(ss_family and __ss_family not found)
696 fi
697 fi
698
699 have_getaddrinfo=no
700 AC_CHECK_FUNC(getaddrinfo, have_getaddrinfo=yes)
701 if test $have_getaddrinfo != yes; then
702 for lib in bsd socket inet; do
703 AC_CHECK_LIB($lib, getaddrinfo, [LIBS="$LIBS -l$lib";have_getaddrinfo=yes;break])
704 done
705 fi
706
707 if test $have_getaddrinfo = yes; then
708 AC_DEFINE([HAVE_GETADDRINFO], [], [Define if getaddrinfo is there])
709 fi
710 fi
711fi
712
713dnl ******************************End IPv6 checks******************************
714
Daniel Veillardf985ada2014-10-09 23:59:36 +0800715XML_LIBDIR='-L${libdir}'
716XML_INCLUDEDIR='-I${includedir}/libxml2'
717
718dnl
719dnl Extra flags
720dnl
721XML_CFLAGS=""
722RDL_LIBS=""
723
724dnl
725dnl Workaround for native compilers
726dnl HP : http://bugs.gnome.org/db/31/3163.html
727dnl DEC : Enable NaN/Inf
728dnl
729if test "${GCC}" != "yes" ; then
730 case "${host}" in
731 hppa*-*-hpux* )
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100732 EXTRA_CFLAGS="${EXTRA_CFLAGS} -Wp,-H30000"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800733 ;;
734 *-dec-osf* )
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100735 EXTRA_CFLAGS="${EXTRA_CFLAGS} -ieee"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800736 ;;
737 alpha*-*-linux* )
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100738 EXTRA_CFLAGS="${EXTRA_CFLAGS} -ieee"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800739 ;;
740 esac
741else
742 if test "$with_fexceptions" = "yes"
743 then
744 #
745 # Not activated by default because this inflates the code size
746 # Used to allow propagation of C++ exceptions through the library
747 #
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100748 EXTRA_CFLAGS="${EXTRA_CFLAGS} -fexceptions"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800749 fi
750
751 # warnings we'd like to see
Nick Wellnhofer45efd0b2017-11-13 22:05:22 +0100752 EXTRA_CFLAGS="${EXTRA_CFLAGS} -pedantic -Wall -Wextra -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls"
Haibo Huangcfd91dc2020-07-30 23:01:33 -0700753 # warnings we'd like to suppress
754 EXTRA_CFLAGS="${EXTRA_CFLAGS} -Wno-long-long -Wno-format-extra-args"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800755 case "${host}" in
756 alpha*-*-linux* )
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100757 EXTRA_CFLAGS="${EXTRA_CFLAGS} -mieee"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800758 ;;
759 alpha*-*-osf* )
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100760 EXTRA_CFLAGS="${EXTRA_CFLAGS} -mieee"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800761 ;;
762 esac
763fi
764case ${host} in
765 *-*-solaris*)
766 XML_LIBDIR="${XML_LIBDIR} -R${libdir}"
767 ;;
768 hppa*-hp-mpeix)
769 NEED_TRIO=1
770 ;;
771 *-*-mingw* | *-*-cygwin* | *-*-msvc* )
772 # If the host is Windows, and shared libraries are disabled, we
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100773 # need to add -DLIBXML_STATIC to EXTRA_CFLAGS in order for linking to
Daniel Veillardf985ada2014-10-09 23:59:36 +0800774 # work properly (without it, xmlexports.h would force the use of
775 # DLL imports, which obviously aren't present in a static
776 # library).
777 if test "x$enable_shared" = "xno"; then
778 XML_CFLAGS="$XML_CFLAGS -DLIBXML_STATIC"
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +0100779 EXTRA_CFLAGS="$EXTRA_CFLAGS -DLIBXML_STATIC"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800780 fi
781 ;;
782esac
783
784
785dnl
786dnl check for python
787dnl
788
789PYTHON_VERSION=
790PYTHON_INCLUDES=
791PYTHON_SITE_PACKAGES=
792PYTHON_TESTS=
793pythondir=
794if test "$with_python" != "no" ; then
795 if test -x "$with_python/bin/python"
796 then
797 echo Found python in $with_python/bin/python
798 PYTHON="$with_python/bin/python"
799 else
800 if test -x "$with_python/python.exe"
801 then
802 echo Found python in $with_python/python.exe
803 PYTHON="$with_python/python.exe"
804 else
805 if test -x "$with_python"
806 then
807 echo Found python in $with_python
808 PYTHON="$with_python"
809 else
810 if test -x "$PYTHON"
811 then
812 echo Found python in environment PYTHON=$PYTHON
813 with_python=`$PYTHON -c "import sys; print(sys.exec_prefix)"`
814 else
815 AC_PATH_PROG(PYTHON, python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5)
816 fi
817 fi
818 fi
819 fi
820 if test "$PYTHON" != ""
821 then
822 PYTHON_VERSION=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_version())"`
823 PYTHON_INCLUDES=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_inc())"`
824# does not work as it produce a /usr/lib/python path instead of/usr/lib64/python
825#
826# PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_lib())"`
827 echo Found Python version $PYTHON_VERSION
828 fi
829 if test "$PYTHON_VERSION" != "" -a "$PYTHON_INCLUDES" = ""
830 then
831 if test -r $with_python/include/python$PYTHON_VERSION/Python.h
832 then
833 PYTHON_INCLUDES=$with_python/include/python$PYTHON_VERSION
834 else
835 if test -r $prefix/include/python$PYTHON_VERSION/Python.h
836 then
837 PYTHON_INCLUDES=$prefix/include/python$PYTHON_VERSION
838 else
839 if test -r /usr/include/python$PYTHON_VERSION/Python.h
840 then
841 PYTHON_INCLUDES=/usr/include/python$PYTHON_VERSION
842 else
843 if test -r $with_python/include/Python.h
844 then
845 PYTHON_INCLUDES=$with_python/include
846 else
847 echo could not find python$PYTHON_VERSION/Python.h or $with_python/include/Python.h
848 fi
849 fi
850 fi
851 fi
852 fi
853 if test "$with_python_install_dir" != ""
854 then
855 PYTHON_SITE_PACKAGES="$with_python_install_dir"
856 fi
857 if test "$PYTHON_VERSION" != "" -a "$PYTHON_SITE_PACKAGES" = ""
858 then
859 if test -d $libdir/python$PYTHON_VERSION/site-packages
860 then
861 PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
862 else
863 if test -d $with_python/lib/site-packages
864 then
865 PYTHON_SITE_PACKAGES=$with_python/lib/site-packages
866 else
Elliott Hughesecdab2a2022-02-23 14:33:50 -0800867 PYTHON_SITE_PACKAGES=$($PYTHON -c 'from distutils import sysconfig; print(sysconfig.get_python_lib(True,False,"${exec_prefix}"))')
Daniel Veillardf985ada2014-10-09 23:59:36 +0800868 fi
869 fi
870 fi
871 pythondir='$(PYTHON_SITE_PACKAGES)'
872 PYTHON_LIBS=`python$PYTHON_VERSION-config --ldflags`
873else
874 PYTHON=
875fi
876AM_CONDITIONAL(WITH_PYTHON, test "$PYTHON_INCLUDES" != "")
877if test "$PYTHON_INCLUDES" != ""
878then
879 PYTHON_SUBDIR=python
880else
881 PYTHON_SUBDIR=
882fi
883AC_SUBST(pythondir)
884AC_SUBST(PYTHON_SUBDIR)
885AC_SUBST(PYTHON_LIBS)
886
887dnl check for dso support
888WITH_MODULES=0
889TEST_MODULES=
890
891if test "$with_modules" != "no" ; then
892 case "$host" in
893 *-*-cygwin*)
894 MODULE_EXTENSION=".dll"
895 AC_CHECK_LIB(cygwin, dlopen, [
896 WITH_MODULES=1
897 MODULE_PLATFORM_LIBS=
898 AC_DEFINE([HAVE_DLOPEN], [], [Have dlopen based dso])
899 ])
900 ;;
901 *-*-mingw*)
902 MODULE_EXTENSION=".dll"
903 WITH_MODULES=1
904 ;;
905 *)
906 AC_CHECK_FUNC(shl_load, libxml_have_shl_load=yes, [
907 AC_CHECK_LIB(dld, shl_load, [
908 MODULE_PLATFORM_LIBS="-ldld"
909 libxml_have_shl_load=yes], [
910 AC_CHECK_FUNC(dlopen, libxml_have_dlopen=yes, [
911 AC_CHECK_LIB(dl, dlopen, [
912 MODULE_PLATFORM_LIBS="-ldl"
913 libxml_have_dlopen=yes])])])])
914
915 if test "${libxml_have_shl_load}" = "yes"; then
916 MODULE_EXTENSION=".sl"
917 WITH_MODULES=1
918 AC_DEFINE([HAVE_SHLLOAD], [], [Have shl_load based dso])
919 fi
920
921 if test "${libxml_have_dlopen}" = "yes"; then
922 case "${host}" in
923 *-*-hpux* )
924 MODULE_EXTENSION=".sl"
925 ;;
926 * )
927 MODULE_EXTENSION=".so"
928 ;;
929 esac
930
931 WITH_MODULES=1
932 AC_DEFINE([HAVE_DLOPEN], [], [Have dlopen based dso])
933 fi
934 ;;
935 esac
936fi
937
938if test "${WITH_MODULES}" = "1"; then
939 TEST_MODULES="ModuleTests"
940fi
941
942AC_SUBST(WITH_MODULES)
943AC_SUBST(MODULE_PLATFORM_LIBS)
944AC_SUBST(MODULE_EXTENSION)
945AC_SUBST(TEST_MODULES)
946
947dnl
Daniel Veillardf985ada2014-10-09 23:59:36 +0800948dnl Check for trio string functions
949dnl
950
951if test "${NEED_TRIO}" = "1" ; then
952 echo Adding trio library for string functions
953 WITH_TRIO=1
954else
955 WITH_TRIO=0
956fi
957AM_CONDITIONAL(WITH_TRIO_SOURCES, test "${NEED_TRIO}" = "1")
958AC_SUBST(WITH_TRIO)
959
960dnl
961dnl Allow to enable/disable various pieces
962dnl
963echo Checking configuration requirements
964
965dnl
966dnl Thread-related stuff
967dnl
968THREAD_LIBS=""
969BASE_THREAD_LIBS=""
970WITH_THREADS=0
971THREAD_CFLAGS=""
972TEST_THREADS=""
973THREADS_W32=""
974WITH_THREAD_ALLOC=0
975
976if test "$with_threads" = "no" ; then
977 echo Disabling multithreaded support
978else
979 echo Enabling multithreaded support
980
Nick Wellnhofer8575c112017-10-09 16:41:58 +0200981 dnl Default to native threads on Windows
Daniel Veillardf985ada2014-10-09 23:59:36 +0800982 case $host_os in
Nick Wellnhofer8575c112017-10-09 16:41:58 +0200983 *mingw*) if test "$with_threads" != "pthread" && test "$with_threads" != "no"; then
Daniel Veillardf985ada2014-10-09 23:59:36 +0800984 WITH_THREADS="1"
985 THREADS_W32="1"
986 THREAD_CFLAGS="$THREAD_CFLAGS -DHAVE_WIN32_THREADS"
987 fi
988 ;;
989 esac
990
991 dnl Use pthread by default in other cases
992 if test -z "$THREADS_W32"; then
993 if test "$with_threads" = "pthread" || test "$with_threads" = "" || test "$with_threads" = "yes" ; then
994 AC_CHECK_HEADER(pthread.h,
995 AC_CHECK_LIB(pthread, pthread_join,[
996 THREAD_LIBS="-lpthread"
Daniel Veillardf985ada2014-10-09 23:59:36 +0800997 AC_DEFINE([HAVE_PTHREAD_H], [], [Define if <pthread.h> is there])
998 WITH_THREADS="1"]))
999 fi
1000 fi
1001
1002 case $host_os in
1003 *cygwin*) THREAD_LIBS=""
1004 ;;
1005 *beos*) WITH_THREADS="1"
1006 THREAD_CFLAGS="$THREAD_CFLAGS -DHAVE_BEOS_THREADS"
1007 ;;
1008 *linux*)
1009 if test "${GCC}" = "yes" ; then
1010 GCC_VERSION=`${CC} --version | head -1 | awk '{print $3}'`
1011 GCC_MAJOR=`echo ${GCC_VERSION} | sed 's+\..*++'`
1012 GCC_MEDIUM=`echo ${GCC_VERSION} | sed 's+[[0-9]]*\.++' | sed 's+\..*++'`
1013 if test "${THREAD_LIBS}" = "-lpthread" ; then
1014 if expr ${GCC_MEDIUM} \> 2 \& ${GCC_MAJOR} = 3 > /dev/null
1015 then
1016 THREAD_LIBS=""
1017 BASE_THREAD_LIBS="-lpthread"
1018 else
1019 if expr ${GCC_MAJOR} \> 3 > /dev/null
1020 then
1021 THREAD_LIBS=""
1022 BASE_THREAD_LIBS="-lpthread"
1023 else
1024 echo old GCC disabling weak symbols for pthread
1025 fi
1026 fi
1027 fi
1028 fi
1029 ;;
1030 esac
1031 if test "$WITH_THREADS" = "1" ; then
1032 THREAD_CFLAGS="$THREAD_CFLAGS -D_REENTRANT"
1033 TEST_THREADS="Threadtests"
1034 fi
1035fi
1036if test "$with_thread_alloc" = "yes" -a "$WITH_THREADS" = "1" ; then
1037 WITH_THREAD_ALLOC=1
1038fi
1039
1040AC_SUBST(THREAD_LIBS)
1041AC_SUBST(BASE_THREAD_LIBS)
1042AC_SUBST(WITH_THREADS)
1043AC_SUBST(THREAD_CFLAGS)
1044AC_SUBST(TEST_THREADS)
1045AC_SUBST(WITH_THREAD_ALLOC)
1046AM_CONDITIONAL([THREADS_W32],[test -n "$THREADS_W32"])
1047
1048dnl
1049dnl xmllint shell history
1050dnl
1051if test "$with_history" = "yes" ; then
1052 echo Enabling xmllint shell history
1053 dnl check for terminal library. this is a very cool solution
1054 dnl from octave's configure.in
1055 unset tcap
1056 for termlib in ncurses curses termcap terminfo termlib; do
1057 AC_CHECK_LIB(${termlib}, tputs, [tcap="-l$termlib"])
1058 test -n "$tcap" && break
1059 done
1060
1061 AC_CHECK_HEADER(readline/history.h,
1062 AC_CHECK_LIB(history, append_history,[
1063 RDL_LIBS="-lhistory"
1064 AC_DEFINE([HAVE_LIBHISTORY], [], [Define if history library is there (-lhistory)])]))
1065 AC_CHECK_HEADER(readline/readline.h,
1066 AC_CHECK_LIB(readline, readline,[
1067 RDL_LIBS="-lreadline $RDL_LIBS $tcap"
1068 AC_DEFINE([HAVE_LIBREADLINE], [], [Define if readline library is there (-lreadline)])], , $tcap))
1069 if test -n "$RDL_DIR" -a -n "$RDL_LIBS"; then
1070 CPPFLAGS="$CPPFLAGS -I${RDL_DIR}/include"
1071 RDL_LIBS="-L${RDL_DIR}/lib $RDL_LIBS"
1072 fi
1073fi
1074
1075dnl
1076dnl Tree functions
1077dnl
1078if test "$with_tree" = "no" ; then
1079 echo Disabling DOM like tree manipulation APIs
1080 WITH_TREE=0
1081else
1082 WITH_TREE=1
1083fi
1084AC_SUBST(WITH_TREE)
1085
Elliott Hughesecdab2a2022-02-23 14:33:50 -08001086if test "$with_ftp" != "yes" ; then
Daniel Veillardf985ada2014-10-09 23:59:36 +08001087 echo Disabling FTP support
1088 WITH_FTP=0
1089 FTP_OBJ=
1090else
1091 WITH_FTP=1
1092 FTP_OBJ=nanoftp.o
1093fi
1094AC_SUBST(WITH_FTP)
1095AC_SUBST(FTP_OBJ)
1096
1097if test "$with_http" = "no" ; then
1098 echo Disabling HTTP support
1099 WITH_HTTP=0
1100 HTTP_OBJ=
1101else
1102 WITH_HTTP=1
1103 HTTP_OBJ=nanohttp.o
1104fi
1105AC_SUBST(WITH_HTTP)
1106AC_SUBST(HTTP_OBJ)
1107
Elliott Hughesecdab2a2022-02-23 14:33:50 -08001108if test "$with_legacy" != "yes" ; then
Daniel Veillardf985ada2014-10-09 23:59:36 +08001109 echo Disabling deprecated APIs
1110 WITH_LEGACY=0
1111else
1112 WITH_LEGACY=1
1113fi
1114AC_SUBST(WITH_LEGACY)
1115
1116if test "$with_reader" = "no" ; then
1117 echo Disabling the xmlReader parsing interface
1118 WITH_READER=0
1119 READER_TEST=
1120else
1121 WITH_READER=1
1122 READER_TEST=Readertests
1123 if test "$with_push" = "no" ; then
1124 echo xmlReader requires Push interface - enabling it
1125 with_push=yes
1126 fi
1127fi
1128AC_SUBST(WITH_READER)
1129AC_SUBST(READER_TEST)
1130
1131if test "$with_writer" = "no" ; then
1132 echo Disabling the xmlWriter saving interface
1133 WITH_WRITER=0
1134# WRITER_TEST=
1135else
1136 WITH_WRITER=1
1137# WRITER_TEST=Writertests
1138 if test "$with_push" = "no" ; then
1139 echo xmlWriter requires Push interface - enabling it
1140 with_push=yes
1141 fi
1142 if test "$with_output" = "no" ; then
1143 echo xmlWriter requires Output interface - enabling it
1144 with_output=yes
1145 fi
1146fi
1147AC_SUBST(WITH_WRITER)
1148#AC_SUBST(WRITER_TEST)
1149
1150if test "$with_pattern" = "no" ; then
1151 echo Disabling the xmlPattern parsing interface
1152 WITH_PATTERN=0
1153 TEST_PATTERN=
1154else
1155 WITH_PATTERN=1
1156 TEST_PATTERN=Patterntests
1157fi
1158AC_SUBST(WITH_PATTERN)
1159AC_SUBST(TEST_PATTERN)
1160
1161if test "$with_sax1" = "no" ; then
1162 echo Disabling the older SAX1 interface
1163 WITH_SAX1=0
1164 TEST_SAX=
1165else
1166 WITH_SAX1=1
1167 TEST_SAX=SAXtests
1168fi
1169AC_SUBST(WITH_SAX1)
1170AM_CONDITIONAL(WITH_SAX1_SOURCES, test "${WITH_TRIO}" = "1")
1171AC_SUBST(TEST_SAX)
1172
1173if test "$with_push" = "no" ; then
1174 echo Disabling the PUSH parser interfaces
1175 WITH_PUSH=0
1176 TEST_PUSH=
1177else
1178 WITH_PUSH=1
1179 TEST_PUSH="XMLPushtests"
1180fi
1181AC_SUBST(WITH_PUSH)
1182AC_SUBST(TEST_PUSH)
1183
1184if test "$with_html" = "no" ; then
1185 echo Disabling HTML support
1186 WITH_HTML=0
1187 HTML_OBJ=
1188 TEST_HTML=
1189else
1190 WITH_HTML=1
1191 HTML_OBJ="HTMLparser.o HTMLtree.o"
1192 TEST_HTML=HTMLtests
1193 if test "$with_push" != "no" ; then
1194 TEST_PHTML=HTMLPushtests
1195 else
1196 TEST_PHTML=
1197 fi
1198fi
1199AC_SUBST(WITH_HTML)
1200AC_SUBST(HTML_OBJ)
1201AC_SUBST(TEST_HTML)
1202AC_SUBST(TEST_PHTML)
1203
1204if test "$with_valid" = "no" ; then
1205 echo Disabling DTD validation support
1206 WITH_VALID=0
1207 TEST_VALID=
1208 TEST_VTIME=
1209else
1210 WITH_VALID=1
1211 TEST_VALID=Validtests
1212 TEST_VTIME=VTimingtests
1213fi
1214AC_SUBST(WITH_VALID)
1215AC_SUBST(TEST_VALID)
1216AC_SUBST(TEST_VTIME)
1217
1218if test "$with_catalog" = "no" ; then
1219 echo Disabling Catalog support
1220 WITH_CATALOG=0
1221 CATALOG_OBJ=
1222 TEST_CATALOG=
1223else
1224 WITH_CATALOG=1
1225 CATALOG_OBJ="catalog.o"
1226 TEST_CATALOG=Catatests
1227fi
1228AC_SUBST(WITH_CATALOG)
1229AC_SUBST(CATALOG_OBJ)
1230AC_SUBST(TEST_CATALOG)
1231
Elliott Hughesecdab2a2022-02-23 14:33:50 -08001232if test "$with_docbook" != "yes" ; then
Daniel Veillardf985ada2014-10-09 23:59:36 +08001233 echo Disabling Docbook support
1234 WITH_DOCB=0
1235 DOCB_OBJ=
1236else
1237 WITH_DOCB=1
1238 DOCB_OBJ="DOCBparser.o"
1239fi
1240AC_SUBST(WITH_DOCB)
1241AC_SUBST(DOCB_OBJ)
1242
1243
1244if test "$with_xptr" = "no" ; then
1245 echo Disabling XPointer support
1246 WITH_XPTR=0
1247 XPTR_OBJ=
1248 TEST_XPTR=
1249else
1250 WITH_XPTR=1
1251 XPTR_OBJ=xpointer.o
1252 TEST_XPTR=XPtrtests
1253 if test "$with_xpath" = "no" ; then
1254 echo XPointer requires XPath support - enabling it
1255 with_xpath=yes
1256 fi
1257fi
1258AC_SUBST(WITH_XPTR)
1259AC_SUBST(XPTR_OBJ)
1260AC_SUBST(TEST_XPTR)
1261
1262if test "$with_c14n" = "no" ; then
1263 echo Disabling C14N support
1264 WITH_C14N=0
1265 C14N_OBJ=
1266 TEST_C14N=
1267else
1268 WITH_C14N=1
1269 C14N_OBJ="c14n.c"
1270 TEST_C14N=C14Ntests
1271 if test "$with_xpath" = "no" ; then
1272 echo C14N requires XPath support - enabling it
1273 with_xpath=yes
1274 fi
1275fi
1276AC_SUBST(WITH_C14N)
1277AC_SUBST(C14N_OBJ)
1278AC_SUBST(TEST_C14N)
1279
1280if test "$with_xinclude" = "no" ; then
1281 echo Disabling XInclude support
1282 WITH_XINCLUDE=0
1283 XINCLUDE_OBJ=
1284 with_xinclude="no"
1285 TEST_XINCLUDE=
1286else
1287 WITH_XINCLUDE=1
1288 XINCLUDE_OBJ=xinclude.o
1289 TEST_XINCLUDE=XIncludetests
1290 if test "$with_xpath" = "no" ; then
1291 echo XInclude requires XPath support - enabling it
1292 with_xpath=yes
1293 fi
1294fi
1295AC_SUBST(WITH_XINCLUDE)
1296AC_SUBST(XINCLUDE_OBJ)
1297AC_SUBST(TEST_XINCLUDE)
1298
1299if test "$with_xptr" = "" -a "$with_xpath" = "no" ; then
1300 with_xptr=no
1301fi
1302
1303if test "$with_schematron" = "" -a "$with_xpath" = "no" ; then
1304 with_schematron=no
1305fi
1306
1307if test "$with_schematron" = "no" ; then
1308 echo "Disabling Schematron support"
1309 WITH_SCHEMATRON=0
1310 TEST_SCHEMATRON=
1311else
1312 echo "Enabled Schematron support"
1313 WITH_SCHEMATRON=1
1314 TEST_SCHEMATRON="Schematrontests"
1315 with_xpath=yes
1316 with_pattern=yes
1317 with_schematron=yes
1318fi
1319AC_SUBST(WITH_SCHEMATRON)
1320AC_SUBST(TEST_SCHEMATRON)
1321
1322if test "$with_xpath" = "no" ; then
1323 echo Disabling XPATH support
1324 WITH_XPATH=0
1325 XPATH_OBJ=
1326 TEST_XPATH=
1327else
1328 WITH_XPATH=1
1329 XPATH_OBJ=xpath.o
1330 TEST_XPATH=XPathtests
1331fi
1332AC_SUBST(WITH_XPATH)
1333AC_SUBST(XPATH_OBJ)
1334AC_SUBST(TEST_XPATH)
1335
1336dnl
1337dnl output functions
1338dnl
1339if test "$with_output" = "no" ; then
1340 echo Disabling serialization/saving support
1341 WITH_OUTPUT=0
1342else
1343 WITH_OUTPUT=1
1344fi
1345AC_SUBST(WITH_OUTPUT)
1346
1347WITH_ICONV=0
1348if test "$with_iconv" = "no" ; then
1349 echo Disabling ICONV support
1350else
1351 if test "$with_iconv" != "yes" -a "$with_iconv" != "" ; then
1352 CPPFLAGS="${CPPFLAGS} -I$with_iconv/include"
1353 # Export this since our headers include iconv.h
1354 XML_INCLUDEDIR="${XML_INCLUDEDIR} -I$with_iconv/include"
1355 ICONV_LIBS="-L$with_iconv/lib"
1356 fi
1357
1358 AC_CHECK_HEADER(iconv.h,
1359 AC_MSG_CHECKING(for iconv)
1360 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>
1361#include <iconv.h>]],[[
1362iconv_t cd = iconv_open ("","");
1363iconv (cd, NULL, NULL, NULL, NULL);]])],[
1364 AC_MSG_RESULT(yes)
1365 WITH_ICONV=1],[
1366 AC_MSG_RESULT(no)
1367 AC_MSG_CHECKING(for iconv in -liconv)
1368
1369 _ldflags="${LDFLAGS}"
1370 _libs="${LIBS}"
1371 LDFLAGS="${LDFLAGS} ${ICONV_LIBS}"
1372 LIBS="${LIBS} -liconv"
1373
1374 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>
1375#include <iconv.h>]],[[
1376iconv_t cd = iconv_open ("","");
1377iconv (cd, NULL, NULL, NULL, NULL);]])],[
1378 AC_MSG_RESULT(yes)
1379 WITH_ICONV=1
1380 ICONV_LIBS="${ICONV_LIBS} -liconv"
1381 LIBS="${_libs}"
1382 LDFLAGS="${_ldflags}"],[
1383 AC_MSG_RESULT(no)
1384 LIBS="${_libs}"
1385 LDFLAGS="${_ldflags}"])]))
1386
1387 if test "$WITH_ICONV" = "1" ; then
1388 AC_MSG_CHECKING([for iconv declaration])
1389 AC_CACHE_VAL(xml_cv_iconv_arg2, [
1390 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>
1391#include <iconv.h>
1392extern
1393#ifdef __cplusplus
1394"C"
1395#endif
1396#if defined(__STDC__) || defined(__cplusplus)
1397size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
1398#else
1399size_t iconv();
1400#endif
1401]], [])], xml_cv_iconv_arg2="", xml_cv_iconv_arg2="const")])
1402
1403 xml_cv_iconv_decl="extern size_t iconv (iconv_t cd, $xml_cv_iconv_arg2 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
1404 AC_MSG_RESULT([${xml_xxx:-
1405 }$xml_cv_iconv_decl])
1406 AC_DEFINE_UNQUOTED(ICONV_CONST, $xml_cv_iconv_arg2,
1407 [Define as const if the declaration of iconv() needs const.])
1408 fi
1409fi
1410case "$host" in
1411 *mingw*) M_LIBS=""
1412 ;;
1413 *beos*) M_LIBS=""
1414 ;;
1415 *haiku*) M_LIBS=""
1416 ;;
1417 *) M_LIBS="-lm"
1418 ;;
1419esac
Daniel Veillardf985ada2014-10-09 23:59:36 +08001420AC_SUBST(WITH_ICONV)
1421
1422WITH_ICU=0
1423ICU_LIBS=""
1424if test "$with_icu" != "yes" ; then
1425 echo Disabling ICU support
1426else
Stewart Brodie3d75c2e2016-05-09 10:11:05 +08001427 # Try pkg-config first so that static linking works.
1428 # If this succeeeds, we ignore the WITH_ICU directory.
1429 PKG_CHECK_MODULES([ICU],[icu-i18n],
1430 [have_libicu=yes],
1431 [have_libicu=no])
David Kilzer6e3af872016-01-05 16:11:28 -08001432
Stewart Brodie3d75c2e2016-05-09 10:11:05 +08001433 # If pkg-config failed, fall back to AC_CHECK_LIB. This
1434 # will not pick up the necessary LIBS flags for liblzma's
1435 # private dependencies, though, so static linking may fail.
1436 if test "x$have_libicu" = "xno"; then
1437 ICU_CONFIG=icu-config
1438 if ${ICU_CONFIG} --cflags >/dev/null 2>&1
1439 then
1440 ICU_LIBS=`${ICU_CONFIG} --ldflags`
1441 have_libicu=yes
1442 echo Enabling ICU support
1443 else
1444 if test "$with_icu" != "yes" -a "$with_iconv" != "" ; then
1445 CPPFLAGS="${CPPFLAGS} -I$with_icu"
1446 # Export this since our headers include icu.h
1447 XML_INCLUDEDIR="${XML_INCLUDEDIR} -I$with_icu"
1448 fi
David Kilzer6e3af872016-01-05 16:11:28 -08001449
Stewart Brodie3d75c2e2016-05-09 10:11:05 +08001450 AC_CHECK_HEADER(unicode/ucnv.h,
1451 AC_MSG_CHECKING(for icu)
Haibo Huangf0a546b2020-09-01 20:28:19 -07001452 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <unicode/ucnv.h>]], [[
1453 UConverter *utf = ucnv_open("UTF-8", NULL);]])],[
David Kilzer6e3af872016-01-05 16:11:28 -08001454 AC_MSG_RESULT(yes)
Stewart Brodie3d75c2e2016-05-09 10:11:05 +08001455 have_libicu=yes],[
David Kilzer6e3af872016-01-05 16:11:28 -08001456 AC_MSG_RESULT(no)
Stewart Brodie3d75c2e2016-05-09 10:11:05 +08001457 AC_MSG_CHECKING(for icu in -licucore)
1458
1459 _ldflags="${LDFLAGS}"
1460 _libs="${LIBS}"
1461 LDFLAGS="${LDFLAGS} ${ICU_LIBS}"
1462 LIBS="${LIBS} -licucore"
1463
Haibo Huangf0a546b2020-09-01 20:28:19 -07001464 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <unicode/ucnv.h>]], [[
1465 UConverter *utf = ucnv_open("UTF-8", NULL);]])],[
Stewart Brodie3d75c2e2016-05-09 10:11:05 +08001466 AC_MSG_RESULT(yes)
1467 have_libicu=yes
1468 ICU_LIBS="${ICU_LIBS} -licucore"
1469 LIBS="${_libs}"
1470 LDFLAGS="${_ldflags}"],[
1471 AC_MSG_RESULT(no)
1472 LIBS="${_libs}"
David Kilzer6e3af872016-01-05 16:11:28 -08001473 LDFLAGS="${_ldflags}"])]))
Stewart Brodie3d75c2e2016-05-09 10:11:05 +08001474 fi
1475 fi
1476
1477 # Found the library via either method?
1478 if test "x$have_libicu" = "xyes"; then
1479 WITH_ICU=1
Daniel Veillardf985ada2014-10-09 23:59:36 +08001480 fi
1481fi
Haibo Huangcfd91dc2020-07-30 23:01:33 -07001482XML_LIBS="-lxml2"
1483XML_PRIVATE_LIBS="$Z_LIBS $LZMA_LIBS $THREAD_LIBS $ICONV_LIBS $ICU_LIBS $M_LIBS $LIBS"
David Kilzer6e3af872016-01-05 16:11:28 -08001484XML_LIBTOOLLIBS="libxml2.la"
Daniel Veillardf985ada2014-10-09 23:59:36 +08001485AC_SUBST(WITH_ICU)
Daniel Veillardf985ada2014-10-09 23:59:36 +08001486
1487WITH_ISO8859X=1
1488if test "$WITH_ICONV" != "1" ; then
1489if test "$with_iso8859x" = "no" ; then
1490 echo Disabling ISO8859X support
1491 WITH_ISO8859X=0
1492fi
1493fi
1494AC_SUBST(WITH_ISO8859X)
1495
1496if test "$with_schemas" = "no" ; then
1497 echo "Disabling Schemas/Relax-NG support"
1498 WITH_SCHEMAS=0
1499 TEST_SCHEMAS=
1500else
1501 echo "Enabled Schemas/Relax-NG support"
1502 WITH_SCHEMAS=1
1503 TEST_SCHEMAS="Schemastests Relaxtests"
1504 if test "$PYTHON_INCLUDES" != "" ; then
1505 PYTHON_TESTS="$PYTHON_TESTS RelaxNGPythonTests SchemasPythonTests"
1506 fi
1507 with_regexps=yes
1508fi
1509AC_SUBST(WITH_SCHEMAS)
1510AC_SUBST(TEST_SCHEMAS)
1511
1512if test "$with_regexps" = "no" ; then
1513 echo Disabling Regexps support
1514 WITH_REGEXPS=0
1515 TEST_REGEXPS=
1516else
1517 WITH_REGEXPS=1
1518 TEST_REGEXPS="Regexptests Automatatests"
1519fi
1520AC_SUBST(WITH_REGEXPS)
1521AC_SUBST(TEST_REGEXPS)
1522
1523if test "$with_debug" = "no" ; then
1524 echo Disabling DEBUG support
1525 WITH_DEBUG=0
1526 DEBUG_OBJ=
1527 TEST_DEBUG=
1528else
1529 WITH_DEBUG=1
1530 DEBUG_OBJ=debugXML.o
1531 TEST_DEBUG=Scripttests
1532fi
1533AC_SUBST(WITH_DEBUG)
1534AC_SUBST(DEBUG_OBJ)
1535AC_SUBST(TEST_DEBUG)
1536
1537if test "$with_mem_debug" = "yes" ; then
1538 if test "$with_thread_alloc" = "yes" ; then
1539 echo Disabling memory debug - cannot use mem-debug with thread-alloc!
1540 WITH_MEM_DEBUG=0
1541 else
1542 echo Enabling memory debug support
1543 WITH_MEM_DEBUG=1
1544 fi
1545else
1546 WITH_MEM_DEBUG=0
1547fi
1548AC_SUBST(WITH_MEM_DEBUG)
1549
1550if test "$with_run_debug" = "yes" ; then
1551 echo Enabling runtime debug support
1552 WITH_RUN_DEBUG=1
1553else
1554 WITH_RUN_DEBUG=0
1555fi
1556AC_SUBST(WITH_RUN_DEBUG)
1557
1558WIN32_EXTRA_LIBADD=
1559WIN32_EXTRA_LDFLAGS=
1560CYGWIN_EXTRA_LDFLAGS=
1561CYGWIN_EXTRA_PYTHON_LIBADD=
1562WIN32_EXTRA_PYTHON_LIBADD=
1563case "$host" in
1564 *-*-mingw*)
1565 CPPFLAGS="$CPPFLAGS -DWIN32"
1566 WIN32_EXTRA_LIBADD="-lws2_32"
1567 WIN32_EXTRA_LDFLAGS="-no-undefined"
Daniel Veillardf985ada2014-10-09 23:59:36 +08001568 if test "${PYTHON}" != ""
1569 then
Haibo Huangcfd91dc2020-07-30 23:01:33 -07001570 case "$host" in
1571 *-w64-mingw*)
1572 WIN32_EXTRA_PYTHON_LIBADD="-shrext .pyd -L${pythondir}/../../lib -lpython${PYTHON_VERSION}"
1573 ;;
1574 *)
1575 WIN32_EXTRA_PYTHON_LIBADD="-L${pythondir}/../../libs -lpython$(echo ${PYTHON_VERSION} | tr -d .)"
1576 ;;
1577 esac
Daniel Veillardf985ada2014-10-09 23:59:36 +08001578 fi
1579 ;;
1580 *-*-cygwin*)
1581 CYGWIN_EXTRA_LDFLAGS="-no-undefined"
1582 if test "${PYTHON}" != ""
1583 then
1584 CYGWIN_EXTRA_PYTHON_LIBADD="-L/usr/lib/python${PYTHON_VERSION}/config -lpython${PYTHON_VERSION}"
1585 fi
1586 ;;
1587esac
1588AC_SUBST(WIN32_EXTRA_LIBADD)
1589AC_SUBST(WIN32_EXTRA_LDFLAGS)
1590AC_SUBST(WIN32_EXTRA_PYTHON_LIBADD)
1591AC_SUBST(CYGWIN_EXTRA_LDFLAGS)
1592AC_SUBST(CYGWIN_EXTRA_PYTHON_LIBADD)
1593
1594dnl Checking the standard string functions availability
1595dnl
1596dnl Note mingw* has C99 implementation that produce expected xml numbers
1597dnl if code use {v}snprintf functions.
1598dnl If you like to activate at run-time C99 compatible number output
1599dnl see release note for mingw runtime 3.15:
1600dnl http://sourceforge.net/project/shownotes.php?release_id=24832
1601dnl
1602dnl Also *win32*config.h files redefine them for various MSC compilers.
1603dnl
Haibo Huangcfd91dc2020-07-30 23:01:33 -07001604dnl So do not redefine {v}snprintf to _{v}snprintf like following:
Daniel Veillardf985ada2014-10-09 23:59:36 +08001605dnl AC_DEFINE([snprintf],[_snprintf],[Win32 Std C name mangling work-around])
1606dnl AC_DEFINE([vsnprintf],[_vsnprintf],[Win32 Std C name mangling work-around])
1607dnl and do not redefine those functions is C-source files.
1608dnl
1609AC_CHECK_FUNCS(printf sprintf fprintf snprintf vfprintf vsprintf vsnprintf sscanf,,
1610 NEED_TRIO=1)
1611
1612if test "$with_coverage" = "yes" -a "${GCC}" = "yes"
1613then
1614 echo Enabling code coverage for GCC
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +01001615 EXTRA_CFLAGS="$EXTRA_CFLAGS -fprofile-arcs -ftest-coverage"
Daniel Veillardf985ada2014-10-09 23:59:36 +08001616 LDFLAGS="$LDFLAGS -fprofile-arcs -ftest-coverage"
1617else
1618 echo Disabling code coverage for GCC
1619fi
1620
1621AC_SUBST(CPPFLAGS)
Nick Wellnhofer8cb8e312017-11-12 18:22:23 +01001622AC_SUBST(EXTRA_CFLAGS)
Daniel Veillardf985ada2014-10-09 23:59:36 +08001623AC_SUBST(LDFLAGS)
1624AC_SUBST(XML_CFLAGS)
1625
1626AC_SUBST(XML_LIBDIR)
1627AC_SUBST(XML_LIBS)
Haibo Huangcfd91dc2020-07-30 23:01:33 -07001628AC_SUBST(XML_PRIVATE_LIBS)
Daniel Veillardf985ada2014-10-09 23:59:36 +08001629AC_SUBST(XML_LIBTOOLLIBS)
1630AC_SUBST(ICONV_LIBS)
David Kilzer6e3af872016-01-05 16:11:28 -08001631AC_SUBST(ICU_LIBS)
Daniel Veillardf985ada2014-10-09 23:59:36 +08001632AC_SUBST(XML_INCLUDEDIR)
1633AC_SUBST(HTML_DIR)
Daniel Veillardf985ada2014-10-09 23:59:36 +08001634AC_SUBST(PYTHON)
1635AC_SUBST(PYTHON_VERSION)
1636AC_SUBST(PYTHON_INCLUDES)
1637AC_SUBST(PYTHON_SITE_PACKAGES)
1638
1639AC_SUBST(M_LIBS)
1640AC_SUBST(RDL_LIBS)
1641
1642dnl for the spec file
1643RELDATE=`date +'%a %b %e %Y'`
1644AC_SUBST(RELDATE)
1645AC_SUBST(PYTHON_TESTS)
1646
1647rm -f COPYING.LIB COPYING
1648ln -s $srcdir/Copyright COPYING
1649
1650# keep on one line for cygwin c.f. #130896
Haibo Huangcfd91dc2020-07-30 23:01:33 -07001651AC_CONFIG_FILES([libxml2.spec:libxml.spec.in Makefile include/Makefile include/libxml/Makefile doc/Makefile doc/examples/Makefile doc/devhelp/Makefile example/Makefile fuzz/Makefile python/Makefile python/tests/Makefile xstc/Makefile include/libxml/xmlversion.h libxml-2.0.pc libxml-2.0-uninstalled.pc libxml2-config.cmake])
Roumen Petrov974db362014-10-16 12:07:43 +08001652AC_CONFIG_FILES([python/setup.py], [chmod +x python/setup.py])
1653AC_CONFIG_FILES([xml2-config], [chmod +x xml2-config])
Daniel Veillardf985ada2014-10-09 23:59:36 +08001654AC_OUTPUT
1655
Daniel Veillardf985ada2014-10-09 23:59:36 +08001656echo Done configuring