X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=configure.ac;h=28d7286c8338f7d7a5fd521c0755f2082448f4eb;hp=8a39d9831bd0ee7c09478568155adc272f2f39b0;hb=ee465038ce86bd3a0f21d5e2723393ff9d78855d;hpb=83fdc450aa8f79941bec84488ffd5bf8eadab18e diff --git a/configure.ac b/configure.ac index 8a39d9831..28d7286c8 100644 --- a/configure.ac +++ b/configure.ac @@ -20,7 +20,7 @@ AC_PREREQ([2.64]) AC_INIT([systemd], - [196], + [198], [http://bugs.freedesktop.org/enter_bug.cgi?product=systemd], [systemd], [http://www.freedesktop.org/wiki/Software/systemd]) @@ -42,7 +42,7 @@ AS_IF([test "x$host_cpu" = "xmips" || test "x$host_cpu" = "xmipsel" || [AC_DEFINE(ARCH_MIPS, [], [Whether on mips arch])]) LT_PREREQ(2.2) -LT_INIT +LT_INIT([disable-static]) # i18n stuff for the PolicyKit policy files IT_PROG_INTLTOOL([0.40.0]) @@ -93,48 +93,16 @@ if test -z "$GPERF" ; then AC_MSG_ERROR([*** gperf not found]) fi -# we use python to build the man page index, and for systemd-python -have_python=no -have_python_devel=no - -AC_ARG_WITH([python], - [AS_HELP_STRING([--without-python], [Disable building the man page index and systemd-python (default: test)])]) - -AS_IF([test "x$with_python" != "xno"], [ - AM_PATH_PYTHON(,, [:]) - AS_IF([test "$PYTHON" != :], [have_python=yes]) -]) -AM_CONDITIONAL([HAVE_PYTHON], [test "x$have_python" = "xyes"]) -AS_IF([test "x$PYTHON_BINARY" = "x"], - [AS_IF([test "x$have_python" = "xyes"], - [PYTHON_BINARY="`which "$PYTHON"`"], - [PYTHON_BINARY=/usr/bin/python])]) -AC_ARG_VAR(PYTHON_BINARY, [Python binary used to launch installed scripts]) - -AS_IF([test "x$with_python" != "xno"], [ - AC_PATH_PROG(PYTHON_CONFIG, python${PYTHON_VERSION}-config) - AS_IF([test -n "$PYTHON_CONFIG"], [ - have_python_devel=yes - PYTHON_CFLAGS="`$PYTHON_CONFIG --cflags`" - PYTHON_LIBS="`$PYTHON_CONFIG --ldflags`" - AC_SUBST(PYTHON_CFLAGS) - AC_SUBST(PYTHON_LIBS) - ]) -]) -AM_CONDITIONAL([HAVE_PYTHON_DEVEL], [test "$have_python_devel" = "yes"]) - CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ -pipe \ -Wall \ -Wextra \ -Wno-inline \ -Wundef \ - -Wformat=2 \ + "-Wformat=2 -Wformat-security -Wformat-nonliteral" \ -Wlogical-op \ -Wsign-compare \ - -Wformat-security \ -Wmissing-include-dirs \ - -Wformat-nonliteral \ -Wold-style-definition \ -Wpointer-arith \ -Winit-self \ @@ -167,8 +135,11 @@ CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ --param=ssp-buffer-size=4]) AC_SUBST([OUR_CFLAGS], $with_cflags) -CC_CHECK_FLAGS_APPEND([with_cppflags], [CPPFLAGS], [\ - -Wp,-D_FORTIFY_SOURCE=2]) +AS_CASE([$CFLAGS], [*-O[[12345\ ]]*], [ + CC_CHECK_FLAGS_APPEND([with_cppflags], [CPPFLAGS], [\ + -Wp,-D_FORTIFY_SOURCE=2])], [ + python_extra_cflags=-Wp,-U_FORTIFY_SOURCE + AC_MSG_RESULT([skipping -D_FORTIFY_SOURCE, optimization not enabled])]) AC_SUBST([OUR_CPPFLAGS], $with_cppflags) CC_CHECK_FLAGS_APPEND([with_ldflags], [LDFLAGS], [\ @@ -178,6 +149,40 @@ CC_CHECK_FLAGS_APPEND([with_ldflags], [LDFLAGS], [\ -Wl,-z,now]) AC_SUBST([OUR_LDFLAGS], $with_ldflags) +# ------------------------------------------------------------------------------ +# we use python to build the man page index, and for systemd-python +have_python=no +have_python_devel=no + +AC_ARG_WITH([python], + [AS_HELP_STRING([--without-python], [Disable building the man page index and systemd-python (default: test)])]) + +AS_IF([test "x$with_python" != "xno"], [ + AM_PATH_PYTHON(,, [:]) + AS_IF([test "$PYTHON" != :], [have_python=yes]) +]) +AM_CONDITIONAL([HAVE_PYTHON], [test "x$have_python" = "xyes"]) +AS_IF([test "x$PYTHON_BINARY" = "x"], + [AS_IF([test "x$have_python" = "xyes"], + [PYTHON_BINARY="$(which "$PYTHON")"], + [PYTHON_BINARY=/usr/bin/python])]) +AC_ARG_VAR(PYTHON_BINARY, [Python binary used to launch installed scripts]) + +AS_IF([test "x$with_python" != "xno"], [ + AC_PATH_PROG(PYTHON_CONFIG, python${PYTHON_VERSION}-config) + AS_IF([test -n "$PYTHON_CONFIG"], [ + have_python_devel=yes + PYTHON_CFLAGS="$($PYTHON_CONFIG --cflags) $python_extra_cflags" + PYTHON_LIBS="$($PYTHON_CONFIG --ldflags)" + AC_SUBST(PYTHON_CFLAGS) + AC_SUBST(PYTHON_LIBS) + AC_PATH_PROGS(SPHINX_BUILD, sphinx-build-${PYTHON_VERSION} sphinx-build) + ]) +]) +AM_CONDITIONAL([HAVE_PYTHON_DEVEL], [test "$have_python_devel" = "yes"]) + +# ------------------------------------------------------------------------------ + AC_SEARCH_LIBS([mq_open], [rt], [], [AC_MSG_ERROR([*** POSIX RT library not found])]) AC_SEARCH_LIBS([dlsym], [dl], [], [AC_MSG_ERROR([*** Dynamic linking loader library not found])]) @@ -272,7 +277,7 @@ AM_CONDITIONAL(HAVE_SELINUX, [test "$have_selinux" = "yes"]) if test "x${have_selinux}" != xno ; then sushell=/sbin/sushell else - sushell=/bin/bash + sushell=/bin/sh fi AC_SUBST(sushell) @@ -622,6 +627,24 @@ if test "x$enable_coredump" != "xno"; then fi AM_CONDITIONAL(ENABLE_COREDUMP, [test "$have_coredump" = "yes"]) +# ------------------------------------------------------------------------------ +have_polkit=no +AC_ARG_ENABLE(polkit, AS_HELP_STRING([--disable-polkit], [disable PolicyKit support])) +if test "x$enable_polkit" != "xno"; then + AC_DEFINE(ENABLE_POLKIT, 1, [Define if PolicyKit support is to be enabled]) + have_polkit=yes +fi +AM_CONDITIONAL(ENABLE_POLKIT, [test "x$have_polkit" = "xyes"]) + +# ------------------------------------------------------------------------------ +have_efi=no +AC_ARG_ENABLE(efi, AS_HELP_STRING([--disable-efi], [disable EFI support])) +if test "x$enable_efi" != "xno"; then + AC_DEFINE(ENABLE_EFI, 1, [Define if EFI support is to be enabled]) + have_efi=yes +fi +AM_CONDITIONAL(ENABLE_EFI, [test "x$have_efi" = "xyes"]) + # ------------------------------------------------------------------------------ AC_ARG_WITH(rc-local-script-path-start, AS_HELP_STRING([--with-rc-local-script-path-start=PATH], @@ -742,8 +765,8 @@ AC_ARG_WITH([sysvinit-path], [SYSTEM_SYSVINIT_PATH="$withval"], []) -AC_ARG_WITH([sysvrcd-path], - [AS_HELP_STRING([--with-sysvrcd-path=PATH], +AC_ARG_WITH([sysvrcnd-path], + [AS_HELP_STRING([--with-sysvrcnd-path=PATH], [Specify the path to the base directory for the SysV rcN.d directories])], [SYSTEM_SYSVRCND_PATH="$withval"], []) @@ -753,7 +776,7 @@ if test "x${SYSTEM_SYSVINIT_PATH}" != "x" -a "x${SYSTEM_SYSVRCND_PATH}" != "x"; SYSTEM_SYSV_COMPAT="yes" M4_DEFINES="$M4_DEFINES -DHAVE_SYSV_COMPAT" elif test "x${SYSTEM_SYSVINIT_PATH}" != "x" -o "x${SYSTEM_SYSVRCND_PATH}" != "x"; then - AC_MSG_ERROR([*** You need both --with-sysvinit-path=PATH and --with-sysvrcd-path=PATH to enable SysV compatibility support, or both empty to disable it.]) + AC_MSG_ERROR([*** You need both --with-sysvinit-path=PATH and --with-sysvrcnd-path=PATH to enable SysV compatibility support, or both empty to disable it.]) else SYSTEM_SYSV_COMPAT="no" fi @@ -773,22 +796,31 @@ AC_ARG_WITH([tty-gid], AC_ARG_WITH([dbuspolicydir], AS_HELP_STRING([--with-dbuspolicydir=DIR], [D-Bus policy directory]), [], - [with_dbuspolicydir=`pkg-config --variable=sysconfdir dbus-1`/dbus-1/system.d]) + [with_dbuspolicydir=$($PKG_CONFIG --variable=sysconfdir dbus-1)/dbus-1/system.d]) AC_ARG_WITH([dbussessionservicedir], AS_HELP_STRING([--with-dbussessionservicedir=DIR], [D-Bus session service directory]), [], - [with_dbussessionservicedir=`pkg-config --variable=session_bus_services_dir dbus-1`]) + [with_dbussessionservicedir=$($PKG_CONFIG --variable=session_bus_services_dir dbus-1)]) AC_ARG_WITH([dbussystemservicedir], AS_HELP_STRING([--with-dbussystemservicedir=DIR], [D-Bus system service directory]), [], - [with_dbussystemservicedir=`pkg-config --variable=session_bus_services_dir dbus-1`/../system-services]) + [with_dbussystemservicedir=$(readlink -m $($PKG_CONFIG --variable=session_bus_services_dir dbus-1)/../system-services)]) AC_ARG_WITH([dbusinterfacedir], AS_HELP_STRING([--with-dbusinterfacedir=DIR], [D-Bus interface directory]), [], - [with_dbusinterfacedir=`pkg-config --variable=session_bus_services_dir dbus-1`/../interfaces]) + [with_dbusinterfacedir=$(readlink -m $($PKG_CONFIG --variable=session_bus_services_dir dbus-1)/../interfaces)]) + +AC_ARG_WITH([bashcompletiondir], + AS_HELP_STRING([--with-bashcompletiondir=DIR], [Bash completions directory]), + [], + [AS_IF([$($PKG_CONFIG --exists bash-completion)], [ + with_bashcompletiondir=$($PKG_CONFIG --variable=completionsdir bash-completion) + ] , [ + with_bashcompletiondir=${datadir}/bash-completion/completions + ])]) AC_ARG_WITH([rootprefix], AS_HELP_STRING([--with-rootprefix=DIR], [rootfs directory prefix for config files and kernel modules]), @@ -817,10 +849,18 @@ AS_IF([test "x${enable_split_usr}" = "xyes"], [ AC_DEFINE(HAVE_SPLIT_USR, 1, [Define if /bin, /sbin aren't symlinks into /usr]) ]) +# Work around intltoolize and gtk-doc problems in VPATH builds +AM_CONDITIONAL([ENABLE_GTK_DOC_TESTS], [test "x$0" = "x./configure"], + [Define to do gtk-doc tests]) +AS_IF([test "x$0" != "x./configure"], [ + AC_SUBST([INTLTOOL_UPDATE], [/bin/true]) +]) + AC_SUBST([dbuspolicydir], [$with_dbuspolicydir]) AC_SUBST([dbussessionservicedir], [$with_dbussessionservicedir]) AC_SUBST([dbussystemservicedir], [$with_dbussystemservicedir]) AC_SUBST([dbusinterfacedir], [$with_dbusinterfacedir]) +AC_SUBST([bashcompletiondir], [$with_bashcompletiondir]) AC_SUBST([pamlibdir], [$with_pamlibdir]) AC_SUBST([rootprefix], [$with_rootprefix]) AC_SUBST([rootlibdir], [$with_rootlibdir]) @@ -861,6 +901,8 @@ AC_MSG_RESULT([ timedated: ${have_timedated} localed: ${have_localed} coredump: ${have_coredump} + polkit: ${have_polkit} + efi: ${have_efi} kmod: ${have_kmod} blkid: ${have_blkid} nss-myhostname: ${have_myhostname} @@ -892,6 +934,7 @@ AC_MSG_RESULT([ D-Bus session dir: ${with_dbussessionservicedir} D-Bus system dir: ${with_dbussystemservicedir} D-Bus interfaces dir: ${with_dbusinterfacedir} + Bash completions dir: ${with_bashcompletiondir} Extra start script: ${RC_LOCAL_SCRIPT_PATH_START} Extra stop script: ${RC_LOCAL_SCRIPT_PATH_STOP}