AC_INIT(libxml++/libxml++.h) #release versioning GENERIC_MAJOR_VERSION=2 GENERIC_MINOR_VERSION=20 GENERIC_MICRO_VERSION=0 GENERIC_VERSION=$GENERIC_MAJOR_VERSION.$GENERIC_MINOR_VERSION.$GENERIC_MICRO_VERSION AC_SUBST(GENERIC_MAJOR_VERSION) AC_SUBST(GENERIC_MINOR_VERSION) AC_SUBST(GENERIC_MICRO_VERSION) AC_SUBST(GENERIC_VERSION) #shared library versioning GENERIC_LIBRARY_VERSION=2:7:0 # | | | # +------+ | +---+ # | | | # current:revision:age # | | | # | | +- increment if interfaces have been added # | | set to zero if interfaces have been removed # or changed # | +- increment if source code has changed # | set to zero if current is incremented # +- increment if interfaces have been added, removed or changed AC_SUBST(GENERIC_LIBRARY_VERSION) VERSION=$GENERIC_VERSION AM_INIT_AUTOMAKE(libxml++, $GENERIC_VERSION) #Offer the ability to omit some API from the library, #to reduce the code size: LIBXMLCPP_ARG_ENABLE_API_EXCEPTIONS() dnl Specify a configuration file (no autoheader) AC_CONFIG_HEADERS(config.h libxml++/libxml++config.h) AC_PROG_CXX AC_PROG_CXXCPP AC_LANG_CPLUSPLUS AC_PROG_INSTALL AC_LIBTOOL_WIN32_DLL AM_PROG_LIBTOOL dnl Used for enabling the "-no-undefined" and "-export-all-symbols" flags dnl while generating DLLs. Borrowed from the official gtk+-2 configure.in AC_MSG_CHECKING([for some Win32 platform]) case "$host" in *-*-mingw*|*-*-cygwin*) platform_win32=yes ;; *) platform_win32=no ;; esac AC_MSG_RESULT([$platform_win32]) AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes") AC_MSG_CHECKING([for native Win32]) case "$host" in *-*-mingw*) os_win32=yes ;; *) os_win32=no ;; esac AC_MSG_RESULT([$os_win32]) AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes") # Ensure MSVC-compatible struct packing convention is used when # compiling for Win32 with gcc. # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while # gcc2 uses "-fnative-struct". if test x"$os_win32" = xyes; then if test x"$GCC" = xyes; then msnative_struct='' AC_MSG_CHECKING([how to get MSVC-compatible struct packing]) if test -z "$ac_cv_prog_CC"; then our_gcc="$CC" else our_gcc="$ac_cv_prog_CC" fi case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in 2.) if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then msnative_struct='-fnative-struct' fi ;; *) if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then msnative_struct='-mms-bitfields' fi ;; esac if test x"$msnative_struct" = x ; then AC_MSG_RESULT([no way]) AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code]) else CXXFLAGS="$CXXFLAGS $msnative_struct" AC_MSG_RESULT([${msnative_struct}]) fi fi fi AC_CHECK_HEADERS(string list map, , exit) PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= 2.6.1 glibmm-2.4 >= 2.4.0) GLIBMM_CHECK_PERL([5.6.0]) # Dummy conditional just to make automake-1.4 happy. # We need an always-false condition in docs/Makefile.am. AM_CONDITIONAL(LIBXMLCPP_FALSE,[false]) # HACK: Assign a dummy in order to prevent execution of autoheader by the # maintainer-mode rules. That would fail since we aren't using autoheader. AUTOHEADER=':' AC_OUTPUT( Makefile libxml++/Makefile libxml++/parsers/Makefile libxml++/exceptions/Makefile libxml++/nodes/Makefile libxml++/io/Makefile libxml++/validators/Makefile scripts/Makefile docs/Makefile docs/reference/Makefile docs/reference/Doxyfile docs/manual/Makefile examples/Makefile examples/dom_build/Makefile examples/dom_parser/Makefile examples/dom_parser_raw/Makefile examples/dom_parse_entities/Makefile examples/dom_read_write/Makefile examples/dom_xpath/Makefile examples/sax_parser/Makefile examples/sax_parser_entities/Makefile examples/sax_parser_build_dom/Makefile examples/sax_exception/Makefile examples/import_node/Makefile examples/textreader/Makefile examples/dtdvalidation/Makefile win32_msvc6/Makefile win32_msvc6/examples/Makefile MSVC_Net2003/Makefile MSVC_Net2003/libxml++/Makefile MSVC_Net2003/libxml++/libxml++.rc MSVC_Net2003/gendef/Makefile MSVC_Net2003/examples/Makefile MSVC_Net2003/examples/dom_build/Makefile MSVC_Net2003/examples/dom_parse_entities/Makefile MSVC_Net2003/examples/dom_parser/Makefile MSVC_Net2003/examples/dom_read_write/Makefile MSVC_Net2003/examples/dom_xpath/Makefile MSVC_Net2003/examples/dtdvalidation/Makefile MSVC_Net2003/examples/import_node/Makefile MSVC_Net2003/examples/sax_exception/Makefile MSVC_Net2003/examples/sax_parser/Makefile MSVC_Net2003/examples/sax_parser_build_dom/Makefile MSVC_Net2003/examples/sax_parser_entities/Makefile MSVC_Net2003/examples/textreader/Makefile libxml++-2.6.pc libxml++.spec )