dnl configure.in for Fluxbox - created from configure.in Blackbox 0.61.1 dnl Initialize autoconf and automake AC_INIT(src/main.cc) AC_PREREQ(2.52) AM_INIT_AUTOMAKE(fluxbox,0.9.3,no-define) dnl Determine default prefix test x$prefix = "xNONE" && prefix="$ac_default_prefix" dnl Check for various flavors of UNIX(r) dnl AC_AIX dnl AC_ISC_POSIX AC_LANG_CPLUSPLUS dnl Locate required external software AC_PROG_CC AC_PROG_CXX AC_PROG_INSTALL AM_PROG_LIBTOOL AC_CHECK_PROGS(regex_cmd, sed) if test x$regex_cmd = "x"; then AC_MSG_ERROR([error. sed is required to build the data files.]) fi dnl Check for system header files AC_HEADER_STDC AC_CHECK_HEADERS(errno.h ctype.h dirent.h fcntl.h libgen.h locale.h nl_types.h process.h signal.h stdarg.h stdio.h time.h unistd.h sys/param.h sys/select.h sys/signal.h sys/stat.h sys/time.h sys/types.h sys/wait.h) AC_HEADER_TIME dnl Check for existance of basename(), setlocale() and strftime() AC_CHECK_FUNCS(basename, , AC_CHECK_LIB(gen, basename, LIBS="$LIBS -lgen")) AC_CHECK_FUNCS(getpid setlocale sigaction strftime strcasestr snprintf vsnprintf catopen catgets catclose) AC_CHECK_LIB(nsl, t_open, LIBS="$LIBS -lnsl") AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket") dnl Check for X headers and libraries AC_PATH_X AC_PATH_XTRA test x$no_x = "xyes" && AC_MSG_ERROR([Fluxbox requires the X Window System libraries and headers.]) test x$x_includes = "x" && x_includes="/usr/include" test x$x_libraries = "x" && x_libraries="/usr/lib" CFLAGS="$CFLAGS $X_CFLAGS" CXXFLAGS="$CXXFLAGS $X_CFLAGS" LIBS="$LIBS $X_LIBS" LDFLAGS="$LDFLAGS $LIBS $X_PRE_LIBS" dnl Check for required functions in -lX11 AC_CHECK_LIB(X11, XOpenDisplay, LIBS="$LIBS -lX11", AC_MSG_ERROR([Could not find XOpenDisplay in -lX11.]) ) LIBS="$LIBS $X_EXTRA_LIBS" Xext_lib="" dnl Check for XShape extension support and proper library files. SHAPE="" AC_MSG_CHECKING([whether to build support for the XShape extension]) AC_ARG_ENABLE( shape, [ --enable-shape enable support of the XShape extension [default=yes]]) : ${enableval="yes"} if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xext, XShapeCombineShape, AC_MSG_CHECKING([for X11/extensions/shape.h]) AC_TRY_LINK( #include <X11/Xlib.h> #include <X11/Xutil.h> #include <X11/extensions/shape.h> , long foo = ShapeSet, AC_MSG_RESULT([yes]) SHAPE="-DSHAPE"; Xext_lib="-lXext", AC_MSG_RESULT([no]) ) ) else AC_MSG_RESULT([no]) fi AC_SUBST(SHAPE) CXXFLAGS="$CXXFLAGS $SHAPE" LIBS="$LIBS $Xext_lib" dnl Check for the Slit AC_MSG_CHECKING([whether to include the Slit]) AC_ARG_ENABLE( slit, [ --enable-slit include code for the Slit [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(SLIT, 1, " compile with slit") else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([yes]) AC_DEFINE(SLIT, 1, " compile with slit") ) dnl Check for Remember options AC_MSG_CHECKING([whether to include remember functionality]) AC_ARG_ENABLE( remember, [ --enable-remember include code for Remembering attributes [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(REMEMBER, 1, " compile with remember") REMEMBER_SRC=true else AC_MSG_RESULT([no]) REMEMBER_SRC=false fi, AC_MSG_RESULT([yes]) AC_DEFINE(REMEMBER, 1, " compile with remember") REMEMBER_SRC=true ) AM_CONDITIONAL(REMEMBER_SRC, test x$REMEMBER_SRC = xtrue) AC_MSG_CHECKING([whether to include the new WM Spec]) AC_ARG_ENABLE( newwmspec, [ --enable-newwmspec include code for the new WM Spec [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) NEWWMSPEC=true AC_DEFINE(USE_NEWWMSPEC, 1, " use extened window manager hints") else AC_MSG_RESULT([no]) NEWWMSPEC=false fi, AC_MSG_RESULT([yes]) AC_DEFINE(USE_NEWWMSPEC, 1, " use extened window manager hints") NEWWMSPEC=true ) AM_CONDITIONAL(NEWWMSPEC, test x$NEWWMSPEC = xtrue) dnl Check for ordered 8bpp dithering AC_MSG_CHECKING([whether to include Pseudocolor ordered dithering code]) AC_ARG_ENABLE(ordered-pseudo, [ --enable-ordered-pseudo include code for ordered pseudocolor (8bpp) dithering [default=no]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(ORDEREDPSEUDO, 1, "ordered dithering code") else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([no]) ) dnl Check whether to include debugging code DEBUG="" AC_MSG_CHECKING([whether to include verbose debugging code]) AC_ARG_ENABLE(debug, [ --enable-debug include verbose debugging code [default=no]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) DEBUG="-DDEBUG -fno-inline" else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([no]) ) AC_SUBST(DEBUG) CXXFLAGS="$CXXFLAGS $DEBUG" dnl Check whether to include natural language support (i18n) AC_MSG_CHECKING([whether to include NLS support]) AC_ARG_ENABLE(nls, [ --enable-nls include natural language support [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(NLS, 1, "Natural language support") NLS="-DNLS" else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([yes]) AC_DEFINE(NLS, 1, "Natural language support") NLS="-DNLS" ) AC_SUBST(NLS) AC_CHECK_LIB(xpg4, setlocale, LIBS="$LIBS -lxpg4") AC_CHECK_PROGS(gencat_cmd, gencat) if test x$gencat_cmd = "x"; then NLS="" fi dnl Check for new timed pixmap cache AC_MSG_CHECKING([whether to use the new timed pixmap cache]) AC_ARG_ENABLE( timed-cache, [ --enable-timed-cache use new timed pixmap cache [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(TIMEDCACHE, 1, "timed cache") else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([yes]) AC_DEFINE(TIMEDCACHE, 1, "timed cache") ) dnl Check KDE AC_MSG_CHECKING([whether to have KDE slit support]) AC_ARG_ENABLE( kde, [ --enable-kde KDE slit support [default=no]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(KDE, 1, "KDE slit support") else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([no]) ) dnl Check GNOME AC_MSG_CHECKING([whether to have GNOME support]) AC_ARG_ENABLE( gnome, [ --enable-gnome GNOME support [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(USE_GNOME, 1, "Gnome 1 support") GNOME=true else AC_MSG_RESULT([no]) GNOME=false fi, AC_MSG_RESULT([yes]) AC_DEFINE(USE_GNOME, 1, "Gnome 1 support") GNOME=true ) AM_CONDITIONAL(GNOME, test x$GNOME = xtrue) AC_MSG_CHECKING([whether to have Xft support]) AM_PATH_XFT(yes, XFT=true, XFT=false ) if test "x$XFT" = "xtrue" ; then AC_TRY_LINK([ #include <X11/Xft/Xft.h> ], [ XftFontClose(0, 0); return 1; ], [ AC_DEFINE(USE_XFT, 1, "antialias support") AC_MSG_CHECKING([Xft UTF-8 support]) AC_TRY_LINK([ #include <X11/Xft/Xft.h> ], [ XftDrawStringUtf8(0, 0, 0, 0, 0, 0, 0); return 0; ], AC_DEFINE(HAVE_XFT_UTF8_STRING, 1, "Xft UTF8 support") AC_MSG_RESULT(yes), AC_MSG_RESULT(no) ) ], [ AC_MSG_RESULT([Could not link with Xft. Install Xft if you want support for it.]) XFT=false ]) fi AM_CONDITIONAL(XFT, test x$XFT = xtrue) AC_MSG_CHECKING([whether to have Xrender (transparent) support]) AC_ARG_ENABLE( xrender, [ --enable-xrender Xrender (transparent) support [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xrender, XRenderCreatePicture, AC_DEFINE(HAVE_XRENDER, 1, "Xrender support") LIBS="$LIBS -lXrender") else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xrender, XRenderCreatePicture, AC_DEFINE(HAVE_XRENDER, 1, "Xrender support") LIBS="$LIBS -lXrender") ) AC_MSG_CHECKING([whether to have Xpm (pixmap themes) support]) AC_ARG_ENABLE( xpm, [ --enable-xpm Xpm (pixmap themes) support [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xpm, XpmReadFileToPixmap, AC_DEFINE(HAVE_XPM, 1, "Xpm support") LIBS="$LIBS -lXpm") else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xpm, XpmReadFileToPixmap, AC_DEFINE(HAVE_XPM, 1, "Xpm support") LIBS="$LIBS -lXpm") ) AC_MSG_CHECKING([whether to have Xmb (multibyte font, utf-8) support]) AC_ARG_ENABLE( xmb, [ --enable-xmb Xmb (multibyte font, utf-8) support [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_DEFINE(USE_XMB, 1, "multibyte support") MULTIBYTE=true else AC_MSG_RESULT([no]) MULTIBYTE=false fi, AC_MSG_RESULT([yes]) AC_DEFINE(USE_XMB, 1, "multibyte support") MULTIBYTE=true ) AM_CONDITIONAL(MULTIBYTE, test x$MULTIBYTE = xtrue) AC_MSG_CHECKING([whether to have RANDR (The X Resize and Rotate Extension) support]) AC_ARG_ENABLE( randr, [ --enable-randr RANDR (The X Resize and Rotate Extension) support [default=yes]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xrandr, XRRQueryExtension, AC_DEFINE(HAVE_RANDR, 1, "randr support") LIBS="$LIBS -lXrandr") else AC_MSG_RESULT([no]) fi, AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xrandr, XRRQueryExtension, AC_DEFINE(HAVE_RANDR, 1, "randr support") LIBS="$LIBS -lXrandr") ) dnl Check for Xinerama support AC_MSG_CHECKING([whether to build support for the Xinerama extension]) AC_ARG_ENABLE(xinerama, [ --enable-xinerama enable xinerama extension [default=no]], , [enable_xinerama=no]) if test "x$enable_xinerama" = "xyes"; then AC_MSG_RESULT([yes]) AC_CHECK_LIB(Xinerama, XineramaQueryScreens, XINERAMA="-DXINERAMA"; Xinerama_libs="-lXinerama", ) else AC_MSG_RESULT([no]) fi AC_SUBST(XINERAMA) CXXFLAGS="$CXXFLAGS $XINERAMA" LIBS="$LIBS $Xinerama_libs" dnl Determine the return type of signal handlers AC_TYPE_SIGNAL dnl Determine if maintainer portions of the Makefiles should be included. dnl AM_MAINTAINER_MODE dnl Print results 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 '$CXXFLAGS' for C++ compiler flags.]) AC_MSG_RESULT([Building with '$LIBS' for linker flags.]) AC_MSG_RESULT([]) dnl Output files AM_CONFIG_HEADER(config.h) AC_OUTPUT(Makefile version.h src/Makefile src/FbTk/Makefile util/Makefile util/fbrun/Makefile data/Makefile data/styles/Makefile doc/Makefile nls/Makefile nls/C/Makefile nls/da_DK/Makefile nls/es_ES/Makefile nls/et_EE/Makefile nls/fr_FR/Makefile nls/pt_BR/Makefile nls/ru_RU/Makefile nls/sv_SE/Makefile nls/tr_TR/Makefile nls/pt_PT/Makefile nls/bg_BG/Makefile nls/ja_JP/Makefile nls/lv_LV/Makefile nls/it_IT/Makefile nls/de_DE/Makefile )