chiark / gitweb /
build-sys: ensure selinux configure check follows logic of other optional features
[elogind.git] / configure.ac
index fc0fc90c498e7e18972b3141900b8fb140b26a19..08f36469a9a16f28c38607d0f09c02c4ac2e296d 100644 (file)
@@ -17,7 +17,7 @@
 
 AC_PREREQ(2.63)
 
-AC_INIT([systemd],[11],[systemd-devel@lists.freedesktop.org])
+AC_INIT([systemd],[17],[systemd-devel@lists.freedesktop.org])
 AC_CONFIG_SRCDIR([src/main.c])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_HEADERS([config.h])
@@ -48,6 +48,9 @@ AM_PROG_CC_C_O
 AC_PROG_GCC_TRADITIONAL
 AC_USE_SYSTEM_EXTENSIONS
 
+AC_CHECK_TOOL(OBJCOPY, objcopy)
+AC_CHECK_TOOL(STRINGS, strings)
+
 CC_CHECK_CFLAGS_APPEND([ \
         -pipe \
         -Wall \
@@ -115,15 +118,12 @@ AC_SUBST(DBUS_LIBS)
 have_selinux=no
 AC_ARG_ENABLE(selinux, AS_HELP_STRING([--disable-selinux], [Disable optional SELINUX support]))
 if test "x$enable_selinux" != "xno"; then
-       # not using PKG_CHECK_MODULES as for some reason libselinux didn't
-       # install any pkg-config modules here
-       AC_SEARCH_LIBS([getcon], [selinux],
-                [AC_DEFINE(HAVE_SELINUX, 1, [Define if SELINUX is available]) have_selinux=yes],
-               have_selinux=no)
+        PKG_CHECK_MODULES(SELINUX, [ libselinux ],
+                [AC_DEFINE(HAVE_SELINUX, 1, [Define if SELinux is available]) have_selinux=yes], have_selinux=no)
         AC_SUBST(SELINUX_CFLAGS)
         AC_SUBST(SELINUX_LIBS)
         if test "x$have_selinux" = xno -a "x$enable_selinux" = xyes; then
-                AC_MSG_ERROR([*** selinux support requested but libraries not found])
+                AC_MSG_ERROR([*** SELinux support requested but libraries not found])
         fi
 fi
 AM_CONDITIONAL(HAVE_SELINUX, [test "$have_selinux" = "yes"])
@@ -233,7 +233,7 @@ if test "x$enable_libcryptsetup" != "xno"; then
         AC_SUBST(LIBCRYPTSETUP_CFLAGS)
         AC_SUBST(LIBCRYPTSETUP_LIBS)
         if test "x$have_libcryptsetup" = xno -a "x$enable_libcryptsetup" = xyes; then
-             AC_MSG_ERROR([*** libcryptsetup support requested but libraries not found])
+                AC_MSG_ERROR([*** libcryptsetup support requested but libraries not found])
         fi
 fi
 AM_CONDITIONAL(HAVE_LIBCRYPTSETUP, [test "$have_libcryptsetup" = "yes"])
@@ -241,23 +241,26 @@ AM_CONDITIONAL(HAVE_LIBCRYPTSETUP, [test "$have_libcryptsetup" = "yes"])
 have_gtk=no
 AC_ARG_ENABLE(gtk, AS_HELP_STRING([--disable-gtk], [disable GTK tools]))
 if test "x$enable_gtk" != "xno"; then
-        PKG_CHECK_MODULES(GTK, [ gtk+-2.0 gio-unix-2.0 libnotify ],
+        PKG_CHECK_MODULES(GTK, [ gtk+-2.0 glib-2.0 > 2.26 gio-unix-2.0 ],
                 [AC_DEFINE(HAVE_GTK, 1, [Define if GTK is available]) have_gtk=yes], have_gtk=no)
         AC_SUBST(GTK_CFLAGS)
         AC_SUBST(GTK_LIBS)
         if test "x$have_gtk" = xno -a "x$enable_gtk" = xyes; then
-             AC_MSG_ERROR([*** gtk support requested but libraries not found])
+                AC_MSG_ERROR([*** gtk support requested but libraries not found])
         fi
 fi
 AM_CONDITIONAL(HAVE_GTK, [test "$have_gtk" = "yes"])
 
 if test "$have_gtk" = "yes"; then
-        PKG_CHECK_MODULES(DBUSGLIB, [ dbus-glib-1 ])
-        AC_SUBST(DBUSGLIB_CFLAGS)
-        AC_SUBST(DBUSGLIB_LIBS)
+        PKG_CHECK_MODULES(LIBNOTIFY, [ libnotify ])
+        PKG_CHECK_EXISTS([ libnotify >= 0.7.0 ], [ libnotify07=yes ])
+
+        AC_SUBST(LIBNOTIFY_CFLAGS)
+        AC_SUBST(LIBNOTIFY_LIBS)
 fi
+AM_CONDITIONAL(LIBNOTIFY07, [ test "$libnotify07" = "yes" ])
 
-AM_PROG_VALAC([0.9])
+AM_PROG_VALAC([0.10])
 AC_SUBST(VAPIDIR)
 AM_CONDITIONAL(HAVE_VALAC, test x"$VALAC" != x)
 
@@ -280,6 +283,7 @@ if test "z$with_distro" = "z"; then
                 AC_CHECK_FILE(/etc/arch-release,with_distro="arch")
                 AC_CHECK_FILE(/etc/gentoo-release,with_distro="gentoo")
                 AC_CHECK_FILE(/etc/slackware-version,with_distro="slackware")
+                AC_CHECK_FILE(/etc/frugalware-release,with_distro="frugalware")
         fi
         if test "z$with_distro" = "z"; then
                 with_distro=`uname -s`
@@ -352,6 +356,12 @@ case $with_distro in
                 AC_DEFINE(TARGET_SLACKWARE, [], [Target is Slackware])
                 M4_DISTRO_FLAG=-DTARGET_SLACKWARE=1
                 ;;
+        frugalware)
+                SYSTEM_SYSVINIT_PATH=/etc/rc.d
+                SYSTEM_SYSVRCND_PATH=/etc/rc.d
+                AC_DEFINE(TARGET_FRUGALWARE, [], [Target is Frugalware])
+                M4_DISTRO_FLAG=-DTARGET_FRUGALWARE=1
+                ;;
         other)
                 AS_IF([test "x$with_syslog_service" = "x"],
                         [AC_MSG_ERROR([With --distro=other, you must pass --with-syslog-service= to configure])])
@@ -393,6 +403,12 @@ else
         SYSTEM_SYSV_COMPAT="no"
 fi
 
+AC_ARG_WITH([tty-gid],
+        [AS_HELP_STRING([--with-tty-gid=GID],
+                [Specify the numeric GID of the 'tty' group])],
+        [AC_DEFINE_UNQUOTED(TTY_GID, [$withval], [GID of the 'tty' group])],
+        [])
+
 AM_CONDITIONAL(TARGET_FEDORA, test x"$with_distro" = xfedora)
 AM_CONDITIONAL(TARGET_SUSE, test x"$with_distro" = xsuse)
 AM_CONDITIONAL(TARGET_DEBIAN, test x"$with_distro" = xdebian)
@@ -401,6 +417,7 @@ AM_CONDITIONAL(TARGET_DEBIAN_OR_UBUNTU, test x"$with_distro" = xdebian -o x"$wit
 AM_CONDITIONAL(TARGET_ARCH, test x"$with_distro" = xarch)
 AM_CONDITIONAL(TARGET_GENTOO, test x"$with_distro" = xgentoo)
 AM_CONDITIONAL(TARGET_SLACKWARE, test x"$with_distro" = xslackware)
+AM_CONDITIONAL(TARGET_FRUGALWARE, test x"$with_distro" = xfrugalware)
 
 AC_DEFINE_UNQUOTED(SPECIAL_SYSLOG_SERVICE, ["$SPECIAL_SYSLOG_SERVICE"], [Syslog service name])