dnl configure.ac dnl dnl xfdesktop - xfce4's desktop manager dnl dnl version info m4_define([xfdesktop_version_major], [4]) m4_define([xfdesktop_version_minor], [10]) m4_define([xfdesktop_version_micro], [0]) m4_define([xfdesktop_version_nano], []) m4_define([xfdesktop_version_build], [@REVISION@]) m4_define([xfdesktop_version_tag],[git]) m4_define([xfdesktop_version], [xfdesktop_version_major().xfdesktop_version_minor().xfdesktop_version_micro()ifelse(xfdesktop_version_nano(), [], [], [.xfdesktop_version_nano()])ifelse(xfdesktop_version_tag(), [git], [xfdesktop_version_tag()-xfdesktop_version_build()], [xfdesktop_version_tag()])]) dnl minimum required versions m4_define([glib_minimum_version], [2.24.0]) m4_define([gtk_minimum_version], [2.20.0]) m4_define([libxfce4util_minimum_version], [4.9.0]) m4_define([libxfce4ui_minimum_version], [4.9.0]) m4_define([xfce_minimum_version], [4.9.0]) m4_define([garcon_minimum_version], [0.1.2]) m4_define([exo_minimum_version], [0.7.0]) m4_define([thunar_minimum_version], [1.2.0]) m4_define([dbus_minimum_version], [0.84]) m4_define([wnck_minimum_version], [2.30]) m4_define([intltool_minimum_version], [0.31]) m4_define([xfconf_minimum_version], [4.8.0]) dnl init autoconf AC_INIT([xfdesktop], [xfdesktop_version], [http://bugzilla.xfce.org/]) AC_PREREQ([2.50]) dnl init automake AM_INIT_AUTOMAKE([1.8 dist-bzip2 tar-ustar no-dist-gzip]) AC_CONFIG_HEADERS([config.h]) AM_MAINTAINER_MODE m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) dnl check for UNIX variants AC_AIX AC_ISC_POSIX AC_MINIX AM_CONDITIONAL([HAVE_CYGWIN], [test "`uname | grep \"CYGWIN\"`" != ""]) dnl check for basic programs AC_PROG_CC AM_PROG_CC_C_O AC_PROG_INSTALL AC_PROG_INTLTOOL([intltool_minimum_version], [no-xml]) m4_ifdef([AC_PROG_SED], [AC_PROG_SED], [AC_CHECK_PROG(SED, sed, sed)]) dnl prepare libtool LT_PREREQ([2.2.6]) LT_INIT([disable-static]) dnl check for standard header files AC_HEADER_STDC AC_CHECK_HEADERS([ctype.h errno.h fcntl.h math.h pwd.h signal.h stddef.h \ string.h sys/mman.h sys/param.h sys/stat.h sys/statvfs.h \ sys/types.h sys/wait.h time.h \ unistd.h]) AC_CHECK_FUNCS([mmap sigaction srandom]) dnl Check for i18n support XDT_I18N([@LINGUAS@]) dnl Check for X11 installed XDT_CHECK_LIBX11_REQUIRE XDT_CHECK_LIBSM dnl Check for dbus-binding-tool AC_ARG_VAR([DBUS_BINDING_TOOL], [Tool to generate C bindings from XML D-Bus interface definitions]) AC_PATH_PROG([DBUS_BINDING_TOOL], [dbus-binding-tool], [no]) if test x"$DBUS_BINDING_TOOL" = x"no"; then AC_MSG_ERROR([could not find dbus-binding-tool in \$PATH. You can run ./configure DBUS_BINDING_TOOL=/path/to/dbus-binding-tool to define a custom location for it.]) fi dnl required XDT_CHECK_PACKAGE([GIO], [gio-2.0], [glib_minimum_version]) XDT_CHECK_PACKAGE([GMODULE], [gmodule-2.0], [glib_minimum_version]) XDT_CHECK_PACKAGE([GOBJECT], [gobject-2.0], [glib_minimum_version]) XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [glib_minimum_version]) XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [gtk_minimum_version]) XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [libxfce4util_minimum_version]) XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-1], [libxfce4ui_minimum_version]) XDT_CHECK_PACKAGE([LIBWNCK], [libwnck-1.0], [wnck_minimum_version]) XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [xfconf_minimum_version]) XDT_CHECK_OPTIONAL_PACKAGE([GIO_UNIX], [gio-unix-2.0], [glib_minimum_version], [gio-unix], [gio-unix, for special treatment of mount points on UNIX]) dnl do we want desktop icons at all? AC_ARG_ENABLE([desktop-icons], [AC_HELP_STRING([--disable-desktop-icons], [Do not compile in support for desktop icons (default=enabled)])], [ac_cv_enable_desktop_icons=$enableval], [ac_cv_enable_desktop_icons=yes]) if test "x$ac_cv_enable_desktop_icons" = "xno"; then enable_desktop_icons="no" else enable_desktop_icons="yes" AC_DEFINE([ENABLE_DESKTOP_ICONS], [1], [Set if desktop icon support is enabled]) fi AM_CONDITIONAL([ENABLE_DESKTOP_ICONS], [test "x$enable_desktop_icons" = "xyes"]) dnl if we want desktop icons, do we also want file icons? AC_ARG_ENABLE([file-icons], [AC_HELP_STRING([--disable-file-icons], [Do not compile in support for desktop file icons (default=enabled)])], [ac_cv_enable_file_icons=$enableval], [ac_cv_enable_file_icons=yes]) if test "x$ac_cv_enable_file_icons" = "xno" -o "x$enable_desktop_icons" != "xyes"; then enable_file_icons="no" else enable_file_icons="yes" fi if test "x$enable_desktop_icons" = "xyes" -a "x$enable_file_icons" = "xyes"; then dnl here i shall abuse the XDT_CHECK_PACKAGE macro XDT_CHECK_PACKAGE([DBUS], [dbus-glib-1], [dbus_minimum_version], [], [ echo "*** Optional package dbus-glib-1 was either not found on your system" echo "*** or is too old. Please install or upgrade to at least version" echo "*** dbus_minimum_version, or adjust the PKG_CONFIG_PATH environment variable" echo "*** if you installed the new version of the package in a nonstandard" echo "*** prefix. File/launcher icons will be disabled." ]) enable_file_icons="no" if test "x$DBUS_VERSION" != "x"; then enable_file_icons="yes" AC_DEFINE([ENABLE_FILE_ICONS], [1], [Define if file icons should be enabled]) fi fi AM_CONDITIONAL([ENABLE_FILE_ICONS], [test "x$enable_file_icons" = "xyes"]) dnl i'd rather have these two only checked conditionally, but this macro also dnl calls AM_CONDITIONAL(), which cannot be in an 'if' block XDT_CHECK_OPTIONAL_PACKAGE([THUNARX], [thunarx-2], [thunar_minimum_version], [thunarx], [Thunar's extension mechanism, to add external features to the desktop icon implementation]) dnl LIBEXO is required if file icons are enabled XDT_CHECK_PACKAGE([LIBEXO], [exo-1], [exo_minimum_version]) AC_ARG_ENABLE([desktop-menu], AC_HELP_STRING([--disable-desktop-menu], [Do not build the desktop menu module (default=enabled)]), [ac_cv_enable_desktop_menu=$enableval], [ac_cv_enable_desktop_menu=yes]) if test "x$ac_cv_enable_desktop_menu" = "xno"; then build_desktop_menu="no" else dnl time for more abuse! XDT_CHECK_PACKAGE([GARCON], [garcon-1], [garcon_minimum_version], [build_desktop_menu="yes"], [ echo "*** Optional package garcon-1 was either not found on your system" echo "*** or is too old. Please install or upgrade to at least version" echo "*** garcon_minimum_version, or adjust the PKG_CONFIG_PATH environment variable" echo "*** if you installed the new version of the package in a nonstandard" echo "*** prefix. Desktop menu will be disabled." build_desktop_menu="no" ]) if test "x$build_desktop_menu" = "xyes"; then AC_DEFINE([USE_DESKTOP_MENU], [1], [Define if we should build the desktop menu module]) fi fi AM_CONDITIONAL([BUILD_DESKTOP_MENU], [test "x$build_desktop_menu" = "xyes"]) AC_ARG_WITH([file-manager-fallback], [AC_HELP_STRING([--with-file-manager-fallback=PATH], [Default file manager fallback to handle external folders and applications (default=Thunar)])], [ac_cv_file_manager_fallback="$withval"], [ac_cv_file_manager_fallback=Thunar]) AC_DEFINE_UNQUOTED([FILE_MANAGER_FALLBACK], ["$ac_cv_file_manager_fallback"], [Set to the file manager to use as a fallback]) dnl ************************************** dnl *** Optional support for libnotify *** dnl ************************************** XDT_CHECK_OPTIONAL_PACKAGE([LIBNOTIFY], [libnotify], [0.4.0], [notifications], [Mount notification support], [yes]) dnl check for debugging support XDT_FEATURE_DEBUG AC_OUTPUT([ Makefile backgrounds/Makefile common/Makefile doc/Makefile pixmaps/Makefile po/Makefile.in settings/Makefile src/Makefile ]) echo echo "Build Configuration:" echo "* Build desktop menu module: $build_desktop_menu" echo "* Build support for desktop icons: $enable_desktop_icons" echo " Include support for file/launcher icons: $enable_file_icons" if test x"$GIO_UNIX_FOUND" = x"yes"; then echo "* Special treatment for mount points on UNIX: yes" else echo "* Special treatment for mount points on UNIX: no" fi if test x"$LIBNOTIFY_FOUND" = x"yes"; then echo "* Mount notification support: yes" else echo "* Mount notification support: no" fi echo