From a16c53f53a434464f49315c1943c9b64e9cfcefc Mon Sep 17 00:00:00 2001 From: Dmitry Podgorny Date: Tue, 23 Oct 2012 13:34:30 +0300 Subject: [PATCH] autotools: introduce choice among libxml2 and expat Now profanity is linked with expat only. This breaks build when libstrophe is build with libxml2 support. This patch introduce --with-libxml2 option to ./configure in the same way as it is done in libstrophe. --- configure.ac | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index eeb704a0..246029cc 100644 --- a/configure.ac +++ b/configure.ac @@ -11,6 +11,10 @@ AM_INIT_AUTOMAKE([foreign subdir-objects]) # Checks for programs. AC_PROG_CC +# Options +AC_ARG_WITH([libxml2], + [AS_HELP_STRING([--with-libxml2], [link with libxml2 instead of expat])]) + # Checks for libraries. AC_CHECK_LIB([ncurses], [main], [], [AC_MSG_ERROR([ncurses is required for profanity])]) @@ -18,8 +22,6 @@ AC_CHECK_LIB([resolv], [main], [], [AC_MSG_ERROR([libresolv is required for profanity])]) AC_CHECK_LIB([ssl], [main], [], [AC_MSG_ERROR([openssl is required for profanity])]) -AC_CHECK_LIB([expat], [main], [], - [AC_MSG_ERROR([expat is required for profanity])]) AC_CHECK_LIB([strophe], [main], [], [AC_MSG_ERROR([libstrophe is required for profanity])]) AC_CHECK_LIB([glib-2.0], [main], [], @@ -31,6 +33,14 @@ AC_CHECK_LIB([notify], [main], [], AC_CHECK_LIB([headunit], [main], [], [AC_MSG_NOTICE([headunit not found, will not be able to run tests])]) +if test "x$with_libxml2" = xyes; then + AC_CHECK_LIB([xml2], [main], [], + [AC_MSG_ERROR([libxml2 is required for profanity])]) +else + AC_CHECK_LIB([expat], [main], [], + [AC_MSG_ERROR([expat is required for profanity])]) +fi + # Checks for header files. AC_CHECK_HEADERS([stdlib.h string.h]) AC_CHECK_HEADERS([ncurses.h], [], []) @@ -41,7 +51,7 @@ PKG_CHECK_MODULES([NOTIFY], [libnotify], [], [AC_MSG_NOTICE([libnotify module not found])]) AM_CFLAGS="-Wall " -AM_CFLAGS="$AM_CFLAGS -lstrophe -lexpat -lncurses -lcurl -lresolv " +AM_CFLAGS="$AM_CFLAGS -lstrophe -lncurses -lcurl -lresolv " AM_CFLAGS="$AM_CFLAGS $DEPS_LIBS $NOTIFY_LIBS" AM_CPPFLAGS="$DEPS_CFLAGS $NOTIFY_CFLAGS"