X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=configure.ac;h=fb62a571b069318eb9ac731351c8c48089fe2fa4;hp=c8cfff3dd0fb32acd225043398561a27814bae71;hb=f97a438ab62bd1ea07c4574eac48d7b8fc4d7387;hpb=9f49e9457547fc65aa6c0646910b291840eb22be diff --git a/configure.ac b/configure.ac index c8cfff3dd..fb62a571b 100644 --- a/configure.ac +++ b/configure.ac @@ -19,12 +19,11 @@ AC_PREREQ([2.64]) -# FIXME: Update to proper web page AC_INIT([elogind], - [219], - [http://bugs.freedesktop.org/enter_bug.cgi?product=elogind], + [219.14], + [https://github.com/wingo/elogind/issues], [elogind], - [http://www.freedesktop.org/wiki/Software/elogind]) + [https://github.com/wingo/elogind]) AC_CONFIG_SRCDIR([src/login/logind.c]) AC_CONFIG_MACRO_DIR([m4]) @@ -87,6 +86,8 @@ AC_PROG_CC_C99 AC_PATH_PROG([M4], [m4]) AC_PATH_PROG([XSLTPROC], [xsltproc]) +AC_PATH_PROG([HALT], [halt], [halt]) +AC_PATH_PROG([REBOOT], [reboot], [reboot]) AC_PATH_PROG([KEXEC], [kexec], [/usr/sbin/kexec], [$PATH:/usr/sbin:/sbin]) AS_IF([! ln --relative --help > /dev/null 2>&1], [AC_MSG_ERROR([*** ln doesn't support --relative ***])]) @@ -191,10 +192,10 @@ AS_CASE([$CC], [*clang*], -Wno-gnu-variable-sized-type-not-at-end \ ])]) -AS_CASE([$CFLAGS], [*-O[[12345sz\ ]]*], - [CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ - -flto -ffat-lto-objects])], - [AC_MSG_RESULT([skipping -flto, optimization not enabled])]) +dnl AS_CASE([$CFLAGS], [*-O[[12345sz\ ]]*], +dnl [CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ +dnl -flto -ffat-lto-objects])], +dnl [AC_MSG_RESULT([skipping -flto, optimization not enabled])]) AC_SUBST([OUR_CFLAGS], "$with_cflags $sanitizer_cflags") AS_CASE([$CFLAGS], [*-O[[12345sz\ ]]*], @@ -231,12 +232,22 @@ AC_CHECK_HEADERS([linux/memfd.h], [], []) # unconditionally pull-in librt with old glibc versions AC_SEARCH_LIBS([clock_gettime], [rt], [], []) +AC_SEARCH_LIBS([mq_unlink], [rt], [], []) +AC_ARG_WITH([libcap], + AS_HELP_STRING([--with-libcap=DIR], [Prefix for libcap]), + [CAP_LDFLAGS="-L$with_libcap/lib"], + [CAP_LDFLAGS=""]) save_LIBS="$LIBS" +save_LDFLAGS="$LDFLAGS" LIBS= +LDFLAGS="$LDFLAGS $CAP_LDFLAGS" AC_SEARCH_LIBS([cap_init], [cap], [], [AC_MSG_ERROR([*** POSIX caps library not found])]) CAP_LIBS="$LIBS" AC_SUBST(CAP_LIBS) +AC_SUBST(CAP_LDFLAGS) +LIBS="$save_LIBS" +LDFLAGS="$save_LDFLAGS" AC_CHECK_FUNCS([memfd_create]) AC_CHECK_FUNCS([__secure_getenv secure_getenv]) @@ -293,6 +304,13 @@ AM_CONDITIONAL(HAVE_DBUS, [test "$have_dbus" = "yes"]) # ------------------------------------------------------------------------------ PKG_CHECK_MODULES(UDEV, [libudev]) +AC_ARG_WITH([udevrulesdir], + AS_HELP_STRING([--with-udevrulesdir=DIR], [Directory for udev rules files]), + [], + [with_udevrulesdir=$($PKG_CONFIG --variable=udevdir udev)/rules.d]) +AC_SUBST([udevrulesdir], [$with_udevrulesdir]) +AC_SUBST([udevbindir], [$($PKG_CONFIG --variable=udevdir udev)/../bin]) + # ------------------------------------------------------------------------------ have_coverage=no AC_ARG_ENABLE(coverage, AS_HELP_STRING([--enable-coverage], [enable test coverage])) @@ -372,15 +390,6 @@ if test "x$enable_apparmor" != "xno"; then fi AM_CONDITIONAL(HAVE_APPARMOR, [test "$have_apparmor" = "yes"]) - -AC_ARG_WITH([certificate-root], - AS_HELP_STRING([--with-certificate-root=PATH], - [Specify the prefix for TLS certificates [/etc/ssl]]), - [CERTIFICATEROOT="$withval"], - [CERTIFICATEROOT="/etc/ssl"]) - -AC_SUBST(CERTIFICATEROOT) - # ------------------------------------------------------------------------------ AC_ARG_ENABLE([pam], AS_HELP_STRING([--disable-pam],[Disable optional PAM support]), @@ -525,49 +534,12 @@ fi AM_CONDITIONAL(ENABLE_KDBUS, [test "$have_kdbus" = "yes"]) # ------------------------------------------------------------------------------ -AC_ARG_WITH(telinit, - AS_HELP_STRING([--with-telinit=PATH], - [Path to telinit]), - [TELINIT="$withval"], - [TELINIT="/lib/sysvinit/telinit"]) - -AC_DEFINE_UNQUOTED(TELINIT, ["$TELINIT"], [Path to telinit]) - -AC_SUBST(TELINIT) - AC_CHECK_HEADERS_ONCE([valgrind/memcheck.h valgrind/valgrind.h]) # ------------------------------------------------------------------------------ -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 sys/auxv.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_ENABLE([gudev], - AS_HELP_STRING([--disable-gudev], [disable Gobject libudev support @<:@default=enabled@:>@]), - [], [enable_gudev=yes]) -AS_IF([test "x$enable_gudev" = "xyes"], [ PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.22.0 gobject-2.0 >= 2.22.0 gio-2.0]) ]) -AM_CONDITIONAL([ENABLE_GUDEV], [test "x$enable_gudev" = "xyes"]) -AS_IF([test "x$enable_gudev" = "xyes"], [ AC_DEFINE(HAVE_GLIB, 1, [Define if glib is available]) ]) - -# ------------------------------------------------------------------------------ -AC_ARG_ENABLE(hwdb, [AC_HELP_STRING([--disable-hwdb], [disable hardware database support])], - enable_hwdb=$enableval, enable_hwdb=yes) -AM_CONDITIONAL(ENABLE_HWDB, [test x$enable_hwdb = xyes]) +PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.22.0 gobject-2.0 >= 2.22.0 gio-2.0], + [have_glib=yes], [have_glib=no]) +AS_IF([test "x$have_glib" = "xyes"], [ AC_DEFINE(HAVE_GLIB, 1, [Define if glib is available]) ]) # ------------------------------------------------------------------------------ have_manpages=no @@ -576,28 +548,8 @@ AS_IF([test "x$enable_manpages" != xno], [have_manpages=yes]) AM_CONDITIONAL(ENABLE_MANPAGES, [test "x$have_manpages" = "xyes"]) # ------------------------------------------------------------------------------ -AC_ARG_ENABLE(hibernate, - [AC_HELP_STRING([--disable-hibernate], [disable hibernation support])], - enable_hibernate=$enableval, enable_hibernate=yes) -AM_CONDITIONAL(ENABLE_HIBERNATE, [test x$enable_hibernate = xyes]) - -# ------------------------------------------------------------------------------ -AC_ARG_ENABLE(ldconfig, - [AC_HELP_STRING([--disable-ldconfig], [disable ldconfig])], - enable_ldconfig=$enableval, enable_ldconfig=yes) -AM_CONDITIONAL(ENABLE_LDCONFIG, [test x$enable_ldconfig = xyes]) - AC_SUBST(M4_DEFINES) -AC_ARG_WITH([tty-gid], - [AS_HELP_STRING([--with-tty-gid=GID], - [Specify the numeric GID of the 'tty' group])], - [TTY_GID="$withval"], - [TTY_GID="5"]) - -AC_DEFINE_UNQUOTED(TTY_GID, [$TTY_GID], [GID of the 'tty' group]) -AC_SUBST(TTY_GID) - AC_ARG_WITH([dbuspolicydir], AS_HELP_STRING([--with-dbuspolicydir=DIR], [D-Bus policy directory]), [], @@ -626,10 +578,6 @@ AC_ARG_WITH([zshcompletiondir], AS_HELP_STRING([--with-zshcompletiondir=DIR], [Zsh completions directory]), [], [with_zshcompletiondir=${datadir}/zsh/site-functions]) -AC_ARG_WITH([rootprefix], - AS_HELP_STRING([--with-rootprefix=DIR], [rootfs directory prefix for config files and kernel modules]), - [], [with_rootprefix=${ac_default_prefix}]) - AC_ARG_WITH([rootlibdir], AS_HELP_STRING([--with-rootlibdir=DIR], [Root directory for libraries necessary for boot]), [], @@ -654,14 +602,6 @@ AC_ARG_ENABLE([split-usr], enable_split_usr=no ])]) -AC_ARG_WITH([dkr-index-url], - [AS_HELP_STRING([--dkr-index-url=URL], [Specify the default index URL to use for image downloads])], - [DEFAULT_DKR_INDEX_URL="\"$withval\""], - [DEFAULT_DKR_INDEX_URL="NULL"]) - -AC_DEFINE_UNQUOTED(DEFAULT_DKR_INDEX_URL, [$DEFAULT_DKR_INDEX_URL], [Default index URL to use for image downloads]) -AC_SUBST(DEFAULT_DKR_INDEX_URL) - AS_IF([test "x${enable_split_usr}" = "xyes"], [ AC_DEFINE(HAVE_SPLIT_USR, 1, [Define if /bin, /sbin aren't symlinks into /usr]) ]) @@ -670,15 +610,7 @@ AS_IF([test "x${enable_split_usr}" = "xyes"], [ 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]) -]) - -# QEMU and OVMF UEFI firmware -AS_IF([test x"$cross_compiling" = "xyes"], [], [ - AC_PATH_PROG([QEMU], [qemu-system-x86_64]) - AC_CHECK_FILE([/usr/share/qemu/bios-ovmf.bin], [QEMU_BIOS=/usr/share/qemu/bios-ovmf.bin], - [AC_CHECK_FILE([/usr/share/qemu-ovmf/bios.bin], [QEMU_BIOS=/usr/share/qemu-ovmf/bios.bin])]) - AC_SUBST([QEMU_BIOS]) + AC_SUBST([INTLTOOL_UPDATE], [/usr/bin/env true]) ]) AC_ARG_ENABLE(tests, @@ -723,7 +655,6 @@ AC_SUBST([bashcompletiondir], [$with_bashcompletiondir]) AC_SUBST([zshcompletiondir], [$with_zshcompletiondir]) AC_SUBST([pamlibdir], [$with_pamlibdir]) AC_SUBST([pamconfdir], [$with_pamconfdir]) -AC_SUBST([rootprefix], [$with_rootprefix]) AC_SUBST([rootlibdir], [$with_rootlibdir]) AC_CONFIG_FILES([ @@ -743,34 +674,19 @@ AC_MSG_RESULT([ polkit: ${have_polkit} blkid: ${have_blkid} dbus: ${have_dbus} - nss-myhostname: ${have_myhostname} - gudev: ${enable_gudev} - hwdb: ${enable_hwdb} kdbus: ${have_kdbus} - Python: ${have_python} - Python Headers: ${have_python_devel} man pages: ${have_manpages} gtk-doc: ${enable_gtk_doc} test coverage: ${have_coverage} Split /usr: ${enable_split_usr} - SysV compatibility: ${SYSTEM_SYSV_COMPAT} - ldconfig support: ${enable_ldconfig} - hibernate support: ${enable_hibernate} extra debugging: ${enable_debug} prefix: ${prefix} - rootprefix: ${with_rootprefix} sysconf dir: ${sysconfdir} datarootdir: ${datarootdir} includedir: ${includedir} - 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} - sphinx binary: ${SPHINX_BUILD} PAM modules dir: ${with_pamlibdir} PAM configuration dir: ${with_pamconfdir} D-Bus policy dir: ${with_dbuspolicydir} @@ -778,15 +694,10 @@ AC_MSG_RESULT([ D-Bus system dir: ${with_dbussystemservicedir} Bash completions dir: ${with_bashcompletiondir} Zsh completions dir: ${with_zshcompletiondir} - TTY GID: ${TTY_GID} Maximum System UID: ${SYSTEM_UID_MAX} Maximum System GID: ${SYSTEM_GID_MAX} - Certificate root: ${CERTIFICATEROOT} - Default dkr Index ${DEFAULT_DKR_INDEX_URL} CFLAGS: ${OUR_CFLAGS} ${CFLAGS} CPPFLAGS: ${OUR_CPPFLAGS} ${CPPFLAGS} LDFLAGS: ${OUR_LDFLAGS} ${LDFLAGS} - PYTHON_CFLAGS: ${PYTHON_DEVEL_CFLAGS} - PYTHON_LIBS: ${PYTHON_DEVEL_LIBS} ])