File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / libxml2 / configure.in
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Jul 22 01:22:19 2013 UTC (10 years, 11 months ago) by misho
Branches: libxml2, MAIN
CVS tags: v2_8_0p0, v2_8_0, HEAD
2.8.0

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>