1dnl Process this file with autoconf to produce a configure script. 2AC_INIT(entities.c) 3AM_CONFIG_HEADER(config.h) 4AC_CONFIG_MACRO_DIR([m4]) 5AC_CANONICAL_HOST 6 7LIBXML_MAJOR_VERSION=2 8LIBXML_MINOR_VERSION=7 9LIBXML_MICRO_VERSION=7 10LIBXML_MICRO_VERSION_SUFFIX= 11LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX 12LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION 13 14LIBXML_VERSION_NUMBER=`expr $LIBXML_MAJOR_VERSION \* 10000 + $LIBXML_MINOR_VERSION \* 100 + $LIBXML_MICRO_VERSION` 15 16if test -f CVS/Entries ; then 17 extra=`grep ChangeLog CVS/Entries | grep -v LIBXML | sed -e s\%/ChangeLog/1\.%% -e s\%/.*$%%` 18 echo extra=$extra 19 if test "$extra" != "" 20 then 21 LIBXML_VERSION_EXTRA="-CVS$extra" 22 fi 23else if test -d .svn ; then 24 extra=`svn info | grep Revision | sed 's+Revision: ++'` 25 echo extra=$extra 26 if test "$extra" != "" 27 then 28 LIBXML_VERSION_EXTRA="-SVN$extra" 29 fi 30else if test -d .git ; then 31 extra=`git describe | sed 's+LIBXML[[0-9.]]*-++'` 32 echo extra=$extra 33 if test "$extra" != "" 34 then 35 LIBXML_VERSION_EXTRA="-GIT$extra" 36 fi 37fi 38fi 39fi 40AC_SUBST(LIBXML_MAJOR_VERSION) 41AC_SUBST(LIBXML_MINOR_VERSION) 42AC_SUBST(LIBXML_MICRO_VERSION) 43AC_SUBST(LIBXML_VERSION) 44AC_SUBST(LIBXML_VERSION_INFO) 45AC_SUBST(LIBXML_VERSION_NUMBER) 46AC_SUBST(LIBXML_VERSION_EXTRA) 47 48VERSION=${LIBXML_VERSION} 49 50AM_INIT_AUTOMAKE(libxml2, $VERSION) 51 52dnl Checks for programs. 53AC_PROG_CC 54AC_PROG_INSTALL 55AC_PROG_CPP 56AC_PATH_PROG(RM, rm, /bin/rm) 57AC_PATH_PROG(MV, mv, /bin/mv) 58AC_PATH_PROG(TAR, tar, /bin/tar) 59AC_PATH_PROG(PERL, perl, /usr/bin/perl) 60AC_PATH_PROG(WGET, wget, /usr/bin/wget) 61AC_PATH_PROG(XMLLINT, xmllint, /usr/bin/xmllint) 62AC_PATH_PROG(XSLTPROC, xsltproc, /usr/bin/xsltproc) 63 64dnl Make sure we have an ANSI compiler 65AM_C_PROTOTYPES 66test "x$U" != "x" && AC_MSG_ERROR(Compiler not ANSI compliant) 67 68AC_LIBTOOL_WIN32_DLL 69AM_PROG_LIBTOOL 70 71dnl 72dnl if the system support linker version scripts for symbol versioning 73dnl then add it 74dnl 75VERSION_SCRIPT_FLAGS= 76# lt_cv_prog_gnu_ld is from libtool 2.+ 77if test "$lt_cv_prog_gnu_ld" = yes; then 78 VERSION_SCRIPT_FLAGS=-Wl,--version-script= 79else 80 case $host in 81 *-*-sunos*) VERSION_SCRIPT_FLAGS="-Wl,-M -Wl,";; 82 esac 83fi 84AC_SUBST(VERSION_SCRIPT_FLAGS) 85AM_CONDITIONAL([USE_VERSION_SCRIPT], [test -n "$VERSION_SCRIPT_FLAGS"]) 86 87dnl 88dnl We process the AC_ARG_WITH first so that later we can modify 89dnl some of them to try to prevent impossible combinations. This 90dnl also allows up so alphabetize the choices 91dnl 92 93dnl 94dnl zlib option might change flags, so we save them initially 95dnl 96_cppflags="${CPPFLAGS}" 97_ldflags="${LDFLAGS}" 98 99AC_ARG_WITH(c14n, 100[ --with-c14n add the Canonicalization support (on)]) 101AC_ARG_WITH(catalog, 102[ --with-catalog add the Catalog support (on)]) 103AC_ARG_WITH(debug, 104[ --with-debug add the debugging module (on)]) 105AC_ARG_WITH(docbook, 106[ --with-docbook add Docbook SGML support (on)]) 107AC_ARG_WITH(fexceptions, 108[ --with-fexceptions add GCC flag -fexceptions for C++ exceptions (off)]) 109AC_ARG_WITH(ftp, 110[ --with-ftp add the FTP support (on)]) 111AC_ARG_WITH(history, 112[ --with-history add history support to xmllint shell(off)]) 113AC_ARG_WITH(html, 114[ --with-html add the HTML support (on)]) 115dnl Specific dir for HTML output ? 116AC_ARG_WITH(html-dir, AC_HELP_STRING([--with-html-dir=path], 117 [path to base html directory, default $datadir/doc/html]), 118 [HTML_DIR=$withval], [HTML_DIR='$(datadir)/doc']) 119 120AC_ARG_WITH(html-subdir, AC_HELP_STRING([--with-html-subdir=path], 121 [directory used under html-dir, default $PACKAGE-$VERSION/html]), 122 [test "x$withval" != "x" && HTML_DIR="$HTML_DIR/$withval"], 123 [HTML_DIR="$HTML_DIR/\$(PACKAGE)-\$(VERSION)/html"]) 124AC_SUBST(HTML_DIR) 125AC_ARG_WITH(http, 126[ --with-http add the HTTP support (on)]) 127AC_ARG_WITH(iconv, 128[ --with-iconv[[=DIR]] add ICONV support (on)]) 129AC_ARG_WITH(iso8859x, 130[ --with-iso8859x add ISO8859X support if no iconv (on)]) 131AC_ARG_WITH(legacy, 132[ --with-legacy add deprecated APIs for compatibility (on)]) 133AC_ARG_WITH(mem_debug, 134[ --with-mem-debug add the memory debugging module (off)]) 135AC_ARG_WITH(minimum, 136[ --with-minimum build a minimally sized library (off)]) 137AC_ARG_WITH(output, 138[ --with-output add the serialization support (on)]) 139AC_ARG_WITH(pattern, 140[ --with-pattern add the xmlPattern selection interface (on)]) 141AC_ARG_WITH(push, 142[ --with-push add the PUSH parser interfaces (on)]) 143AC_ARG_WITH(python, 144[ --with-python[[=DIR]] build Python bindings if found]) 145AC_ARG_WITH(reader, 146[ --with-reader add the xmlReader parsing interface (on)]) 147AC_ARG_WITH(readline, 148[ --with-readline=DIR use readline in DIR],[ 149 if test "$withval" != "no" -a "$withval" != "yes"; then 150 RDL_DIR=$withval 151 CPPFLAGS="${CPPFLAGS} -I$withval/include" 152 LDFLAGS="${LDFLAGS} -L$withval/lib" 153 fi 154]) 155AC_ARG_WITH(regexps, 156[ --with-regexps add Regular Expressions support (on)]) 157AC_ARG_WITH(run_debug, 158[ --with-run-debug add the runtime debugging module (off)]) 159AC_ARG_WITH(sax1, 160[ --with-sax1 add the older SAX1 interface (on)]) 161AC_ARG_WITH(schemas, 162[ --with-schemas add Relax-NG and Schemas support (on)]) 163AC_ARG_WITH(schematron, 164[ --with-schematron add Schematron support (on)]) 165AC_ARG_WITH(threads, 166[ --with-threads add multithread support(on)]) 167AC_ARG_WITH(thread-alloc, 168[ --with-thread-alloc add per-thread memory(off)]) 169AC_ARG_WITH(tree, 170[ --with-tree add the DOM like tree manipulation APIs (on)]) 171AC_ARG_WITH(valid, 172[ --with-valid add the DTD validation support (on)]) 173AC_ARG_WITH(writer, 174[ --with-writer add the xmlWriter saving interface (on)]) 175AC_ARG_WITH(xinclude, 176[ --with-xinclude add the XInclude support (on)]) 177AC_ARG_WITH(xpath, 178[ --with-xpath add the XPATH support (on)]) 179AC_ARG_WITH(xptr, 180[ --with-xptr add the XPointer support (on)]) 181AC_ARG_WITH(modules, 182[ --with-modules add the dynamic modules support (on)]) 183AC_ARG_WITH(zlib, 184[ --with-zlib[[=DIR]] use libz in DIR],[ 185 if test "$withval" != "no" -a "$withval" != "yes"; then 186 Z_DIR=$withval 187 CPPFLAGS="${CPPFLAGS} -I$withval/include" 188 LDFLAGS="${LDFLAGS} -L$withval/lib" 189 fi 190]) 191AC_ARG_WITH(coverage, 192[ --with-coverage build for code coverage with GCC (off)]) 193 194AC_ARG_ENABLE(rebuild-docs, 195[ --enable-rebuild-docs[[=yes/no]] rebuild some generated docs [[default=yes]]]) 196AM_CONDITIONAL([REBUILD_DOCS], [test "$enable_rebuild_docs" = "no"]) 197 198dnl 199dnl hard dependancies on options 200dnl 201if test "$with_schemas" = "yes" 202then 203 with_pattern=yes 204 with_regexps=yes 205fi 206if test "$with_schematron" = "yes" 207then 208 with_pattern=yes 209 with_xpath=yes 210fi 211if test "$with_reader" = "yes" 212then 213 with_push=yes 214fi 215if test "$with_xptr" = "yes" 216then 217 with_xpath=yes 218fi 219dnl 220dnl option to build a minimal libxml2 library 221dnl 222if test "$with_minimum" = "yes" 223then 224 echo "Configuring for a minimal library" 225 if test "$with_c14n" = "" 226 then 227 with_c14n=no 228 fi 229 if test "$with_catalog" = "" 230 then 231 with_catalog=no 232 fi 233 echo So far so good! 234 if test "$with_debug" = "" 235 then 236 with_debug=no 237 fi 238 if test "$with_docbook" = "" 239 then 240 with_docbook=no 241 fi 242 if test "$with_fexceptions" = "" 243 then 244 with_fexceptions=no 245 fi 246 if test "$with_ftp" = "" 247 then 248 with_ftp=no 249 fi 250 if test "$with_history" = "" 251 then 252 with_history=no 253 fi 254 if test "$with_html" = "" 255 then 256 with_html=no 257 fi 258 if test "$with_http" = "" 259 then 260 with_http=no 261 fi 262 if test "$with_iconv" = "" 263 then 264 with_iconv=no 265 fi 266 if test "$with_iso8859x" = "" 267 then 268 with_iso8859x=no 269 fi 270 if test "$with_legacy" = "" 271 then 272 with_legacy=no 273 fi 274 if test "$with_mem_debug" = "" 275 then 276 with_mem_debug=no 277 fi 278 if test "$with_output" = "" 279 then 280 with_output=no 281 fi 282 if test "$with_pattern" = "" 283 then 284 with_pattern=no 285 fi 286 if test "$with_push" = "" 287 then 288 with_push=no 289 fi 290 if test "$with_python" = "" 291 then 292 with_python=no 293 fi 294 if test "$with_reader" = "" 295 then 296 with_reader=no 297 fi 298 if test "$with_readline" = "" 299 then 300 with_readline=no 301 fi 302 if test "$with_regexps" = "" 303 then 304 with_regexps=no 305 fi 306 if test "$with_run_debug" = "" 307 then 308 with_run_debug=no 309 fi 310 if test "$with_sax1" = "" 311 then 312 with_sax1=no 313 fi 314 if test "$with_schemas" = "" 315 then 316 with_schemas=no 317 fi 318 if test "$with_schematron" = "" 319 then 320 with_schematron=no 321 fi 322 if test "$with_threads" = "" 323 then 324 with_threads=no 325 fi 326 if test "$with_thread_alloc" = "" 327 then 328 with_thread_alloc=no 329 fi 330 if test "$with_tree" = "" 331 then 332 with_tree=no 333 fi 334 if test "$with_valid" = "" 335 then 336 with_valid=no 337 fi 338 if test "$with_writer" = "" 339 then 340 with_writer=no 341 fi 342 if test "$with_xinclude" = "" 343 then 344 with_xinclude=no 345 fi 346 if test "$with_xpath" = "" 347 then 348 with_xpath=no 349 fi 350 if test "$with_xptr" = "" 351 then 352 with_xptr=no 353 fi 354 if test "$with_zlib" = "" 355 then 356 with_zlib=no 357 fi 358 if test "$with_modules" = "" 359 then 360 with_modules=no 361 fi 362fi 363 364echo Checking zlib 365 366dnl Checks for zlib library. 367 368WITH_ZLIB=0 369if test "$with_zlib" = "no"; then 370 echo "Disabling compression support" 371else 372 AC_CHECK_HEADERS(zlib.h, 373 AC_CHECK_LIB(z, gzread,[ 374 AC_DEFINE([HAVE_LIBZ], [1], [Have compression library]) 375 WITH_ZLIB=1 376 if test "x${Z_DIR}" != "x"; then 377 Z_CFLAGS="-I${Z_DIR}/include" 378 Z_LIBS="-L${Z_DIR}/lib -lz" 379 [case ${host} in 380 *-*-solaris*) 381 Z_LIBS="-L${Z_DIR}/lib -R${Z_DIR}/lib -lz" 382 ;; 383 esac] 384 else 385 Z_LIBS="-lz" 386 fi])) 387fi 388 389AC_SUBST(Z_CFLAGS) 390AC_SUBST(Z_LIBS) 391AC_SUBST(WITH_ZLIB) 392 393CPPFLAGS=${_cppflags} 394LDFLAGS=${_ldflags} 395 396echo Checking headers 397 398dnl Checks for header files. 399AC_HEADER_DIRENT 400AC_HEADER_STDC 401AC_CHECK_HEADERS([fcntl.h]) 402AC_CHECK_HEADERS([unistd.h]) 403AC_CHECK_HEADERS([ctype.h]) 404AC_CHECK_HEADERS([dirent.h]) 405AC_CHECK_HEADERS([errno.h]) 406AC_CHECK_HEADERS([malloc.h]) 407AC_CHECK_HEADERS([stdarg.h]) 408AC_CHECK_HEADERS([sys/stat.h]) 409AC_CHECK_HEADERS([sys/types.h]) 410AC_CHECK_HEADERS([stdint.h]) 411AC_CHECK_HEADERS([inttypes.h.h]) 412AC_CHECK_HEADERS([time.h]) 413AC_CHECK_HEADERS([ansidecl.h]) 414AC_CHECK_HEADERS([ieeefp.h]) 415AC_CHECK_HEADERS([nan.h]) 416AC_CHECK_HEADERS([math.h]) 417AC_CHECK_HEADERS([limits.h]) 418AC_CHECK_HEADERS([fp_class.h]) 419AC_CHECK_HEADERS([float.h]) 420AC_CHECK_HEADERS([stdlib.h]) 421AC_CHECK_HEADERS([sys/socket.h], [], [], 422[#if HAVE_SYS_TYPES_H 423# include <sys/types.h> 424# endif 425]) 426AC_CHECK_HEADERS([netinet/in.h], [], [], 427[#if HAVE_SYS_TYPES_H 428# include <sys/types.h> 429# endif 430]) 431AC_CHECK_HEADERS([arpa/inet.h], [], [], 432[#if HAVE_SYS_TYPES_H 433# include <sys/types.h> 434# endif 435#if HAVE_ARPA_INET_H 436# include <arpa/inet.h> 437# endif 438]) 439AC_CHECK_HEADERS([netdb.h]) 440AC_CHECK_HEADERS([sys/time.h]) 441AC_CHECK_HEADERS([sys/select.h]) 442AC_CHECK_HEADERS([poll.h]) 443AC_CHECK_HEADERS([sys/mman.h]) 444AC_CHECK_HEADERS([sys/timeb.h]) 445AC_CHECK_HEADERS([signal.h]) 446AC_CHECK_HEADERS([arpa/nameser.h], [], [], 447[#if HAVE_SYS_TYPES_H 448# include <sys/types.h> 449# endif 450]) 451AC_CHECK_HEADERS([resolv.h], [], [], 452[#if HAVE_SYS_TYPES_H 453# include <sys/types.h> 454# endif 455#if HAVE_NETINET_IN_H 456# include <netinet/in.h> 457# endif 458#if HAVE_ARPA_NAMESER_H 459# include <arpa/nameser.h> 460# endif 461]) 462AC_CHECK_HEADERS([dl.h]) 463AC_CHECK_HEADERS([dlfcn.h]) 464 465 466echo Checking libraries 467 468dnl Checks for library functions. 469AC_FUNC_STRFTIME 470AC_CHECK_FUNCS(strdup strndup strerror) 471AC_CHECK_FUNCS(finite isnand fp_class class fpclass) 472AC_CHECK_FUNCS(strftime localtime gettimeofday ftime) 473AC_CHECK_FUNCS(stat _stat signal) 474 475dnl Checking the standard string functions availability 476AC_CHECK_FUNCS(printf sprintf fprintf snprintf vfprintf vsprintf vsnprintf sscanf,, 477 NEED_TRIO=1) 478 479dnl Checking for va_copy availability 480AC_MSG_CHECKING([for va_copy]) 481AC_TRY_LINK([#include <stdarg.h> 482va_list ap1,ap2;], [va_copy(ap1,ap2);], 483have_va_copy=yes, 484have_va_copy=no) 485AC_MSG_RESULT($have_va_copy) 486if test x"$have_va_copy" = x"yes"; then 487 AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available]) 488else 489 AC_MSG_CHECKING([for __va_copy]) 490 AC_TRY_LINK([#include <stdarg.h> 491 va_list ap1,ap2;], [__va_copy(ap1,ap2);], 492 have___va_copy=yes, 493 have___va_copy=no) 494 AC_MSG_RESULT($have___va_copy) 495 if test x"$have___va_copy" = x"yes"; then 496 AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available]) 497 fi 498fi 499 500dnl Checks for inet libraries: 501AC_SEARCH_LIBS(gethostent, [nsl]) 502AC_SEARCH_LIBS(setsockopt, [socket net network]) 503AC_SEARCH_LIBS(connect, [inet]) 504 505dnl Determine what socket length (socklen_t) data type is 506AC_MSG_CHECKING([for type of socket length (socklen_t)]) 507AC_TRY_COMPILE2([ 508#include <stddef.h> 509#include <sys/types.h> 510#include <sys/socket.h>],[ 511(void)getsockopt (1, 1, 1, NULL, (socklen_t *)NULL)],[ 512 AC_MSG_RESULT(socklen_t *) 513 XML_SOCKLEN_T=socklen_t],[ 514 AC_TRY_COMPILE2([ 515#include <stddef.h> 516#include <sys/types.h> 517#include <sys/socket.h>],[ 518(void)getsockopt (1, 1, 1, NULL, (size_t *)NULL)],[ 519 AC_MSG_RESULT(size_t *) 520 XML_SOCKLEN_T=size_t],[ 521 AC_TRY_COMPILE2([ 522#include <stddef.h> 523#include <sys/types.h> 524#include <sys/socket.h>],[ 525(void)getsockopt (1, 1, 1, NULL, (int *)NULL)],[ 526 AC_MSG_RESULT(int *) 527 XML_SOCKLEN_T=int],[ 528 AC_MSG_WARN(could not determine) 529 XML_SOCKLEN_T="int"])])]) 530AC_DEFINE_UNQUOTED(XML_SOCKLEN_T, $XML_SOCKLEN_T, [Determine what socket length (socklen_t) data type is]) 531 532dnl ***********************Checking for availability of IPv6******************* 533 534AC_MSG_CHECKING([whether to enable IPv6]) 535AC_ARG_ENABLE(ipv6, [ --enable-ipv6[[=yes/no]] enables compilation of IPv6 code [[default=yes]]],, enable_ipv6=yes) 536if test "$with_minimum" = "yes" 537then 538 enable_ipv6=no 539fi 540if test $enable_ipv6 = yes; then 541 have_ipv6=no 542 AC_TRY_COMPILE([ 543 #include <sys/types.h> 544 #include <sys/socket.h> 545 ], [ 546 struct sockaddr_storage ss; 547 socket(AF_INET6, SOCK_STREAM, 0) 548 ], 549 have_ipv6=yes, 550 have_ipv6=no 551 ) 552 AC_MSG_RESULT($have_ipv6) 553 554 if test $have_ipv6 = yes; then 555 AC_DEFINE([SUPPORT_IP6], [], [Support for IPv6]) 556 have_broken_ss_family=no 557 558 dnl ********************************************************************* 559 dnl on some platforms (like AIX 5L), the structure sockaddr doesn't have 560 dnl a ss_family member, but rather __ss_family. Let's detect that 561 dnl and define the HAVE_BROKEN_SS_FAMILY when we are on one of these 562 dnl platforms. However, we should only do this if ss_family is not 563 dnl present. 564 dnl ******************************************************************** 565 AC_MSG_CHECKING([struct sockaddr::ss_family]) 566 AC_TRY_COMPILE([ 567 #include <sys/types.h> 568 #include <sys/socket.h> 569 ], [ 570 struct sockaddr_storage ss ; 571 ss.ss_family = 0 ; 572 ], 573 have_ss_family=yes, 574 have_ss_family=no 575 ) 576 AC_MSG_RESULT($have_ss_family) 577 if test x$have_ss_family = xno ; then 578 AC_MSG_CHECKING([broken struct sockaddr::ss_family]) 579 AC_TRY_COMPILE([ 580 #include <sys/types.h> 581 #include <sys/socket.h> 582 ], [ 583 struct sockaddr_storage ss ; 584 ss.__ss_family = 0 ; 585 ], 586 have_broken_ss_family=yes, 587 have_broken_ss_family=no 588 ) 589 AC_MSG_RESULT($have_broken_ss_family) 590 if test x$have_broken_ss_family = xyes ; then 591 AC_DEFINE(HAVE_BROKEN_SS_FAMILY, [], 592 [Whether struct sockaddr::__ss_family exists]) 593 AC_DEFINE(ss_family, __ss_family, 594 [ss_family is not defined here, use __ss_family instead]) 595 else 596 AC_MSG_WARN(ss_family and __ss_family not found) 597 fi 598 fi 599 600 have_getaddrinfo=no 601 AC_CHECK_FUNC(getaddrinfo, have_getaddrinfo=yes) 602 if test $have_getaddrinfo != yes; then 603 for lib in bsd socket inet; do 604 AC_CHECK_LIB($lib, getaddrinfo, [LIBS="$LIBS -l$lib";have_getaddrinfo=yes;break]) 605 done 606 fi 607 608 if test $have_getaddrinfo = yes; then 609 AC_DEFINE([HAVE_GETADDRINFO], [], [Define if getaddrinfo is there]) 610 fi 611 fi 612fi 613 614dnl ******************************End IPv6 checks****************************** 615 616dnl Checks for isnan in libm if not in libc 617AC_CHECK_FUNC(isnan, AC_DEFINE([HAVE_ISNAN],[], [Define if isnan is there]) , AC_CHECK_LIB(m, isnan, 618 [AC_DEFINE([HAVE_ISNAN],[], [Define if isnan is there])])) 619 620AC_CHECK_FUNC(isinf, AC_DEFINE([HAVE_ISINF], [], [Define if isinf is there]) , AC_CHECK_LIB(m, isinf, 621 [AC_DEFINE([HAVE_ISINF], [], [Define if isinf is there])])) 622 623XML_LIBDIR='-L${libdir}' 624XML_INCLUDEDIR='-I${includedir}/libxml2' 625 626dnl 627dnl Extra flags 628dnl 629XML_CFLAGS="" 630RDL_LIBS="" 631 632dnl 633dnl Workaround for native compilers 634dnl HP : http://bugs.gnome.org/db/31/3163.html 635dnl DEC : Enable NaN/Inf 636dnl 637if test "${GCC}" != "yes" ; then 638 case "${host}" in 639 hppa*-*-hpux* ) 640 CFLAGS="${CFLAGS} -Wp,-H30000" 641 ;; 642 *-dec-osf* ) 643 CFLAGS="${CFLAGS} -ieee" 644 ;; 645 alpha*-*-linux* ) 646 CFLAGS="${CFLAGS} -ieee" 647 ;; 648 esac 649else 650 if test "$with_fexceptions" = "yes" 651 then 652 # 653 # Not activated by default because this inflates the code size 654 # Used to allow propagation of C++ exceptions through the library 655 # 656 CFLAGS="${CFLAGS} -fexceptions" 657 fi 658 659 CFLAGS="${CFLAGS} -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls" 660 case "${host}" in 661 alpha*-*-linux* ) 662 CFLAGS="${CFLAGS} -mieee" 663 ;; 664 alpha*-*-osf* ) 665 CFLAGS="${CFLAGS} -mieee" 666 ;; 667 esac 668fi 669case ${host} in 670 *-*-solaris*) 671 XML_LIBDIR="${XML_LIBDIR} -R${libdir}" 672 ;; 673 hppa*-hp-mpeix) 674 NEED_TRIO=1 675 ;; 676 *-*-mingw* | *-*-cygwin* | *-*-msvc* ) 677 # If the host is Windows, and shared libraries are disabled, we 678 # need to add -DLIBXML_STATIC to CFLAGS in order for linking to 679 # work properly (without it, xmlexports.h would force the use of 680 # DLL imports, which obviously aren't present in a static 681 # library). 682 if test "x$enable_shared" = "xno"; then 683 XML_CFLAGS="$XML_CFLAGS -DLIBXML_STATIC" 684 CFLAGS="$CFLAGS -DLIBXML_STATIC" 685 fi 686 ;; 687esac 688 689 690dnl 691dnl check for python 692dnl 693 694PYTHON_VERSION= 695PYTHON_INCLUDES= 696PYTHON_SITE_PACKAGES= 697PYTHON_TESTS= 698pythondir= 699if test "$with_python" != "no" ; then 700 if test -x "$with_python/bin/python" 701 then 702 echo Found python in $with_python/bin/python 703 PYTHON="$with_python/bin/python" 704 else 705 if test -x "$with_python" 706 then 707 echo Found python in $with_python 708 PYTHON="$with_python" 709 else 710 if test -x "$PYTHON" 711 then 712 echo Found python in environment PYTHON=$PYTHON 713 with_python=`$PYTHON -c "import sys; print sys.exec_prefix"` 714 else 715 AC_PATH_PROG(PYTHON, python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5) 716 fi 717 fi 718 fi 719 if test "$PYTHON" != "" 720 then 721 PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"` 722 echo Found Python version $PYTHON_VERSION 723 fi 724 if test "$PYTHON_VERSION" != "" 725 then 726 if test -r $with_python/include/python$PYTHON_VERSION/Python.h -a \ 727 -d $with_python/lib/python$PYTHON_VERSION/site-packages 728 then 729 PYTHON_INCLUDES=$with_python/include/python$PYTHON_VERSION 730 PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages 731 else 732 if test -r $prefix/include/python$PYTHON_VERSION/Python.h 733 then 734 PYTHON_INCLUDES=$prefix/include/python$PYTHON_VERSION 735 PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages 736 else 737 if test -r /usr/include/python$PYTHON_VERSION/Python.h 738 then 739 PYTHON_INCLUDES=/usr/include/python$PYTHON_VERSION 740 PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages 741 else 742 echo could not find python$PYTHON_VERSION/Python.h 743 fi 744 fi 745 if test ! -d "$PYTHON_SITE_PACKAGES" 746 then 747 PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib()"` 748 fi 749 fi 750 PYTHON_LIBS=`python$PYTHON_VERSION-config --ldflags` 751 fi 752 if test "$with_python" != "" 753 then 754 pythondir='$(PYTHON_SITE_PACKAGES)' 755 else 756 pythondir='$(libdir)/python$(PYTHON_VERSION)/site-packages' 757 fi 758else 759 PYTHON= 760fi 761AM_CONDITIONAL(WITH_PYTHON, test "$PYTHON_INCLUDES" != "") 762if test "$PYTHON_INCLUDES" != "" 763then 764 PYTHON_SUBDIR=python 765else 766 PYTHON_SUBDIR= 767fi 768AC_SUBST(pythondir) 769AC_SUBST(PYTHON_SUBDIR) 770AC_SUBST(PYTHON_LIBS) 771 772dnl check for dso support 773WITH_MODULES=0 774TEST_MODULES= 775 776if test "$with_modules" != "no" ; then 777 case "$host" in 778 *-*-cygwin*) 779 MODULE_EXTENSION=".dll" 780 AC_CHECK_LIB(cygwin, dlopen, [ 781 WITH_MODULES=1 782 MODULE_PLATFORM_LIBS= 783 AC_DEFINE([HAVE_DLOPEN], [], [Have dlopen based dso]) 784 ]) 785 ;; 786 *-*-mingw*) 787 MODULE_EXTENSION=".dll" 788 WITH_MODULES=1 789 ;; 790 *) 791 AC_CHECK_FUNC(shl_load, libxml_have_shl_load=yes, [ 792 AC_CHECK_LIB(dld, shl_load, [ 793 MODULE_PLATFORM_LIBS="-ldld" 794 libxml_have_shl_load=yes], [ 795 AC_CHECK_FUNC(dlopen, libxml_have_dlopen=yes, [ 796 AC_CHECK_LIB(dl, dlopen, [ 797 MODULE_PLATFORM_LIBS="-ldl" 798 libxml_have_dlopen=yes])])])]) 799 800 if test "${libxml_have_shl_load}" = "yes"; then 801 MODULE_EXTENSION=".sl" 802 WITH_MODULES=1 803 AC_DEFINE([HAVE_SHLLOAD], [], [Have shl_load based dso]) 804 fi 805 806 if test "${libxml_have_dlopen}" = "yes"; then 807 case "${host}" in 808 *-*-hpux* ) 809 MODULE_EXTENSION=".sl" 810 ;; 811 * ) 812 MODULE_EXTENSION=".so" 813 ;; 814 esac 815 816 WITH_MODULES=1 817 AC_DEFINE([HAVE_DLOPEN], [], [Have dlopen based dso]) 818 fi 819 ;; 820 esac 821fi 822 823if test "${WITH_MODULES}" = "1"; then 824 TEST_MODULES="ModuleTests" 825fi 826 827AC_SUBST(WITH_MODULES) 828AC_SUBST(MODULE_PLATFORM_LIBS) 829AC_SUBST(MODULE_EXTENSION) 830AC_SUBST(TEST_MODULES) 831 832dnl 833dnl Tester makes use of readline if present 834dnl 835 836dnl 837dnl specific tests to setup DV and Bill's devel environments with debug etc ... 838dnl (-Wunreachable-code) 839dnl 840if [[ "${LOGNAME}" = "veillard" -a "`pwd`" = "/u/veillard/XML" ]] || \ 841 [[ "${LOGNAME}" = "veillard" -a "`pwd`" = "/home/veillard/libxml2" ]] || \ 842 [[ "${LOGNAME}" = "bill" -a "`pwd`" = "/home/bill/gnomesvn/libxml2" ]] 843 then 844 if test "$with_minimum" != "yes" 845 then 846 if test "${with_mem_debug}" = "" ; then 847 echo Activating memory debugging 848 with_mem_debug="yes" 849 with_run_debug="yes" 850 fi 851 if test "${with_docbook}" = "" ; then 852 with_docbook="yes" 853 fi 854 fi 855 if test "${GCC}" = "yes" ; then 856 CFLAGS="-g -O -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -Wall" 857 fi 858 STATIC_BINARIES="-static" 859dnl -Wcast-qual -ansi 860else 861 STATIC_BINARIES= 862fi 863AC_SUBST(STATIC_BINARIES) 864 865dnl 866dnl Check for trio string functions 867dnl 868 869if test "${NEED_TRIO}" = "1" ; then 870 echo Adding trio library for string functions 871 WITH_TRIO=1 872else 873 WITH_TRIO=0 874fi 875AM_CONDITIONAL(WITH_TRIO_SOURCES, test "${NEED_TRIO}" = "1") 876AC_SUBST(WITH_TRIO) 877 878dnl 879dnl Allow to enable/disable various pieces 880dnl 881echo Checking configuration requirements 882 883dnl 884dnl Thread-related stuff 885dnl 886THREAD_LIBS="" 887BASE_THREAD_LIBS="" 888WITH_THREADS=0 889THREAD_CFLAGS="" 890TEST_THREADS="" 891THREADS_W32="" 892 893if test "$with_threads" = "no" ; then 894 echo Disabling multithreaded support 895else 896 echo Enabling multithreaded support 897 dnl Use pthread by default 898 if test "$with_threads" = "pthread" || test "$with_threads" = "" || test "$with_threads" = "yes" ; then 899 AC_CHECK_HEADER(pthread.h, 900 AC_CHECK_LIB(pthread, pthread_join,[ 901 THREAD_LIBS="-lpthread" 902 AC_DEFINE([HAVE_LIBPTHREAD], [], [Define if pthread library is there (-lpthread)]) 903 AC_DEFINE([HAVE_PTHREAD_H], [], [Define if <pthread.h> is there]) 904 WITH_THREADS="1"])) 905 fi 906 case $host_os in 907 *mingw32*) if test "$THREAD_LIBS" != "-lpthread"; then 908 WITH_THREADS="1" 909 THREADS_W32="Win32" 910 THREAD_CFLAGS="$THREAD_CFLAGS -DHAVE_WIN32_THREADS" 911 fi 912 ;; 913 *cygwin*) THREAD_LIBS="" 914 ;; 915 *beos*) WITH_THREADS="1" 916 THREAD_CFLAGS="$THREAD_CFLAGS -DHAVE_BEOS_THREADS" 917 ;; 918 *linux*) 919 if test "${GCC}" = "yes" ; then 920 GCC_VERSION=`${CC} --version | head -1 | awk '{print $3}'` 921 GCC_MAJOR=`echo ${GCC_VERSION} | sed 's+\..*++'` 922 GCC_MEDIUM=`echo ${GCC_VERSION} | sed 's+[[0-9]]*\.++' | sed 's+\..*++'` 923 if test "${THREAD_LIBS}" = "-lpthread" ; then 924 if expr ${GCC_MEDIUM} \> 2 \& ${GCC_MAJOR} = 3 > /dev/null 925 then 926 THREAD_LIBS="" 927 BASE_THREAD_LIBS="-lpthread" 928 else 929 if expr ${GCC_MAJOR} \> 3 > /dev/null 930 then 931 THREAD_LIBS="" 932 BASE_THREAD_LIBS="-lpthread" 933 else 934 echo old GCC disabling weak symbols for pthread 935 fi 936 fi 937 fi 938 fi 939 ;; 940 esac 941 if test "$WITH_THREADS" = "1" ; then 942 THREAD_CFLAGS="$THREAD_CFLAGS -D_REENTRANT" 943 TEST_THREADS="Threadtests" 944 fi 945fi 946if test "$with_thread_alloc" = "yes" -a "$WITH_THREADS" = "1" ; then 947 THREAD_CFLAGS="$THREAD_CFLAGS -DLIBXML_THREAD_ALLOC_ENABLED" 948fi 949 950AC_SUBST(THREAD_LIBS) 951AC_SUBST(BASE_THREAD_LIBS) 952AC_SUBST(WITH_THREADS) 953AC_SUBST(THREAD_CFLAGS) 954AC_SUBST(TEST_THREADS) 955AC_SUBST(THREADS_W32) 956 957dnl 958dnl xmllint shell history 959dnl 960if test "$with_history" = "yes" ; then 961 echo Enabling xmllint shell history 962 dnl check for terminal library. this is a very cool solution 963 dnl from octave's configure.in 964 unset tcap 965 for termlib in ncurses curses termcap terminfo termlib; do 966 AC_CHECK_LIB(${termlib}, tputs, [tcap="-l$termlib"]) 967 test -n "$tcap" && break 968 done 969 970 AC_CHECK_HEADER(readline/history.h, 971 AC_CHECK_LIB(history, append_history,[ 972 RDL_LIBS="-lhistory" 973 AC_DEFINE([HAVE_LIBHISTORY], [], [Define if history library is there (-lhistory)])])) 974 AC_CHECK_HEADER(readline/readline.h, 975 AC_CHECK_LIB(readline, readline,[ 976 RDL_LIBS="-lreadline $RDL_LIBS $tcap" 977 AC_DEFINE([HAVE_LIBREADLINE], [], [Define if readline library is there (-lreadline)])], , $tcap)) 978 if test -n "$RDL_DIR" -a -n "$RDL_LIBS"; then 979 CPPFLAGS="$CPPFLAGS -I${RDL_DIR}/include" 980 RDL_LIBS="-L${RDL_DIR}/lib $RDL_LIBS" 981 fi 982fi 983 984dnl 985dnl Tree functions 986dnl 987if test "$with_tree" = "no" ; then 988 echo Disabling DOM like tree manipulation APIs 989 WITH_TREE=0 990else 991 WITH_TREE=1 992fi 993AC_SUBST(WITH_TREE) 994 995if test "$with_ftp" = "no" ; then 996 echo Disabling FTP support 997 WITH_FTP=0 998 FTP_OBJ= 999else 1000 WITH_FTP=1 1001 FTP_OBJ=nanoftp.o 1002fi 1003AC_SUBST(WITH_FTP) 1004AC_SUBST(FTP_OBJ) 1005 1006if test "$with_http" = "no" ; then 1007 echo Disabling HTTP support 1008 WITH_HTTP=0 1009 HTTP_OBJ= 1010else 1011 WITH_HTTP=1 1012 HTTP_OBJ=nanohttp.o 1013fi 1014AC_SUBST(WITH_HTTP) 1015AC_SUBST(HTTP_OBJ) 1016 1017if test "$with_legacy" = "no" ; then 1018 echo Disabling deprecated APIs 1019 WITH_LEGACY=0 1020else 1021 WITH_LEGACY=1 1022fi 1023AC_SUBST(WITH_LEGACY) 1024 1025if test "$with_reader" = "no" ; then 1026 echo Disabling the xmlReader parsing interface 1027 WITH_READER=0 1028 READER_TEST= 1029else 1030 WITH_READER=1 1031 READER_TEST=Readertests 1032 if test "$with_push" = "no" ; then 1033 echo xmlReader requires Push interface - enabling it 1034 with_push=yes 1035 fi 1036fi 1037AC_SUBST(WITH_READER) 1038AC_SUBST(READER_TEST) 1039 1040if test "$with_writer" = "no" ; then 1041 echo Disabling the xmlWriter saving interface 1042 WITH_WRITER=0 1043# WRITER_TEST= 1044else 1045 WITH_WRITER=1 1046# WRITER_TEST=Writertests 1047 if test "$with_push" = "no" ; then 1048 echo xmlWriter requires Push interface - enabling it 1049 with_push=yes 1050 fi 1051 if test "$with_output" = "no" ; then 1052 echo xmlWriter requires Output interface - enabling it 1053 with_output=yes 1054 fi 1055fi 1056AC_SUBST(WITH_WRITER) 1057#AC_SUBST(WRITER_TEST) 1058 1059if test "$with_pattern" = "no" ; then 1060 echo Disabling the xmlPattern parsing interface 1061 WITH_PATTERN=0 1062 TEST_PATTERN= 1063else 1064 WITH_PATTERN=1 1065 TEST_PATTERN=Patterntests 1066fi 1067AC_SUBST(WITH_PATTERN) 1068AC_SUBST(TEST_PATTERN) 1069 1070if test "$with_sax1" = "no" ; then 1071 echo Disabling the older SAX1 interface 1072 WITH_SAX1=0 1073 TEST_SAX= 1074else 1075 WITH_SAX1=1 1076 TEST_SAX=SAXtests 1077fi 1078AC_SUBST(WITH_SAX1) 1079AC_SUBST(TEST_SAX) 1080 1081if test "$with_push" = "no" ; then 1082 echo Disabling the PUSH parser interfaces 1083 WITH_PUSH=0 1084 TEST_PUSH= 1085else 1086 WITH_PUSH=1 1087 TEST_PUSH="XMLPushtests" 1088fi 1089AC_SUBST(WITH_PUSH) 1090AC_SUBST(TEST_PUSH) 1091 1092if test "$with_html" = "no" ; then 1093 echo Disabling HTML support 1094 WITH_HTML=0 1095 HTML_OBJ= 1096 TEST_HTML= 1097else 1098 WITH_HTML=1 1099 HTML_OBJ="HTMLparser.o HTMLtree.o" 1100 TEST_HTML=HTMLtests 1101 if test "$with_push" != "no" ; then 1102 TEST_PHTML=HTMLPushtests 1103 else 1104 TEST_PHTML= 1105 fi 1106fi 1107AC_SUBST(WITH_HTML) 1108AC_SUBST(HTML_OBJ) 1109AC_SUBST(TEST_HTML) 1110AC_SUBST(TEST_PHTML) 1111 1112if test "$with_valid" = "no" ; then 1113 echo Disabling DTD validation support 1114 WITH_VALID=0 1115 TEST_VALID= 1116 TEST_VTIME= 1117else 1118 WITH_VALID=1 1119 TEST_VALID=Validtests 1120 TEST_VTIME=VTimingtests 1121fi 1122AC_SUBST(WITH_VALID) 1123AC_SUBST(TEST_VALID) 1124AC_SUBST(TEST_VTIME) 1125 1126if test "$with_catalog" = "no" ; then 1127 echo Disabling Catalog support 1128 WITH_CATALOG=0 1129 CATALOG_OBJ= 1130 TEST_CATALOG= 1131else 1132 WITH_CATALOG=1 1133 CATALOG_OBJ="catalog.o" 1134 TEST_CATALOG=Catatests 1135fi 1136AC_SUBST(WITH_CATALOG) 1137AC_SUBST(CATALOG_OBJ) 1138AC_SUBST(TEST_CATALOG) 1139 1140if test "$with_docbook" = "no" ; then 1141 echo Disabling Docbook support 1142 WITH_DOCB=0 1143 DOCB_OBJ= 1144else 1145 WITH_DOCB=1 1146 DOCB_OBJ="DOCBparser.o" 1147fi 1148AC_SUBST(WITH_DOCB) 1149AC_SUBST(DOCB_OBJ) 1150 1151 1152if test "$with_xptr" = "no" ; then 1153 echo Disabling XPointer support 1154 WITH_XPTR=0 1155 XPTR_OBJ= 1156 TEST_XPTR= 1157else 1158 WITH_XPTR=1 1159 XPTR_OBJ=xpointer.o 1160 TEST_XPTR=XPtrtests 1161 if test "$with_xpath" = "no" ; then 1162 echo XPointer requires XPath support - enabling it 1163 with_xpath=yes 1164 fi 1165fi 1166AC_SUBST(WITH_XPTR) 1167AC_SUBST(XPTR_OBJ) 1168AC_SUBST(TEST_XPTR) 1169 1170if test "$with_c14n" = "no" ; then 1171 echo Disabling C14N support 1172 WITH_C14N=0 1173 C14N_OBJ= 1174 TEST_C14N= 1175else 1176 WITH_C14N=1 1177 C14N_OBJ="c14n.c" 1178 TEST_C14N=C14Ntests 1179 if test "$with_xpath" = "no" ; then 1180 echo C14N requires XPath support - enabling it 1181 with_xpath=yes 1182 fi 1183fi 1184AC_SUBST(WITH_C14N) 1185AC_SUBST(C14N_OBJ) 1186AC_SUBST(TEST_C14N) 1187 1188if test "$with_xinclude" = "no" ; then 1189 echo Disabling XInclude support 1190 WITH_XINCLUDE=0 1191 XINCLUDE_OBJ= 1192 with_xinclude="no" 1193 TEST_XINCLUDE= 1194else 1195 WITH_XINCLUDE=1 1196 XINCLUDE_OBJ=xinclude.o 1197 TEST_XINCLUDE=XIncludetests 1198 if test "$with_xpath" = "no" ; then 1199 echo XInclude requires XPath support - enabling it 1200 with_xpath=yes 1201 fi 1202fi 1203AC_SUBST(WITH_XINCLUDE) 1204AC_SUBST(XINCLUDE_OBJ) 1205AC_SUBST(TEST_XINCLUDE) 1206 1207if test "$with_xpath" = "no" ; then 1208 echo Disabling XPATH support 1209 WITH_XPATH=0 1210 XPATH_OBJ= 1211 TEST_XPATH= 1212else 1213 WITH_XPATH=1 1214 XPATH_OBJ=xpath.o 1215 TEST_XPATH=XPathtests 1216fi 1217AC_SUBST(WITH_XPATH) 1218AC_SUBST(XPATH_OBJ) 1219AC_SUBST(TEST_XPATH) 1220 1221dnl 1222dnl output functions 1223dnl 1224if test "$with_output" = "no" ; then 1225 echo Disabling serialization/saving support 1226 WITH_OUTPUT=0 1227else 1228 WITH_OUTPUT=1 1229fi 1230AC_SUBST(WITH_OUTPUT) 1231 1232WITH_ICONV=0 1233if test "$with_iconv" = "no" ; then 1234 echo Disabling ICONV support 1235else 1236 if test "$with_iconv" != "yes" -a "$with_iconv" != "" ; then 1237 CPPFLAGS="${CPPFLAGS} -I$with_iconv/include" 1238 # Export this since our headers include iconv.h 1239 XML_INCLUDEDIR="${XML_INCLUDEDIR} -I$with_iconv/include" 1240 ICONV_LIBS="-L$with_iconv/lib" 1241 fi 1242 1243 AC_CHECK_HEADER(iconv.h, 1244 AC_MSG_CHECKING(for iconv) 1245 AC_TRY_LINK([#include <stdlib.h> 1246#include <iconv.h>],[ 1247iconv_t cd = iconv_open ("",""); 1248iconv (cd, NULL, NULL, NULL, NULL);],[ 1249 AC_MSG_RESULT(yes) 1250 WITH_ICONV=1],[ 1251 AC_MSG_RESULT(no) 1252 AC_MSG_CHECKING(for iconv in -liconv) 1253 1254 _ldflags="${LDFLAGS}" 1255 _libs="${LIBS}" 1256 LDFLAGS="${LDFLAGS} ${ICONV_LIBS}" 1257 LIBS="${LIBS} -liconv" 1258 1259 AC_TRY_LINK([#include <stdlib.h> 1260#include <iconv.h>],[ 1261iconv_t cd = iconv_open ("",""); 1262iconv (cd, NULL, NULL, NULL, NULL);],[ 1263 AC_MSG_RESULT(yes) 1264 WITH_ICONV=1 1265 ICONV_LIBS="${ICONV_LIBS} -liconv" 1266 LIBS="${_libs}" 1267 LDFLAGS="${_ldflags}"],[ 1268 AC_MSG_RESULT(no) 1269 LIBS="${_libs}" 1270 LDFLAGS="${_ldflags}"])])) 1271 1272 if test "$WITH_ICONV" = "1" ; then 1273 AC_MSG_CHECKING([for iconv declaration]) 1274 AC_CACHE_VAL(xml_cv_iconv_arg2, [ 1275 AC_TRY_COMPILE([#include <stdlib.h> 1276#include <iconv.h> 1277extern 1278#ifdef __cplusplus 1279"C" 1280#endif 1281#if defined(__STDC__) || defined(__cplusplus) 1282size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); 1283#else 1284size_t iconv(); 1285#endif 1286], [], xml_cv_iconv_arg2="", xml_cv_iconv_arg2="const")]) 1287 1288 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);" 1289 AC_MSG_RESULT([${xml_xxx:- 1290 }$xml_cv_iconv_decl]) 1291 AC_DEFINE_UNQUOTED(ICONV_CONST, $xml_cv_iconv_arg2, 1292 [Define as const if the declaration of iconv() needs const.]) 1293 fi 1294fi 1295case "$host" in 1296 *mingw*) M_LIBS="" 1297 ;; 1298 *beos*) M_LIBS="" 1299 ;; 1300 *haiku*) M_LIBS="" 1301 ;; 1302 *) M_LIBS="-lm" 1303 ;; 1304esac 1305XML_LIBS="-lxml2 $Z_LIBS $THREAD_LIBS $ICONV_LIBS $M_LIBS $LIBS" 1306XML_LIBTOOLLIBS="libxml2.la" 1307AC_SUBST(WITH_ICONV) 1308 1309WITH_ISO8859X=1 1310if test "$WITH_ICONV" != "1" ; then 1311if test "$with_iso8859x" = "no" ; then 1312 echo Disabling ISO8859X support 1313 WITH_ISO8859X=0 1314fi 1315fi 1316AC_SUBST(WITH_ISO8859X) 1317 1318if test "$with_schematron" = "no" ; then 1319 echo "Disabling Schematron support" 1320 WITH_SCHEMATRON=0 1321 TEST_SCHEMATRON= 1322else 1323 echo "Enabled Schematron support" 1324 WITH_SCHEMATRON=1 1325 TEST_SCHEMATRON="Schematrontests" 1326 with_xpath=yes 1327 with_pattern=yes 1328fi 1329AC_SUBST(WITH_SCHEMATRON) 1330AC_SUBST(TEST_SCHEMATRON) 1331 1332if test "$with_schemas" = "no" ; then 1333 echo "Disabling Schemas/Relax-NG support" 1334 WITH_SCHEMAS=0 1335 TEST_SCHEMAS= 1336else 1337 echo "Enabled Schemas/Relax-NG support" 1338 WITH_SCHEMAS=1 1339 TEST_SCHEMAS="Schemastests Relaxtests" 1340 if test "$PYTHON_INCLUDES" != "" ; then 1341 PYTHON_TESTS="$PYTHON_TESTS RelaxNGPythonTests SchemasPythonTests" 1342 fi 1343 with_regexps=yes 1344fi 1345AC_SUBST(WITH_SCHEMAS) 1346AC_SUBST(TEST_SCHEMAS) 1347 1348if test "$with_regexps" = "no" ; then 1349 echo Disabling Regexps support 1350 WITH_REGEXPS=0 1351 TEST_REGEXPS= 1352else 1353 WITH_REGEXPS=1 1354 TEST_REGEXPS="Regexptests Automatatests" 1355fi 1356AC_SUBST(WITH_REGEXPS) 1357AC_SUBST(TEST_REGEXPS) 1358 1359if test "$with_debug" = "no" ; then 1360 echo Disabling DEBUG support 1361 WITH_DEBUG=0 1362 DEBUG_OBJ= 1363 TEST_DEBUG= 1364else 1365 WITH_DEBUG=1 1366 DEBUG_OBJ=debugXML.o 1367 TEST_DEBUG=Scripttests 1368fi 1369AC_SUBST(WITH_DEBUG) 1370AC_SUBST(DEBUG_OBJ) 1371AC_SUBST(TEST_DEBUG) 1372 1373if test "$with_mem_debug" = "yes" ; then 1374 if test "$with_thread_alloc" = "yes" ; then 1375 echo Disabling memory debug - cannot use mem-debug with thread-alloc! 1376 WITH_MEM_DEBUG=0 1377 else 1378 echo Enabling memory debug support 1379 WITH_MEM_DEBUG=1 1380 fi 1381else 1382 WITH_MEM_DEBUG=0 1383fi 1384AC_SUBST(WITH_MEM_DEBUG) 1385 1386if test "$with_run_debug" = "yes" ; then 1387 echo Enabling runtime debug support 1388 WITH_RUN_DEBUG=1 1389else 1390 WITH_RUN_DEBUG=0 1391fi 1392AC_SUBST(WITH_RUN_DEBUG) 1393 1394WIN32_EXTRA_LIBADD= 1395WIN32_EXTRA_LDFLAGS= 1396CYGWIN_EXTRA_LDFLAGS= 1397CYGWIN_EXTRA_PYTHON_LIBADD= 1398case "$host" in 1399 *-*-mingw*) 1400 CPPFLAGS="$CPPFLAGS -DWIN32" 1401 WIN32_EXTRA_LIBADD="-lws2_32" 1402 WIN32_EXTRA_LDFLAGS="-no-undefined" 1403 AC_DEFINE([_WINSOCKAPI_],1,[Using the Win32 Socket implementation]) 1404 AC_DEFINE([snprintf],[_snprintf],[Win32 Std C name mangling work-around]) 1405 AC_DEFINE([vsnprintf],[_vsnprintf],[Win32 Std C name mangling work-around]) 1406 ;; 1407 *-*-cygwin*) 1408 CYGWIN_EXTRA_LDFLAGS="-no-undefined" 1409 if test "${PYTHON}" != "" 1410 then 1411 CYGWIN_EXTRA_PYTHON_LIBADD="-L/usr/lib/python${PYTHON_VERSION}/config -lpython${PYTHON_VERSION}" 1412 fi 1413 ;; 1414esac 1415AC_SUBST(WIN32_EXTRA_LIBADD) 1416AC_SUBST(WIN32_EXTRA_LDFLAGS) 1417AC_SUBST(CYGWIN_EXTRA_LDFLAGS) 1418AC_SUBST(CYGWIN_EXTRA_PYTHON_LIBADD) 1419 1420if test "$with_coverage" = "yes" -a "${GCC}" = "yes" 1421then 1422 echo Enabling code coverage for GCC 1423 CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage" 1424 LDFLAGS="$LDFLAGS -fprofile-arcs -ftest-coverage" 1425else 1426 echo Disabling code coverage for GCC 1427fi 1428 1429AC_SUBST(CPPFLAGS) 1430AC_SUBST(CFLAGS) 1431AC_SUBST(LDFLAGS) 1432AC_SUBST(XML_CFLAGS) 1433 1434AC_SUBST(XML_LIBDIR) 1435AC_SUBST(XML_LIBS) 1436AC_SUBST(XML_LIBTOOLLIBS) 1437AC_SUBST(ICONV_LIBS) 1438AC_SUBST(XML_INCLUDEDIR) 1439AC_SUBST(HTML_DIR) 1440AC_SUBST(HAVE_ISNAN) 1441AC_SUBST(HAVE_ISINF) 1442AC_SUBST(PYTHON) 1443AC_SUBST(PYTHON_VERSION) 1444AC_SUBST(PYTHON_INCLUDES) 1445AC_SUBST(PYTHON_SITE_PACKAGES) 1446 1447AC_SUBST(M_LIBS) 1448AC_SUBST(RDL_LIBS) 1449 1450dnl for the spec file 1451RELDATE=`date +'%a %b %e %Y'` 1452AC_SUBST(RELDATE) 1453AC_SUBST(PYTHON_TESTS) 1454 1455rm -f COPYING.LIB COPYING 1456ln -s Copyright COPYING 1457 1458# keep on one line for cygwin c.f. #130896 1459AC_OUTPUT(libxml2.spec:libxml.spec.in Makefile include/Makefile include/libxml/Makefile doc/Makefile doc/examples/Makefile doc/devhelp/Makefile example/Makefile python/Makefile python/tests/Makefile xstc/Makefile include/libxml/xmlversion.h xml2-config libxml-2.0.pc libxml-2.0-uninstalled.pc python/setup.py) 1460 1461chmod +x xml2-config python/setup.py 1462echo Done configuring 1463