diff options
author | Bernhard R. Link <brlink@debian.org> | 2008-05-28 18:59:57 +0200 |
---|---|---|
committer | Bernhard R. Link <brlink@debian.org> | 2008-05-28 18:59:57 +0200 |
commit | 229ba0708073b0d02ab253290f224a91844f1b17 (patch) | |
tree | 405221da55c596e8d663d79543403a9a9a90602c /configure.in | |
parent | bb3e3db9c29a478939394c612ab93f9d9cdc3bc8 (diff) | |
download | ratpoison-229ba0708073b0d02ab253290f224a91844f1b17.zip |
Only check for xft.pc if xft is not disabled.
If xft is explicitly requested, not finding it causes an error.
The CPP and LD flags for the different libraries are put in
specific variables and only added in the Makefile.
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 59 |
1 files changed, 39 insertions, 20 deletions
diff --git a/configure.in b/configure.in index 927fe7c..eae4ac3 100644 --- a/configure.in +++ b/configure.in @@ -42,23 +42,36 @@ AC_ARG_WITH(xterm, [ --with-xterm=PROG set the x terminal emulator used b term_prog=$withval, term_prog="xterm") AC_DEFINE_UNQUOTED(TERM_PROG, "$term_prog", X terminal emulator to use) -dnl Configure Xft. If it's found then use it unless explicitely disabled -PKG_CHECK_MODULES([XFT], [xft],,[noop=noop]) - -if test -z "$XFT_PKG_ERRORS"; then +XFT_CFLAGS= +XFT_LIBS= +AC_ARG_WITH(xft, AC_HELP_STRING([--without-xft], [Don't use the Xft library even if available]), + xft=$withval, xft=default) +if test "x$xft" != "xno"; then + dnl Configure Xft. + PKG_CHECK_MODULES([XFT], [xft],,[noop=noop]) AC_MSG_CHECKING(whether to use Xft) - AC_ARG_WITH(xft, AC_HELP_STRING([--without-xft], [Don't use the Xft library even if available]), - xft=$withval, xft=yes) - - if test "x$xft" != "xno"; then + echo "pkg_failed is $pkg_failed" >&5 +dnl pkg_failed can be yes, no or untried (if there is no pkg-config or that does not work). + if test "$pkg_failed" = "no" ; then AC_DEFINE_UNQUOTED(USE_XFT_FONT, 1, [Define this to use Xft]) - CFLAGS="$CFLAGS $XFT_CFLAGS" - LDFLAGS="$LDFLAGS $XFT_LIBS" AC_MSG_RESULT(yes) + elif test "x$xft" != "xdefault" ; then +dnl if explicitly requested but not found, bail out: + AC_MSG_RESULT(no) + if test "$pkg_failed" = "untried" ; then + AC_MSG_ERROR([Not Xft library found (this needs a working pkg-config)!]) + else + AC_MSG_ERROR([No Xft library found!]) + fi else - AC_MSG_RESULT(no) + AC_MSG_RESULT(no) fi +else + AC_MSG_CHECKING(whether to use Xft) + AC_MSG_RESULT(no) fi +AC_SUBST(XFT_CFLAGS) +AC_SUBST(XFT_LIBS) dnl Checks for programs. AC_CHECK_TOOL(CC, gcc) @@ -91,28 +104,34 @@ AC_ARG_ENABLE(history, check_for_libhistory=no fi],[check_for_libhistory=yes]) +HISTORY_LIBS="" if test x$check_for_libhistory = xyes ; then AC_CHECK_HEADERS([readline/history.h], AC_CHECK_LIB(history, add_history, - [LIBS="$LIBS -lhistory" + [HISTORY_LIBS="-lhistory" AC_DEFINE_UNQUOTED(HAVE_HISTORY, 1, Define this to enable history)], AC_MSG_WARN([*** Can't find History lib. Install readline dev libs for history.])), AC_MSG_WARN([*** Can't find History header. Install readline dev libs for history.])) fi +AC_SUBST(HISTORY_LIBS) -LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS $X_EXTRA_LIBS" -CFLAGS="$CFLAGS $X_CFLAGS" - -AC_CHECK_LIB(X11, XOpenDisplay,, - AC_MSG_ERROR([*** Can't find libX11])) +AC_CHECK_LIB(X11, XOpenDisplay, [X_LIBS="-lX11 $X_LIBS"], + AC_MSG_ERROR([*** Can't find libX11]),$X_LIBS $X_EXTRA_LIBS) +mysavedCPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $X_CFLAGS" AC_CHECK_HEADERS([X11/extensions/Xinerama.h], [], [], [ #include <X11/Xlib.h> ]) -AC_CHECK_LIB(Xext, XMissingExtension, [LIBS="-lXext $LIBS"],, $CFLAGS $LDFLAGS) -AC_CHECK_LIB(Xinerama, XineramaQueryScreens, [LIBS="-lXinerama $LIBS"; AC_DEFINE(HAVE_LIBXINERAMA,1,[Xinerama])],, $CFLAGS $LDFLAGS) -AC_CHECK_LIB(Xtst, XTestFakeButtonEvent, [LIBS="-lXtst $LIBS"; AC_DEFINE(HAVE_LIBXTST,1,[Xtst])],, $CFLAGS $LDFLAGS) +CPPFLAGS="$mysavedCPPFLAGS" + +AC_CHECK_LIB(Xext, XMissingExtension, [X_LIBS="-lXext $X_LIBS"],,$X_LIBS $X_EXTRA_LIBS) +AC_CHECK_LIB(Xinerama, XineramaQueryScreens, [X_LIBS="-lXinerama $X_LIBS"; AC_DEFINE(HAVE_LIBXINERAMA,1,[Xinerama])],,$X_LIBS $X_EXTRA_LIBS) +AC_CHECK_LIB(Xtst, XTestFakeButtonEvent, [X_LIBS="-lXtst $X_LIBS"; AC_DEFINE(HAVE_LIBXTST,1,[Xtst])],,$X_LIBS $X_EXTRA_LIBS) +AC_SUBST(X_LIBS) +AC_SUBST(X_EXTRA_LIBS) +AC_SUBST(X_CFLAGS) dnl Check for electric fence library dnl AC_CHECK_LIB(efence,malloc,,) |