facf0c92e0
Red Bear OS is a full fork. All sources must be available from git clone with zero network access. Removed gitignore rules that excluded fetched source trees under recipes/*/source/, local/recipes/kde/*/source/, local/recipes/qt/*/source/, and vendor source trees. Build artifacts (target/, build/, source.tar, *.o, *.so) remain excluded. 127291 files added — kernel, relibc, base, bootloader, pkgar, all KDE/Qt frameworks, mesa, wayland, DRM drivers, and every other recipe source.
225 lines
8.7 KiB
Plaintext
225 lines
8.7 KiB
Plaintext
# libxml.m4 serial 10
|
|
dnl Copyright (C) 2006, 2008, 2011, 2013, 2016, 2019-2020 Free Software Foundation, Inc.
|
|
dnl This file is free software; the Free Software Foundation
|
|
dnl gives unlimited permission to copy and/or distribute it,
|
|
dnl with or without modifications, as long as this notice is preserved.
|
|
|
|
dnl From Bruno Haible.
|
|
|
|
dnl gl_LIBXML
|
|
dnl gives the user the option to decide whether to use the included or
|
|
dnl an external libxml.
|
|
dnl gl_LIBXML(FORCE-INCLUDED)
|
|
dnl forces the use of the included or an external libxml.
|
|
AC_DEFUN([gl_LIBXML],
|
|
[
|
|
AC_REQUIRE([AM_ICONV_LINK])
|
|
|
|
ifelse([$1], , [
|
|
AC_MSG_CHECKING([whether included libxml is requested])
|
|
AC_ARG_WITH([included-libxml],
|
|
[ --with-included-libxml use the libxml2 included here],
|
|
[gl_cv_libxml_force_included=$withval],
|
|
[gl_cv_libxml_force_included=no])
|
|
AC_MSG_RESULT([$gl_cv_libxml_force_included])
|
|
], [gl_cv_libxml_force_included=$1])
|
|
|
|
gl_cv_libxml_use_included="$gl_cv_libxml_force_included"
|
|
LIBXML=
|
|
LTLIBXML=
|
|
INCXML=
|
|
ifelse([$1], [yes], , [
|
|
if test "$gl_cv_libxml_use_included" != yes; then
|
|
dnl Figure out whether we can use a preinstalled libxml2, or have to use
|
|
dnl the included one.
|
|
AC_CACHE_VAL([gl_cv_libxml], [
|
|
gl_cv_libxml=no
|
|
gl_cv_LIBXML=
|
|
gl_cv_LTLIBXML=
|
|
gl_cv_INCXML=
|
|
gl_save_LIBS="$LIBS"
|
|
LIBS="$LIBS $LIBICONV"
|
|
dnl Search for libxml2 and define LIBXML2, LTLIBXML2 and INCXML2
|
|
dnl accordingly.
|
|
dnl Don't use xml2-config nor pkg-config, since it doesn't work when
|
|
dnl cross-compiling or when the C compiler in use is different from the
|
|
dnl one that built the library.
|
|
dnl Use a test program that tries to invoke xmlFree. On Cygwin 1.7.x,
|
|
dnl libxml2 is built in such a way that uses of xmlFree work fine with
|
|
dnl -Wl,--enable-auto-import but lead to a link error with
|
|
dnl -Wl,--disable-auto-import.
|
|
AC_LIB_LINKFLAGS_BODY([xml2])
|
|
LIBS="$gl_save_LIBS $LIBXML2 $LIBICONV"
|
|
AC_LINK_IFELSE(
|
|
[AC_LANG_PROGRAM(
|
|
[[#include <libxml/xmlversion.h>
|
|
#include <libxml/xmlmemory.h>
|
|
#include <libxml/xpath.h>
|
|
]],
|
|
[[xmlCheckVersion (0);
|
|
xmlFree ((void *) 0);
|
|
xmlXPathSetContextNode ((void *)0, (void *)0);
|
|
]])],
|
|
[gl_cv_libxml=yes
|
|
gl_cv_LIBXML="$LIBXML2 $LIBICONV"
|
|
gl_cv_LTLIBXML="$LTLIBXML2 $LTLIBICONV"
|
|
])
|
|
if test "$gl_cv_libxml" != yes; then
|
|
gl_save_CPPFLAGS="$CPPFLAGS"
|
|
CPPFLAGS="$CPPFLAGS $INCXML2"
|
|
AC_LINK_IFELSE(
|
|
[AC_LANG_PROGRAM(
|
|
[[#include <libxml/xmlversion.h>
|
|
#include <libxml/xmlmemory.h>
|
|
#include <libxml/xpath.h>
|
|
]],
|
|
[[xmlCheckVersion (0);
|
|
xmlFree ((void *) 0);
|
|
xmlXPathSetContextNode ((void *)0, (void *)0);
|
|
]])],
|
|
[gl_cv_libxml=yes
|
|
gl_cv_LIBXML="$LIBXML2 $LIBICONV"
|
|
gl_cv_LTLIBXML="$LTLIBXML2 $LTLIBICONV"
|
|
gl_cv_INCXML="$INCXML2"
|
|
])
|
|
if test "$gl_cv_libxml" != yes; then
|
|
dnl Often the include files are installed in /usr/include/libxml2.
|
|
dnl In libxml2-2.5, <libxml/xmlversion.h> is self-contained.
|
|
dnl In libxml2-2.6, it includes <libxml/xmlexports.h> which is
|
|
dnl self-contained.
|
|
libxml2_include_dir=
|
|
AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <libxml2/libxml/xmlexports.h>]])],
|
|
[gl_ABSOLUTE_HEADER([libxml2/libxml/xmlexports.h])
|
|
libxml2_include_dir=`echo "$gl_cv_absolute_libxml2_libxml_xmlexports_h" | sed -e 's,.libxml.xmlexports\.h$,,'`
|
|
])
|
|
if test -z "$libxml2_include_dir"; then
|
|
AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <libxml2/libxml/xmlversion.h>]])],
|
|
[gl_ABSOLUTE_HEADER([libxml2/libxml/xmlversion.h])
|
|
libxml2_include_dir=`echo "$gl_cv_absolute_libxml2_libxml_xmlversion_h" | sed -e 's,.libxml.xmlversion\.h$,,'`
|
|
])
|
|
fi
|
|
if test -n "$libxml2_include_dir" && test -d "$libxml2_include_dir"; then
|
|
CPPFLAGS="$gl_save_CPPFLAGS -I$libxml2_include_dir"
|
|
AC_LINK_IFELSE(
|
|
[AC_LANG_PROGRAM(
|
|
[[#include <libxml/xmlversion.h>
|
|
#include <libxml/xmlmemory.h>
|
|
#include <libxml/xpath.h>
|
|
]],
|
|
[[xmlCheckVersion (0);
|
|
xmlFree ((void *) 0);
|
|
xmlXPathSetContextNode ((void *)0, (void *)0);
|
|
]])],
|
|
[gl_cv_libxml=yes
|
|
gl_cv_LIBXML="$LIBXML2 $LIBICONV"
|
|
gl_cv_LTLIBXML="$LTLIBXML2 $LTLIBICONV"
|
|
gl_cv_INCXML="-I$libxml2_include_dir"
|
|
])
|
|
fi
|
|
fi
|
|
CPPFLAGS="$gl_save_CPPFLAGS"
|
|
fi
|
|
LIBS="$gl_save_LIBS"
|
|
])
|
|
AC_MSG_CHECKING([for libxml])
|
|
AC_MSG_RESULT([$gl_cv_libxml])
|
|
if test $gl_cv_libxml = yes; then
|
|
LIBXML="$gl_cv_LIBXML"
|
|
LTLIBXML="$gl_cv_LTLIBXML"
|
|
INCXML="$gl_cv_INCXML"
|
|
else
|
|
gl_cv_libxml_use_included=yes
|
|
fi
|
|
fi
|
|
])
|
|
AC_SUBST([LIBXML])
|
|
AC_SUBST([LTLIBXML])
|
|
AC_SUBST([INCXML])
|
|
AC_MSG_CHECKING([whether to use the included libxml])
|
|
AC_MSG_RESULT([$gl_cv_libxml_use_included])
|
|
|
|
if test "$gl_cv_libxml_use_included" = yes; then
|
|
LIBXML_H=
|
|
LIBXML_H="$LIBXML_H libxml/DOCBparser.h"
|
|
LIBXML_H="$LIBXML_H libxml/HTMLparser.h"
|
|
LIBXML_H="$LIBXML_H libxml/HTMLtree.h"
|
|
LIBXML_H="$LIBXML_H libxml/SAX2.h"
|
|
LIBXML_H="$LIBXML_H libxml/SAX.h"
|
|
LIBXML_H="$LIBXML_H libxml/c14n.h"
|
|
LIBXML_H="$LIBXML_H libxml/catalog.h"
|
|
LIBXML_H="$LIBXML_H libxml/chvalid.h"
|
|
LIBXML_H="$LIBXML_H libxml/debugXML.h"
|
|
LIBXML_H="$LIBXML_H libxml/dict.h"
|
|
LIBXML_H="$LIBXML_H libxml/encoding.h"
|
|
LIBXML_H="$LIBXML_H libxml/entities.h"
|
|
LIBXML_H="$LIBXML_H libxml/globals.h"
|
|
LIBXML_H="$LIBXML_H libxml/hash.h"
|
|
LIBXML_H="$LIBXML_H libxml/list.h"
|
|
LIBXML_H="$LIBXML_H libxml/nanoftp.h"
|
|
LIBXML_H="$LIBXML_H libxml/nanohttp.h"
|
|
LIBXML_H="$LIBXML_H libxml/parser.h"
|
|
LIBXML_H="$LIBXML_H libxml/parserInternals.h"
|
|
LIBXML_H="$LIBXML_H libxml/pattern.h"
|
|
LIBXML_H="$LIBXML_H libxml/relaxng.h"
|
|
LIBXML_H="$LIBXML_H libxml/schemasInternals.h"
|
|
LIBXML_H="$LIBXML_H libxml/schematron.h"
|
|
LIBXML_H="$LIBXML_H libxml/threads.h"
|
|
LIBXML_H="$LIBXML_H libxml/tree.h"
|
|
LIBXML_H="$LIBXML_H libxml/uri.h"
|
|
LIBXML_H="$LIBXML_H libxml/valid.h"
|
|
LIBXML_H="$LIBXML_H libxml/xinclude.h"
|
|
LIBXML_H="$LIBXML_H libxml/xlink.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlIO.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlautomata.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlerror.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlexports.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlmemory.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlmodule.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlreader.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlregexp.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlsave.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlschemas.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlschemastypes.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlstring.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlunicode.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlversion.h"
|
|
LIBXML_H="$LIBXML_H libxml/xmlwriter.h"
|
|
LIBXML_H="$LIBXML_H libxml/xpath.h"
|
|
LIBXML_H="$LIBXML_H libxml/xpathInternals.h"
|
|
LIBXML_H="$LIBXML_H libxml/xpointer.h"
|
|
AC_CHECK_HEADERS([arpa/inet.h ctype.h dlfcn.h dl.h errno.h \
|
|
fcntl.h float.h limits.h malloc.h math.h netdb.h \
|
|
netinet/in.h signal.h stdlib.h string.h \
|
|
strings.h sys/select.h sys/socket.h sys/stat.h \
|
|
sys/time.h sys/types.h time.h unistd.h])
|
|
AC_CHECK_HEADERS([arpa/nameser.h], [], [], [
|
|
#if HAVE_SYS_TYPES_H
|
|
# include <sys/types.h>
|
|
#endif
|
|
])
|
|
AC_CHECK_HEADERS([resolv.h], [], [], [
|
|
#if HAVE_SYS_TYPES_H
|
|
# include <sys/types.h>
|
|
#endif
|
|
#if HAVE_NETINET_IN_H
|
|
# include <netinet/in.h>
|
|
#endif
|
|
#if HAVE_ARPA_NAMESER_H
|
|
# include <arpa/nameser.h>
|
|
#endif
|
|
])
|
|
AC_CHECK_FUNCS([getaddrinfo localtime stat strftime])
|
|
dnl This relies on the va_copy replacement from the stdarg module.
|
|
AC_DEFINE([VA_COPY], [va_copy],
|
|
[Define to a working va_copy macro or replacement.])
|
|
dnl Don't bother checking for pthread.h and other multithread facilities.
|
|
dnl Don't bother checking for zlib.h and how to link with libz.
|
|
else
|
|
LIBXML_H=
|
|
fi
|
|
AC_SUBST([LIBXML_H])
|
|
|
|
AM_CONDITIONAL([INCLUDED_LIBXML],
|
|
[test "$gl_cv_libxml_use_included" = yes])
|
|
])
|