Blame common/m4/gst-libxml2.m4

Packit 971217
dnl call this macro with the minimum required version as an argument
Packit 971217
dnl this macro sets and AC_SUBSTs XML_CFLAGS and XML_LIBS
Packit 971217
dnl it also sets LIBXML_PKG, used for the pkg-config file
Packit 971217
Packit 971217
AC_DEFUN([AG_GST_LIBXML2_CHECK],
Packit 971217
[
Packit 971217
  dnl Minimum required version of libxml2
Packit 971217
  dnl default to 2.4.9 if not specified
Packit 971217
  LIBXML2_REQ=ifelse([$1],,2.4.9,[$1])
Packit 971217
  AC_SUBST(LIBXML2_REQ)
Packit 971217
Packit 971217
  dnl check for libxml2
Packit 971217
  PKG_CHECK_MODULES(XML, libxml-2.0 >= $LIBXML2_REQ,
Packit 971217
                    HAVE_LIBXML2=yes, [
Packit 971217
                      AC_MSG_RESULT(no)
Packit 971217
                      HAVE_LIBXML2=no
Packit 971217
                    ])
Packit 971217
  if test "x$HAVE_LIBXML2" = "xyes"; then
Packit 971217
    AC_DEFINE(HAVE_LIBXML2, 1, [Define if libxml2 is available])
Packit 971217
  else
Packit 971217
    AC_MSG_ERROR([
Packit 971217
        Need libxml2 and development headers/files to build GStreamer.
Packit 971217
Packit 971217
        You can do without libxml2 if you pass --disable-loadsave to
Packit 971217
        configure, but that breaks ABI, so don't do that unless you
Packit 971217
        are building for an embedded setup and know what you are doing.
Packit 971217
    ])
Packit 971217
  fi
Packit 971217
  dnl this is for the .pc file
Packit 971217
  LIBXML_PKG=', libxml-2.0'
Packit 971217
  AC_SUBST(LIBXML_PKG)
Packit 971217
  AC_SUBST(XML_LIBS)
Packit 971217
  AC_SUBST(XML_CFLAGS)
Packit 971217
Packit 971217
  dnl XML_LIBS might pull in -lz without zlib actually being on the system, so
Packit 971217
  dnl try linking with these LIBS and CFLAGS
Packit 971217
  ac_save_CFLAGS=$CFLAGS
Packit 971217
  ac_save_LIBS=$LIBS
Packit 971217
  CFLAGS="$CFLAGS $XML_CFLAGS"
Packit 971217
  LIBS="$LIBS $XML_LIBS"
Packit 971217
  AC_TRY_LINK([
Packit 971217
#include <libxml/tree.h>
Packit 971217
#include <stdio.h>
Packit 971217
],[
Packit 971217
/* function body */
Packit 971217
],
Packit 971217
    AC_MSG_NOTICE([Test xml2 program linked]),
Packit 971217
    AC_MSG_ERROR([Could not link libxml2 test program.  Check if you have the necessary dependencies.])
Packit 971217
  )
Packit 971217
  CFLAGS="$ac_save_CFLAGS"
Packit 971217
  LIBS="$ac_save_LIBS"
Packit 971217
])