summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac280
1 files changed, 280 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..997dc6d
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,280 @@
+dnl Process this file with autoconf to create configure.
+
+dnl ################################################################
+dnl # Initialize autoconf
+dnl ################################################################
+AC_INIT([mate-notification-daemon], [2011.11.16], [https://github.com/perberos/mate-desktop-environment])
+AC_PREREQ(2.63)
+
+AC_CONFIG_HEADERS([config.h])
+AC_CONFIG_SRCDIR([config.h.in])
+AC_CONFIG_MACRO_DIR([macros])
+
+dnl ################################################################
+dnl # Version information
+dnl ################################################################
+NOTIFICATION_DAEMON_MAJOR_VERSION=0
+NOTIFICATION_DAEMON_MINOR_VERSION=5
+NOTIFICATION_DAEMON_MICRO_VERSION=0
+NOTIFICATION_DAEMON_DEVEL_VERSION=0
+
+NOTIFICATION_DAEMON_VERSION=$NOTIFICATION_DAEMON_MAJOR_VERSION.$NOTIFICATION_DAEMON_MINOR_VERSION.$NOTIFICATION_DAEMON_MICRO_VERSION
+
+if test "x$NOTIFICATION_DAEMON_DEVEL_VERSION" != "x0"; then
+ if test "x$NOTIFICATION_DAEMON_MICRO_VERSION" = "x0"; then
+ NOTIFICATION_DAEMON_MICRO_VERSION=$NOTIFICATION_DAEMON_DEVEL_VERSION
+ NOTIFICATION_DAEMON_VERSION=$NOTIFICATION_DAEMON_MAJOR_VERSION.$NOTIFICATION_DAEMON_MINOR_VERSION.$NOTIFICATION_DAEMON_DEVEL_VERSION
+ else
+ NOTIFICATION_DAEMON_VERSION=$NOTIFICATION_DAEMON_VERSION.$NOTIFICATION_DAEMON_DEVEL_VERSION
+ fi
+fi
+
+AC_DEFINE_UNQUOTED(NOTIFICATION_DAEMON_MAJOR_VERSION, $NOTIFICATION_DAEMON_MAJOR_VERSION,
+ [mate-notification-daemon major version.])
+AC_DEFINE_UNQUOTED(NOTIFICATION_DAEMON_MINOR_VERSION, $NOTIFICATION_DAEMON_MINOR_VERSION,
+ [mate-notification-daemon minor version.])
+AC_DEFINE_UNQUOTED(NOTIFICATION_DAEMON_MICRO_VERSION, $NOTIFICATION_DAEMON_MICRO_VERSION,
+ [mate-notification-daemon micro version.])
+AC_DEFINE_UNQUOTED(NOTIFICATION_DAEMON_VERSION, "$NOTIFICATION_DAEMON_VERSION",
+ [mate-notification-daemon version.])
+
+dnl ################################################################
+dnl # Initialize automake
+dnl ################################################################
+AM_INIT_AUTOMAKE([1.10 no-dist-gzip dist-bzip2])
+AM_MAINTAINER_MODE
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+
+dnl ################################################################
+dnl # Check for some standard stuff.
+dnl ################################################################
+# Checks for programs
+AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_MAKE_SET
+AC_PROG_LN_S
+AC_PROG_INSTALL
+
+# Checks for typedefs, structures, and compiler characteristics.
+AC_TYPE_SIZE_T
+
+dnl ---------------------------------------------------------------------------
+dnl Initialize Libtool
+dnl ---------------------------------------------------------------------------
+LT_PREREQ([2.2.6])
+LT_INIT
+
+
+dnl ---------------------------------------------------------------------------
+dnl i18n stuff
+dnl ---------------------------------------------------------------------------
+IT_PROG_INTLTOOL([0.40.0])
+
+AC_SUBST([GETTEXT_PACKAGE], [mate-notification-daemon])
+AM_GNU_GETTEXT_VERSION([0.11])
+AM_GLIB_GNU_GETTEXT
+AC_DEFINE([GETTEXT_PACKAGE], [PACKAGE_TARNAME], [Define to the gettext package name.])
+
+
+dnl ---------------------------------------------------------------------------
+dnl Requirements for the themes
+dnl ---------------------------------------------------------------------------
+GTK_API_VERSION=2.0
+GTK_REQUIRED=2.18.0
+
+AC_MSG_CHECKING([which gtk+ version to compile against])
+AC_ARG_WITH([gtk],
+ [AS_HELP_STRING([--with-gtk=2.0|3.0],[which gtk+ version to compile against (default: 2.0)])],
+ [case "$with_gtk" in
+ 2.0|3.0) ;;
+ *) AC_MSG_ERROR([invalid gtk version specified]) ;;
+ esac],
+ [with_gtk=2.0])
+AC_MSG_RESULT([$with_gtk])
+
+case "$with_gtk" in
+ 2.0) GTK_API_VERSION=2.0
+ GTK_REQUIRED=2.18.0
+ ;;
+ 3.0) GTK_API_VERSION=3.0
+ GTK_REQUIRED=3.0.0
+ ;;
+esac
+
+PKG_CHECK_MODULES(THEME,
+ gtk+-$GTK_API_VERSION >= $GTK_REQUIRED
+)
+AC_SUBST(THEME_CFLAGS)
+AC_SUBST(THEME_LIBS)
+
+dnl ---------------------------------------------------------------------------
+dnl Requirements for the daemon
+dnl ---------------------------------------------------------------------------
+REQ_GLIB_VERSION=2.18.0
+REQ_DBUS_VERSION=0.78
+REQ_LIBCANBERRA_GTK_VERSION=0.4
+pkg_modules="
+ gtk+-$GTK_API_VERSION >= $GTK_REQUIRED, \
+ glib-2.0 >= $REQ_GLIB_VERSION, \
+ dbus-1 >= $REQ_DBUS_VERSION, \
+ dbus-glib-1 >= $REQ_DBUS_VERSION, \
+ libcanberra-gtk >= $REQ_LIBCANBERRA_GTK_VERSION, \
+ mateconf-2.0, \
+ libwnck-1.0 \
+ x11 \
+"
+PKG_CHECK_MODULES(NOTIFICATION_DAEMON, $pkg_modules)
+AC_SUBST(NOTIFICATION_DAEMON_CFLAGS)
+AC_SUBST(NOTIFICATION_DAEMON_LIBS)
+
+dnl ---------------------------------------------------------------------------
+dnl Requirements for the setup tool
+dnl ---------------------------------------------------------------------------
+PKG_CHECK_MODULES(NOTIFICATION_CAPPLET, glib-2.0 >= $REQ_GLIB_VERSION gtk+-$GTK_API_VERSION >= $GTK_REQUIRED mateconf-2.0 libmatenotify dbus-1 dbus-glib-1)
+AC_SUBST(NOTIFICATION_CAPPLET_CFLAGS)
+AC_SUBST(NOTIFICATION_CAPPLET_LIBS)
+
+gdk_modules="
+ gdk-2.0 >= $GTK_REQUIRED, \
+ gdk-pixbuf-2.0 >= $GTK_REQUIRED \
+"
+PKG_CHECK_MODULES(GDK, $gdk_modules, have_gdk=yes,
+[
+ have_gdk=no
+ AC_MSG_WARN("Some test apps will not be built")
+])
+
+AM_CONDITIONAL(HAVE_GDK, test "x$have_gdk" = "xyes")
+
+AC_SUBST(GDK_CFLAGS)
+AC_SUBST(GDK_LIBS)
+
+AM_MATECONF_SOURCE_2
+AC_PATH_PROG(MATECONFTOOL, mateconftool-2, no)
+
+if test "x$MATECONFTOOL" = "xno"; then
+ AC_MSG_ERROR([mateconftool-2 executable not found in your path - should be installed with Gconf])
+fi
+
+dnl
+dnl Check the D-BUS version.
+dnl
+
+AC_MSG_CHECKING([dbus version])
+DBUS_VERSION=`$PKG_CONFIG --modversion dbus-1`
+DBUS_MAJOR_VER=`echo $DBUS_VERSION | cut -d. -f 1`
+DBUS_MINOR_VER=`echo $DBUS_VERSION | cut -d. -f 2`
+DBUS_MICRO_VER=`echo $DBUS_VERSION | cut -d. -f 3`
+
+AC_MSG_RESULT($DBUS_VERSION)
+AC_DEFINE_UNQUOTED(DBUS_MAJOR_VER, $DBUS_MAJOR_VER, [D-BUS major version.])
+AC_DEFINE_UNQUOTED(DBUS_MINOR_VER, $DBUS_MINOR_VER, [D-BUS minor version.])
+AC_DEFINE_UNQUOTED(DBUS_MICRO_VER, $DBUS_MICRO_VER, [D-BUS micro version.])
+
+AC_DEFINE_UNQUOTED(DBUS_API_SUBJECT_TO_CHANGE, ,DBUS API is subject to change)
+
+AS_AC_EXPAND(SYSCONFDIR, $sysconfdir)
+AS_AC_EXPAND(LIBDIR, $libdir)
+AS_AC_EXPAND(DATADIR, $datadir)
+AS_AC_EXPAND(LIBEXECDIR, $libexecdir)
+
+AC_ARG_WITH(dbus-sys, [ --with-dbus-sys=<dir> where D-BUS system.d directory is])
+AC_ARG_WITH(dbus-services, [ --with-dbus-services=<dir> where D-BUS services directory is])
+
+if ! test -z "$with_dbus_sys" ; then
+ DBUS_SYS_DIR="$with_dbus_sys"
+else
+ DBUS_SYS_DIR="$SYSCONFDIR/dbus-1/system.d"
+fi
+
+if ! test -z "$with_dbus_services" ; then
+ DBUS_SERVICES_DIR="$with_dbus_services"
+else
+ DBUS_SERVICES_DIR="$DATADIR/dbus-1/services"
+fi
+
+AC_SUBST(DBUS_SYS_DIR)
+AC_SUBST(DBUS_SERVICES_DIR)
+AC_DEFINE_UNQUOTED(DBUS_SYSTEMD_DIR, "$DBUS_SYS_DIR", [Where system.d dir for DBUS is])
+AC_DEFINE_UNQUOTED(DBUS_SERVICES_DIR, "$DBUS_SERVICES_DIR", [Where services dir for DBUS is])
+
+dnl ---------------------------------------------------------------------------
+dnl Turn on the additional warnings last
+dnl ---------------------------------------------------------------------------
+MATE_COMPILE_WARNINGS([maximum])
+MATE_CXX_WARNINGS([yes])
+MATE_MAINTAINER_MODE_DEFINES
+
+AC_ARG_ENABLE(more-warnings,
+ AS_HELP_STRING([--enable-more-warnings],
+ [Maximum compiler warnings]),
+ set_more_warnings="$enableval",[
+ if test -d $srcdir/.git; then
+ set_more_warnings=yes
+ else
+ set_more_warnings=no
+ fi])
+
+AC_MSG_CHECKING(for more warnings)
+if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
+ AC_MSG_RESULT(yes)
+ WARNINGCFLAGS="\
+ -Wchar-subscripts -Wmissing-declarations \
+ -Wcast-align -Wsign-compare -Wp,-D_FORTIFY_SOURCE=2 \
+ $WARNINGCFLAGS"
+
+ for option in -Wno-strict-aliasing; do
+ SAVE_CFLAGS="$WARNINGCFLAGS"
+ WARNINGCFLAGS="$WARNINGCFLAGS $option"
+ AC_MSG_CHECKING([whether gcc understands $option])
+ AC_TRY_COMPILE([], [],
+ has_option=yes,
+ has_option=no,)
+ if test $has_option = no; then
+ WARNINGCFLAGS="$SAVE_CFLAGS"
+ fi
+ AC_MSG_RESULT($has_option)
+ unset has_option
+ unset SAVE_CFLAGS
+ done
+ unset option
+else
+ AC_MSG_RESULT(no)
+fi
+
+AM_CFLAGS="$AM_CFLAGS $WARN_CFLAGS $WARNINGCFLAGS"
+AM_CXXFLAGS="$AM_CXXFLAGS $WARN_CXXFLAGS"
+
+AC_SUBST([AM_CFLAGS])
+AC_SUBST([AM_CXXFLAGS])
+
+AC_CONFIG_FILES([
+Makefile
+data/Makefile
+data/org.freedesktop.mate.Notifications.service
+po/Makefile.in
+src/Makefile
+src/daemon/Makefile
+src/capplet/Makefile
+src/themes/Makefile
+src/themes/slider/Makefile
+src/themes/standard/Makefile
+])
+
+AC_OUTPUT
+
+echo "
+ $PACKAGE_NAME $PACKAGE_VERSION
+ =========================
+
+ prefix: ${prefix}
+ exec_prefix: ${exec_prefix}
+ bindir: ${bindir}
+ datadir: ${datadir}
+ source code location: ${srcdir}
+ cflags: ${AM_CFLAGS}
+
+ dbus-1 system.d $DBUS_SYS_DIR
+ dbus-1 services $DBUS_SERVICES_DIR
+
+"