From aec20d66d9d13e0acd6a7199b63e1383e1e9900a Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Tue, 29 Oct 2013 21:14:41 +0000 Subject: [PATCH] automake: properly handle non-default expat installation Use PKG_CHECK_MODULE over requesting the user to setup the option at configure time. Drop unused EXPAT_INCLUDE and update all targets. NOTE: The this commit removes the --with-expat configure option. One should ensure that the expat they wish to use has expat.pc file accessible by pkg-config. v2: * Add note about the removal of --with-expat (per Tom Stellard) * Drop EXPAT_CFLAGS for targets that do not build DRI_COMMON (spotted by Matt Turner) v3: * Rebase on top of megadrivers (drop EXPAT_CFLAGS from swrast) Acked-by: Matt Turner (v2) Reviewed-by: Tom Stellard (v2) Signed-off-by: Emil Velikov Conflicts: configure.ac src/mesa/drivers/dri/common/Makefile.am --- configure.ac | 23 +++++----------------- src/gallium/targets/dri-swrast/Makefile.am | 1 + src/mesa/drivers/dri/common/Makefile.am | 1 + 3 files changed, 7 insertions(+), 18 deletions(-) diff --git a/configure.ac b/configure.ac index 54ace41bad7..8ba4feef3a1 100644 --- a/configure.ac +++ b/configure.ac @@ -1005,21 +1005,9 @@ if test "x$enable_dri" = xyes; then DRI_DIRS=`echo "$DRI_DIRS" | $SED 's/ */ /g'` # Check for expat - EXPAT_INCLUDES="" - EXPAT_LIB=-lexpat - AC_ARG_WITH([expat], - [AS_HELP_STRING([--with-expat=DIR], - [expat install directory])],[ - EXPAT_INCLUDES="-I$withval/include" - CPPFLAGS="$CPPFLAGS $EXPAT_INCLUDES" - LDFLAGS="$LDFLAGS -L$withval/$LIB_DIR" - EXPAT_LIB="-L$withval/$LIB_DIR -lexpat" - ]) - AC_CHECK_HEADER([expat.h],[],[AC_MSG_ERROR([Expat required for DRI.])]) - save_LIBS="$LIBS" - AC_CHECK_LIB([expat],[XML_ParserCreate],[], - [AC_MSG_ERROR([Expat required for DRI.])]) - LIBS="$save_LIBS" + PKG_CHECK_MODULES([EXPAT], [expat], [], + AC_MSG_ERROR([Expat required for DRI.])) + # If we are building any DRI driver other than swrast. if test -n "$DRI_DIRS"; then @@ -1035,8 +1023,8 @@ if test "x$enable_dri" = xyes; then fi # put all the necessary libs together - DRI_LIB_DEPS="$DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm $PTHREAD_LIBS $DLOPEN_LIBS" - GALLIUM_DRI_LIB_DEPS="$GALLIUM_DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm $CLOCK_LIB $PTHREAD_LIBS $DLOPEN_LIBS" + DRI_LIB_DEPS="$DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS" + GALLIUM_DRI_LIB_DEPS="$GALLIUM_DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIBS -lm $CLOCK_LIB $PTHREAD_LIBS $DLOPEN_LIBS" DRI_DRIVER_LDFLAGS="-module -avoid-version -shared -Wl,-Bsymbolic" fi @@ -1045,7 +1033,6 @@ AM_CONDITIONAL(NEED_MEGADRIVER, test -n "$DRI_DIRS") AM_CONDITIONAL(NEED_LIBMESA, test "x$enable_xlib_glx" = xyes -o \ "x$enable_osmesa" = xyes -o \ -n "$DRI_DIRS") -AC_SUBST([EXPAT_INCLUDES]) AC_SUBST([DRI_LIB_DEPS]) AC_SUBST([DRI_DRIVER_LDFLAGS]) AC_SUBST([GALLIUM_DRI_LIB_DEPS]) diff --git a/src/gallium/targets/dri-swrast/Makefile.am b/src/gallium/targets/dri-swrast/Makefile.am index 6b629df307d..cddbbe32bb4 100644 --- a/src/gallium/targets/dri-swrast/Makefile.am +++ b/src/gallium/targets/dri-swrast/Makefile.am @@ -25,6 +25,7 @@ include $(top_srcdir)/src/gallium/Automake.inc AM_CFLAGS = \ $(GALLIUM_CFLAGS) \ $(PTHREAD_CFLAGS) \ + $(EXPAT_CFLAGS) \ $(LIBDRM_CFLAGS) \ $(VISIBILITY_CFLAGS) AM_CPPFLAGS = \ diff --git a/src/mesa/drivers/dri/common/Makefile.am b/src/mesa/drivers/dri/common/Makefile.am index 9f49ff3aee4..7f87ed6f560 100644 --- a/src/mesa/drivers/dri/common/Makefile.am +++ b/src/mesa/drivers/dri/common/Makefile.am @@ -27,6 +27,7 @@ AM_CFLAGS = \ -I$(top_srcdir)/src/mapi \ -I$(top_srcdir)/src/mesa/ \ $(DEFINES) \ + $(EXPAT_CFLAGS) \ $(VISIBILITY_CFLAGS) noinst_LTLIBRARIES = \