X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=configure.ac;h=834b12314c49921ca7b0e2f06b20d7b01968cede;hp=e6dffe62535044a9a384d92f1bcb069e5c8b86a3;hb=4a6022f01cfe092d018db52186d6af1fe28f3421;hpb=bc2708414babc5c99bb8000e63c84e87606cc15d diff --git a/configure.ac b/configure.ac index e6dffe625..834b12314 100644 --- a/configure.ac +++ b/configure.ac @@ -20,7 +20,7 @@ AC_PREREQ([2.64]) AC_INIT([systemd], - [196], + [197], [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]) @@ -82,7 +82,9 @@ AS_IF([test "x$enable_gtk_doc" = "xyes" -a "x$XSLTPROC" = x], [ m4_ifdef([GOBJECT_INTROSPECTION_CHECK], [ GOBJECT_INTROSPECTION_CHECK([1.31.1]) -], [AM_CONDITIONAL([HAVE_INTROSPECTION], [false])]) +], [ + AM_CONDITIONAL([HAVE_INTROSPECTION], [false]) + enable_introspection=no]) AC_PATH_TOOL(OBJCOPY, objcopy) AC_PATH_TOOL(STRINGS, strings) @@ -91,43 +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 "$have_python" = "yes"]) - -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 \ @@ -160,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], [\ @@ -171,6 +149,39 @@ 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) + ]) +]) +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])]) @@ -550,6 +561,14 @@ if test "x$enable_readahead" != "xno"; then fi AM_CONDITIONAL(ENABLE_READAHEAD, [test "$have_readahead" = "yes"]) +# ------------------------------------------------------------------------------ +have_bootchart=no +AC_ARG_ENABLE(bootchart, AS_HELP_STRING([--disable-bootchart], [disable bootchart tool])) +if test "x$enable_bootchart" != "xno"; then + have_bootchart=yes +fi +AM_CONDITIONAL(ENABLE_BOOTCHART, [test "$have_bootchart" = "yes"]) + # ------------------------------------------------------------------------------ have_quotacheck=no AC_ARG_ENABLE(quotacheck, AS_HELP_STRING([--disable-quotacheck], [disable quotacheck tools])) @@ -607,6 +626,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], @@ -645,6 +682,25 @@ AC_DEFINE_UNQUOTED(KBD_SETFONT, ["$KBD_SETFONT"], [Path of setfont]) AC_SUBST(KBD_LOADKEYS) AC_SUBST(KBD_SETFONT) +# ------------------------------------------------------------------------------ +have_myhostname=no +AC_ARG_ENABLE(myhostname, AS_HELP_STRING([--disable-myhostname], [disable nss-myhostname support])) +if test "x$enable_myhostname" != "xno"; then + AC_HEADER_STDC + AC_CHECK_HEADERS([arpa/inet.h fcntl.h inttypes.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h nss.h sys/ioctl.h]) + + AC_C_CONST + AC_TYPE_SIZE_T + AC_HEADER_TIME + + AC_FUNC_MALLOC + AC_FUNC_SELECT_ARGTYPES + AC_CHECK_FUNCS([gethostbyaddr gethostbyname gettimeofday inet_ntoa memset select socket strcspn strdup strerror strncasecmp strcasecmp strspn]) + + have_myhostname=yes +fi +AM_CONDITIONAL(HAVE_MYHOSTNAME, [test "$have_myhostname" = "yes"]) + # ------------------------------------------------------------------------------ AC_ARG_WITH(firmware-path, AS_HELP_STRING([--with-firmware-path=DIR[[[:DIR[...]]]]], @@ -708,8 +764,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"], []) @@ -719,7 +775,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 @@ -783,6 +839,13 @@ 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]) @@ -803,9 +866,6 @@ AC_OUTPUT AC_MSG_RESULT([ $PACKAGE_NAME $VERSION - SysV compatibility: ${SYSTEM_SYSV_COMPAT} - SysV init scripts: ${SYSTEM_SYSVINIT_PATH} - SysV rc?.d directories: ${SYSTEM_SYSVRCND_PATH} libcryptsetup: ${have_libcryptsetup} tcpwrap: ${have_tcpwrap} PAM: ${have_pam} @@ -822,6 +882,7 @@ AC_MSG_RESULT([ binfmt: ${have_binfmt} vconsole: ${have_vconsole} readahead: ${have_readahead} + bootchart: ${have_bootchart} quotacheck: ${have_quotacheck} randomseed: ${have_randomseed} logind: ${have_logind} @@ -829,14 +890,20 @@ AC_MSG_RESULT([ timedated: ${have_timedated} localed: ${have_localed} coredump: ${have_coredump} + polkit: ${have_polkit} + efi: ${have_efi} kmod: ${have_kmod} blkid: ${have_blkid} - firmware path: ${FIRMWARE_PATH} + nss-myhostname: ${have_myhostname} gudev: ${enable_gudev} gintrospection: ${enable_introspection} keymap: ${enable_keymap} Python: ${have_python} Python Headers: ${have_python_devel} + man pages: ${have_manpages} + gtk-doc: ${enable_gtk_doc} + Split /usr: ${enable_split_usr} + SysV compatibility: ${SYSTEM_SYSV_COMPAT} prefix: ${prefix} rootprefix: ${with_rootprefix} @@ -846,14 +913,16 @@ AC_MSG_RESULT([ include_prefix: ${INCLUDE_PREFIX} lib dir: ${libdir} rootlib dir: ${with_rootlibdir} + SysV init scripts: ${SYSTEM_SYSVINIT_PATH} + SysV rc?.d directories: ${SYSTEM_SYSVRCND_PATH} + Build Python: ${PYTHON} + Installation Python: ${PYTHON_BINARY} + firmware path: ${FIRMWARE_PATH} PAM modules dir: ${with_pamlibdir} D-Bus policy dir: ${with_dbuspolicydir} D-Bus session dir: ${with_dbussessionservicedir} D-Bus system dir: ${with_dbussystemservicedir} D-Bus interfaces dir: ${with_dbusinterfacedir} - Split /usr: ${enable_split_usr} - man pages: ${have_manpages} - gtk-doc: ${enable_gtk_doc} Extra start script: ${RC_LOCAL_SCRIPT_PATH_START} Extra stop script: ${RC_LOCAL_SCRIPT_PATH_STOP}