X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=configure.ac;h=8152ae63e1a8faa2bd0288abb52480d1ebf93edf;hb=143d2df034e1304c1d9672226bd71f01533a1a63;hp=2bc34857545323692716f16132420c8f898871c4;hpb=90f24142852d826e0a9725c7549f3326798085bd;p=chaz%2Fopenbox diff --git a/configure.ac b/configure.ac index 2bc34857..8152ae63 100644 --- a/configure.ac +++ b/configure.ac @@ -1,23 +1,23 @@ -AC_INIT -AC_CONFIG_SRCDIR([src/main.cc]) -AM_INIT_AUTOMAKE([openbox], [2.90.0]) +AC_INIT([src/main.cc]) +AM_CONFIG_HEADER(config.h) +AM_INIT_AUTOMAKE([openbox], [2.90.0cvs]) -dnl Determine default prefix -test "$prefix" = "NONE" && prefix="$ac_default_prefix" +AC_PREREQ([2.50]) -dnl We're in the C++ world -AC_LANG(C++) +AC_PATH_PROG([regex_cmd], [sed]) +test -z $regex_cmd && AC_MSG_ERROR([sed not found]) AC_PROG_CC AC_PROG_CXX -AC_PROG_INSTALL AC_PROG_LIBTOOL +LIBTOOL="$LIBTOOL --silent" +AC_PROG_INSTALL -AC_CHECK_PROGS([regex_cmd], [sed]) -if test x$regex_cmd = "x"; then - AC_MSG_ERROR([error. sed is required to build the default menu file.]) -fi +ALL_LINGUAS="" +AM_GNU_GETTEXT +AC_LANG(C++) + dnl Check what compiler we are using AC_MSG_CHECKING([for GCC]) if test "$GCC" = "yes"; then @@ -52,9 +52,6 @@ AC_HEADER_TIME dnl Determine the return type of signal handlers AC_TYPE_SIGNAL -dnl Look for gettext -AM_GNU_GETTEXT - dnl Check whether to include debugging code DEBUG="" AC_MSG_CHECKING([whether to include verbose debugging code]) @@ -93,6 +90,101 @@ AC_CHECK_LIB([X11], [XOpenDisplay], AC_MSG_ERROR([Could not find XOpenDisplay in -lX11.]) ) + +dnl Check for Xft >= 2 +XFT_MIN_MAJOR=2 +XFT_MIN_MINOR=0 +XFT_MIN_REVISION=0 +XFT_MIN=$XFT_MIN_MAJOR.$XFT_MIN_MINOR.$XFT_MIN_REVISION +AC_MSG_CHECKING([for Xft version >= $XFT_MIN]) +if ! pkg-config --atleast-version $XFT_MIN xft; then + AC_MSG_RESULT([no]) + AC_MSG_ERROR([Openbox requires the Xft version >= $XFT_MIN font library. +See http://www.fontconfig.org/ +]) +fi + +AC_MSG_RESULT([yes]) + +dnl Store these +OLDLIBS=$LIBS +OLDCPPFLAGS=$CPPFLAGS + +XFT_CFLAGS="`pkg-config --cflags xft`" +XFT_LIBS="`pkg-config --libs xft`" + +dnl Set these for checking with the tests below. They'll be restored after +LIBS="$LIBS $XFT_LIBS" +CPPFLAGS="$XFT_CFLAGS $CPPFLAGS" + +AC_CHECK_LIB([Xft], [XftFontOpenName], + AC_MSG_CHECKING([for X11/Xft/Xft.h for Xft >= $XFT_MIN]) + AC_TRY_COMPILE( + [ + #include + #include + ], + [ + #if !defined(XFT_MAJOR) + # error Xft.h is too old + #endif + #if XFT_MAJOR < $XFT_MIN_MAJOR + # error Xft.h is too old + #endif + #if XFT_MAJOR == $XFT_MIN_MAJOR + # if XFT_MINOR < $XFT_MIN_MINOR + # error Xft.h is too old + # endif + #endif + #if XFT_MAJOR == $XFT_MIN_MAJOR + # if XFT_MAJOR == $XFT_MIN_MINOR + # if XFT_REVISION < $XFT_MIN_REVISION + # error Xft.h is too old + # endif + # endif + #endif + + int i = XFT_MAJOR; + XftFont foo; + ], + [ + AC_MSG_RESULT([yes]) + ], + [ + AC_MSG_RESULT([no]) + AC_MSG_ERROR([Openbox requires the Xft version >= $XFT_MIN font library. +See http://www.fontconfig.org/ +]) + ] + ) + + AC_MSG_CHECKING([if we can compile with Xft]) + AC_TRY_LINK( + [ + #include + #include + ], + [ + int i = XFT_MAJOR; + XftFont foo + ], + [ + AC_MSG_RESULT([yes]) + ], + [ + AC_MSG_RESULT([no]) + AC_MSG_ERROR([Unable to compile with the Xft library. +]) + ] + ) +) +dnl Restore the old values. Use XFT_CFLAGS and XFT_LIBS in the Makefile.am's +LIBS=$OLDLIBS +CPPFLAGS=$OLDCPPFLAGS + +AC_SUBST([XFT_CFLAGS]) +AC_SUBST([XFT_LIBS]) + dnl Check for XShape extension support AC_CHECK_LIB([Xext], [XShapeCombineShape], AC_MSG_CHECKING([for X11/extensions/shape.h]) @@ -108,7 +200,7 @@ AC_CHECK_LIB([Xext], [XShapeCombineShape], [ AC_MSG_RESULT([yes]) SHAPE="yes" - AC_DEFINE([HAVE_SHAPE], [1], [Found the XShape extension]) + AC_DEFINE([SHAPE], [1], [Found the XShape extension]) LIBS="$LIBS -lXext" ], [ @@ -169,29 +261,32 @@ AC_ARG_ENABLE([xinerama], AC_MSG_RESULT([no]) ) -dnl Output files -AM_CONFIG_HEADER(config.h) -AC_CONFIG_FILES([ intl/Makefile - Makefile - m4/Makefile - po/Makefile.in - otk/Makefile - src/Makefile - util/Makefile - util/epist/Makefile - doc/Makefile - data/Makefile - data/styles/Makefile - version.h -]) + + +AC_CONFIG_FILES([Makefile + m4/Makefile + po/Makefile.in + intl/Makefile + otk/Makefile + src/Makefile + util/Makefile + util/epist/Makefile + doc/Makefile + doc/doxygen/Makefile + data/Makefile + data/styles/Makefile + version.h + ]) AC_OUTPUT -dnl Print results -AC_MSG_RESULT([]) -AC_MSG_RESULT([ $PACKAGE_NAME version $PACKAGE_VERSION configured successfully.]) -AC_MSG_RESULT([]) +AC_MSG_RESULT +AC_MSG_RESULT([$PACKAGE version $VERSION configured successfully.]) + +AC_MSG_RESULT AC_MSG_RESULT([Using '$prefix' for installation.]) AC_MSG_RESULT([Using '$CXX' for C++ compiler.]) AC_MSG_RESULT([Building with '$CPPFLAGS' for C++ compiler flags.]) AC_MSG_RESULT([Building with '$LIBS' for linker flags.]) -AC_MSG_RESULT([]) \ No newline at end of file +AC_MSG_RESULT +AC_MSG_RESULT([configure complete, now type \"make\"]) +AC_MSG_RESULT \ No newline at end of file