mirror of
https://github.com/troglobit/finit.git
synced 2026-10-01 05:22:48 +07:00
Finit speaks D-Bus itself now and claims org.finit on the system bus when it finds one, but nothing in a default build ever brings that bus up. The plugin that does was opt-in, so the built-in support sat idle unless the integrator knew to ask for both halves. Defaulting it on is only reasonable if the result stays the admin's to change, and a service registered from C through conf_save_service() is not: it lands in the run path where it cannot be overridden or emptied out. So the daemon moves to 20-dbus.conf and its directories to tmpfiles.d/dbus.conf, the same way hotplug and every other daemon we ship them for. The plugin keeps only what has to look at the running system, the stale pidfile and the machine UUID. Those directories are no longer chowned to messagebus. tmpfiles.d skips a line whose user does not exist rather than falling back, so the plugin's messagebus/dbus/root ladder has no equivalent there, and dbus-daemon binds its socket before dropping privileges anyway. The plugin already bows out where there is no dbus-daemon installed, so systems that never wanted a bus are unaffected, and --disable-dbus-plugin is there for those that have one and would still rather init left it alone. Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
475 lines
20 KiB
Plaintext
475 lines
20 KiB
Plaintext
AC_INIT([Finit], [5.0-dev], [https://github.com/finit-project/finit/issues],
|
|
[finit], [https://http://finit-project.github.io/])
|
|
AC_CONFIG_AUX_DIR(aux)
|
|
AM_INIT_AUTOMAKE([1.11 foreign subdir-objects])
|
|
AM_SILENT_RULES([yes])
|
|
|
|
AC_CONFIG_SRCDIR([src/finit.c])
|
|
AC_CONFIG_HEADERS([config.h])
|
|
AC_CONFIG_FILES([Makefile
|
|
contrib/Makefile
|
|
contrib/alpine/Makefile contrib/alpine/finit.d/Makefile contrib/alpine/finit.d/available/Makefile
|
|
contrib/debian/Makefile contrib/debian/finit.d/Makefile contrib/debian/finit.d/available/Makefile
|
|
contrib/void/Makefile contrib/void/finit.d/Makefile contrib/void/finit.d/available/Makefile
|
|
doc/Makefile doc/config/Makefile
|
|
dbus-1/Makefile
|
|
libink/Makefile
|
|
libsystemd/Makefile libsystemd/libsystemd.pc
|
|
man/Makefile
|
|
plugins/Makefile
|
|
src/Makefile
|
|
system/Makefile system/10-hotplug.conf
|
|
test/test.env test/Makefile
|
|
test/lib/Makefile test/src/Makefile
|
|
tmpfiles.d/Makefile])
|
|
|
|
# Older versions of autoconf (<2.58) do not have AC_CONFIG_MACRO_DIR()
|
|
#m4_include([m4/plugin.m4])
|
|
#m4_include([m4/expand.m4])
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
# Handle building plugins either as dynamically loadable, or built-in
|
|
LT_INIT([shared disable-static dlopen aix-soname=both disable-fast-install])
|
|
|
|
# Checks for programs.
|
|
AC_PROG_CC
|
|
AC_PROG_LN_S
|
|
AC_PROG_INSTALL
|
|
AC_PROG_MKDIR_P
|
|
|
|
# Configuration.
|
|
AC_CHECK_HEADERS([termios.h sys/ioctl.h mntent.h sys/sysmacros.h])
|
|
AC_CHECK_FUNCS([strstr getopt getmntent getmntent_r])
|
|
|
|
# Check for uint[8,16,32]_t
|
|
AC_TYPE_UINT8_T
|
|
AC_TYPE_UINT16_T
|
|
AC_TYPE_UINT32_T
|
|
|
|
# Check for pkg-config first, warn if it's not installed
|
|
PKG_PROG_PKG_CONFIG
|
|
|
|
# Check for required libraries
|
|
PKG_CHECK_MODULES([uev], [libuev >= 2.4.1])
|
|
PKG_CHECK_MODULES([lite], [libite >= 2.6.1])
|
|
# 3.3 is the floor: CFGF_KEYSTRVAL, which environment {} and the
|
|
# free-form cgroup keys are built on, does not exist before it. 3.3
|
|
# parses both correctly. Two workarounds hang off this number, the
|
|
# spurious KEYSTRVAL warning and cfg_parse_buf() losing the file name
|
|
# of a template; grep the XXX notes in src/conf.c before raising it.
|
|
PKG_CHECK_MODULES([confuse], [libconfuse >= 3.3])
|
|
|
|
# Check for configured Finit features
|
|
AC_ARG_ENABLE(auto_reload,
|
|
AS_HELP_STRING([--enable-auto-reload], [Automatic reload on any .conf change]),,[
|
|
enable_auto_reload=no])
|
|
|
|
AC_ARG_ENABLE(kernel_cmdline,
|
|
AS_HELP_STRING([--enable-kernel-cmdline], [Parse init args from /proc/cmdline (don't use!)]),,[
|
|
enable_kernel_cmdline=no])
|
|
|
|
AC_ARG_ENABLE(fastboot,
|
|
AS_HELP_STRING([--enable-fastboot], [Skip fsck check on filesystems listed in /etc/fstab]),,[
|
|
enable_fastboot=no])
|
|
|
|
AC_ARG_ENABLE(fsckfix,
|
|
AS_HELP_STRING([--enable-fsckfix], [Run fsck fix mode (options: -yf) on filesystems listed in /etc/fstab]),,[
|
|
enable_fsckfix=no])
|
|
|
|
AC_ARG_ENABLE(cgroup,
|
|
AS_HELP_STRING([--disable-cgroup], [Disable cgroup v2 support, default: autodetect from /sys/fs/cgroup]),,[
|
|
enable_cgroup=yes])
|
|
|
|
AC_ARG_ENABLE(libcap,
|
|
AS_HELP_STRING([--disable-libcap], [Disable Linux capabilities support]),,[
|
|
enable_libcap=yes])
|
|
|
|
AC_ARG_ENABLE(redirect,
|
|
AS_HELP_STRING([--disable-redirect], [Disable redirection of service output to /dev/null]),,[
|
|
enable_redirect=yes])
|
|
|
|
AC_ARG_ENABLE(kernel_logging,
|
|
AS_HELP_STRING([--disable-kernel-logging], [Disable kernel logging to console (use 'quiet' instead!]),,[
|
|
enable_kernel_logging=yes])
|
|
|
|
AC_ARG_ENABLE(logrotate,
|
|
AS_HELP_STRING([--disable-logrotate], [Disable built-in rotation of /var/log/wtmp]),,[
|
|
enable_logrotate=yes])
|
|
|
|
AC_ARG_ENABLE(dbus,
|
|
AS_HELP_STRING([--disable-dbus], [Disable D-Bus support (libink + Finit object tree)]),,[
|
|
enable_dbus=yes])
|
|
|
|
AC_ARG_ENABLE(doc,
|
|
AS_HELP_STRING([--disable-doc], [Disable build and install of doc/ section]),,[
|
|
enable_doc=yes])
|
|
|
|
AC_ARG_ENABLE(contrib,
|
|
AS_HELP_STRING([--disable-contrib], [Disable build and install of contrib section]),,[
|
|
enable_contrib=yes])
|
|
|
|
AC_ARG_ENABLE([rescue],
|
|
AS_HELP_STRING([--disable-rescue], [Disable potentially unsafe rescue mode]),,
|
|
[enable_rescue=yes])
|
|
|
|
# Check for extra plugins to enable
|
|
AC_ARG_ENABLE(all_plugins,
|
|
AS_HELP_STRING([--enable-all-plugins], [Enable all plugins, default: auto]),
|
|
enable_all_plugins=$enableval, enable_all_plugins=auto)
|
|
AC_PLUGIN([alsa-utils], [no], [Save and restore ALSA sound settings using alsactl])
|
|
AC_PLUGIN([dbus], [yes], [Setup and start system message bus, D-Bus])
|
|
AC_PLUGIN([modules-load], [no], [Scans /etc/modules-load.d for modules to load])
|
|
AC_PLUGIN([modprobe], [no], [Coldplug modules using modalias magic])
|
|
AC_PLUGIN([resolvconf], [no], [Setup necessary files for resolvconf])
|
|
AC_PLUGIN([x11-common], [no], [Console setup (for X)])
|
|
AC_PLUGIN([netlink], [yes], [Basic netlink plugin for IFUP/IFDN and GW events. Can be replaced with externally built plugin that links with libnl or similar.])
|
|
AC_PLUGIN([hook-scripts], [no], [Trigger script execution from hook points])
|
|
AC_PLUGIN([hotplug], [yes], [Start udevd or mdev kernel event datamon])
|
|
AC_PLUGIN([rtc], [yes], [Save and restore RTC using hwclock])
|
|
AC_PLUGIN([tty], [yes], [Automatically activate new TTYs, e.g. USB-to-serial])
|
|
AC_PLUGIN([urandom], [yes], [Setup and save random seed at boot/shutdown])
|
|
AC_PLUGIN([plymouth], [no], [Plymouth boot splash integration])
|
|
AC_PLUGIN([testserv], [no], [Test plugin to start test serv daemon])
|
|
|
|
# Check for extra arguments or packages
|
|
AC_ARG_WITH([bash-completion-dir],
|
|
AS_HELP_STRING([--with-bash-completion-dir[=PATH]], [Directory to install Bash completion, default: auto]),
|
|
[bash_dir=$withval], [bash_dir=yes])
|
|
|
|
AC_ARG_WITH(fstab,
|
|
AS_HELP_STRING([--with-fstab=FILE], [System default fstab, default $sysconfdir/fstab]),
|
|
[fstab=$withval], [fstab=yes])
|
|
|
|
AC_ARG_WITH(heading,
|
|
AS_HELP_STRING([--with-heading=GREET], [Heading for boot progress. Default: PRETTY_NAME from /etc/os-release, fallback to "Finit vX.YY"]),
|
|
[heading=$withval], [heading=yes])
|
|
|
|
AC_ARG_WITH(config,
|
|
AS_HELP_STRING([--with-config=CONFIG], [Finit bootstrap config file, default /etc/finit.conf]),
|
|
[conf=$withval], [conf=yes])
|
|
|
|
AC_ARG_WITH(rcsd,
|
|
AS_HELP_STRING([--with-rcsd=DIR], [Finit rcS.d/ directory, default /etc/finit.d]),
|
|
[rcsd=$withval], [rcsd=yes])
|
|
|
|
AC_ARG_WITH(rc-local,
|
|
AS_HELP_STRING([--with-rc-local=FILE], [SysV init /etc/rc.local file, default /etc/rc.local]),
|
|
[rclocal=$withval], [rclocal=yes])
|
|
|
|
AC_ARG_WITH(sysconfig,
|
|
AS_HELP_STRING([--with-sysconfig=DIR], [System environment directory, sourced by .conf files, default /etc/default & /etc/conf.d]),
|
|
[sysconfig=$withval], [sysconfig=default])
|
|
|
|
AC_ARG_WITH(group,
|
|
AS_HELP_STRING([--with-group=NAME], [Group for /run/finit/socket and /run/finit/bus, default: root]),
|
|
[group=$withval], [group=root])
|
|
|
|
AC_ARG_WITH(hostname,
|
|
AS_HELP_STRING([--with-hostname=NAME], [If /etc/hostname is missing, default: noname]),
|
|
[hostname=$withval], [hostname=yes])
|
|
|
|
AC_ARG_WITH(runlevel,
|
|
AS_HELP_STRING([--with-runlevel=N], [Runlevel to switch to after bootstrap [1-9], default: 2]),
|
|
[runlevel=$withval], [runlevel=yes])
|
|
|
|
AC_ARG_WITH(random-seed,
|
|
AS_HELP_STRING([--with-random-seed=FILE], [Save a random seed for /dev/urandom across reboots, default /var/lib/misc/random-seed]),
|
|
[random_seed=$withval], [random_seed=yes])
|
|
|
|
AC_ARG_WITH(keventd,
|
|
AS_HELP_STRING([--with-keventd], [Enable built-in keventd, default: no]),, [with_keventd=no])
|
|
|
|
AC_ARG_WITH(sulogin,
|
|
AS_HELP_STRING([--with-sulogin@<:@=USER@:>@], [Enable built-in sulogin, optional USER to request password for (default root), default: no.]),[sulogin=$withval],[with_sulogin=no])
|
|
|
|
AC_ARG_WITH(watchdog,
|
|
AS_HELP_STRING([--with-watchdog@<:@=DEV@:>@], [Enable built-in watchdog, default: /dev/watchdog]),
|
|
[watchdog=$withval], [with_watchdog=no watchdog=])
|
|
|
|
AC_ARG_WITH(libsystemd,
|
|
AS_HELP_STRING([--with-libsystemd], [Build replacement libsystemd library, default: yes]),
|
|
[with_libsystemd=$withval], [with_libsystemd=no])
|
|
|
|
AC_ARG_WITH(hook-scripts-path,
|
|
AS_HELP_STRING([--with-hook-scripts-path=DIR], [Base directory for hook scripts, default $libexecdir/finit/hook]),
|
|
[hook_scripts_path=$withval], [hook_scripts_path=yes])
|
|
|
|
AC_ARG_WITH(plugin-path,
|
|
AS_HELP_STRING([--with-plugin-path=DIR], [Search path for external plugins, default /usr/lib/finit/plugins:/usr/local/lib/finit/plugins]),
|
|
[plugin_path=$withval], [plugin_path=yes])
|
|
|
|
AC_ARG_WITH(rtc-date,
|
|
AS_HELP_STRING([--with-rtc-date=DATE], [If RTC date/time is too old, restore to DATE, format "YYYY-MM-DD HH:MM:SS", default "2000-01-01 00:00:00"]),
|
|
[rtc_date=$withval], [rtc_date=no])
|
|
|
|
AC_ARG_WITH(rtc-file,
|
|
AS_HELP_STRING([--with-rtc-file=FILE], [If RTC is missing, save and restore system clock from this file, default: no]),
|
|
[rtc_file=$withval], [rtc_file=no])
|
|
|
|
### Enable features ###########################################################################
|
|
|
|
# Create config.h from selected features and fallback defaults
|
|
AS_IF([test "x$enable_auto_reload" = "xyes"], [
|
|
AC_DEFINE(AUTO_RELOAD, 1, [Finit automatically does `initctl reload` on any .conf change])])
|
|
|
|
AS_IF([test "x$enable_kernel_cmdline" = "xyes"], [
|
|
AC_DEFINE(KERNEL_CMDLINE, 1, [Dumpster diving after init args from /proc/cmdline])])
|
|
|
|
AS_IF([test "x$enable_kernel_logging" = "xyes"], [
|
|
AC_DEFINE(KERNEL_LOGGING, 1, [Keep kernel warn/err logs to console])])
|
|
|
|
AS_IF([test "x$enable_cgroup" = "xyes"], [
|
|
AC_DEFINE(CGROUP2_ENABLED, 1, [Autodetect cgroup v2 support from /sys/fs/cgroup])])
|
|
|
|
AS_IF([test "x$enable_libcap" = "xyes"], [
|
|
AC_CHECK_LIB([cap], [cap_from_text], [
|
|
AC_DEFINE(HAVE_LIBCAP, 1, [Have libcap for Linux capabilities support])
|
|
LIBS="$LIBS -lcap"
|
|
], [
|
|
AC_MSG_WARN([libcap not found, capabilities support disabled])
|
|
enable_libcap=no
|
|
])
|
|
])
|
|
|
|
AS_IF([test "x$enable_fastboot" = "xyes"], [
|
|
AC_DEFINE(FAST_BOOT, 1, [Skip fsck check on filesystems listed in /etc/fstab])])
|
|
|
|
AS_IF([test "x$enable_fsckfix" = "xyes"], [
|
|
AC_DEFINE(FSCK_FIX, 1, [Run fsck fix mode (options: -yf) on filesystems listed in /etc/fstab])])
|
|
|
|
AS_IF([test "x$enable_redirect" = "xyes"], [
|
|
AC_DEFINE(REDIRECT_OUTPUT, 1, [Enable redirection of service output to /dev/null])])
|
|
|
|
### Disable features ###########################################################################
|
|
AS_IF([test "x$enable_logrotate" != "xno"], [
|
|
AC_DEFINE(LOGROTATE_ENABLED, 1, [Enable built-in rotation of /var/log/wtmp et al.])])
|
|
|
|
AS_IF([test "x$enable_rescue" != "xno"], [
|
|
AC_DEFINE([RESCUE_MODE], 1, [Define to enable support for rescue mode.])])
|
|
|
|
AM_CONDITIONAL(LOGROTATE, [test "x$enable_logrotate" = "xyes"])
|
|
|
|
AS_IF([test "x$enable_dbus" = "xyes"], [
|
|
AC_DEFINE(HAVE_DBUS, 1, [Build D-Bus support via libink])])
|
|
AM_CONDITIONAL(DBUS, [test "x$enable_dbus" = "xyes"])
|
|
|
|
### With features ##############################################################################
|
|
AS_IF([test "x$bash_dir" = "xyes"], [
|
|
PKG_CHECK_MODULES([BASH_COMPLETION], [bash-completion >= 2.0],
|
|
[BASH_DIR="$(pkg-config --variable=completionsdir bash-completion)"],
|
|
[BASH_DIR="$datadir/bash-completion/completions"])], [
|
|
BASH_DIR="$bash_dir"])
|
|
|
|
AS_IF([test "x$with_fstab" != "xno"], [
|
|
AS_IF([test "x$fstab" = "xyes"], [fstab=$sysconfdir/fstab])
|
|
AC_EXPAND_DIR(fstab_path, "$fstab")
|
|
AC_DEFINE_UNQUOTED(FINIT_FSTAB, "$fstab_path", [Built-in default: /etc/fstab])],[
|
|
AC_DEFINE_UNQUOTED(FINIT_FSTAB, NULL, [No built-in default fstab])])
|
|
|
|
AS_IF([test "x$with_config" != "xno"], [
|
|
AS_IF([test "x$conf" = "xyes"], [
|
|
conf=$sysconfdir/finit.conf])])
|
|
AC_EXPAND_DIR(conf_path, "$conf")
|
|
AC_DEFINE_UNQUOTED(FINIT_CONF, "$conf_path", [Main Finit configuration file, default /etc/finit.conf])
|
|
AC_SUBST(FINIT_CONF, "$conf_path")
|
|
|
|
AS_IF([test "x$with_rcsd" != "xno"], [
|
|
AS_IF([test "x$rcsd" = "xyes"], [
|
|
rcsd=$sysconfdir/finit.d])])
|
|
AC_EXPAND_DIR(rcsd_path, "$rcsd")
|
|
AC_DEFINE_UNQUOTED(FINIT_RCSD, "$rcsd_path", [Finit rcS.d/, default /etc/finit.d])
|
|
AC_SUBST(FINIT_RCSD, "$rcsd_path")
|
|
|
|
AS_IF([test "x$with_rc_local" != "xno"], [
|
|
AS_IF([test "x$rclocal" = "xyes"], [rclocal=$sysconfdir/rc.local])
|
|
AC_EXPAND_DIR(rclocal_path, "$rclocal")
|
|
AC_DEFINE_UNQUOTED(FINIT_RC_LOCAL, "$rclocal_path", [Compat SysV /etc/rc.local file to run last at boot.])])
|
|
|
|
AS_IF([test "x$with_sysconfig" != "xno"], [
|
|
AS_IF([test "x$sysconfig" != "xdefault"], [
|
|
AC_EXPAND_DIR(sysconfig_path, "$sysconfig")
|
|
AC_DEFINE_UNQUOTED(FINIT_SYSCONFIG, "$sysconfig_path",
|
|
[System environment, default /etc/default & /etc/conf.d])])])
|
|
|
|
AS_IF([test "x$with_heading" != "xno"], [
|
|
AS_IF([test "x$heading" = "xyes"], [heading=""])
|
|
AC_DEFINE_UNQUOTED(INIT_OSHEADING, "$heading", [Displayed by Finit at boot, defaults to /etc/os-release PRETTY_NAME])])
|
|
|
|
AS_IF([test "x$with_group" != "xno"], [
|
|
AS_IF([test "x$group" = "xyes"], [
|
|
group=root])])
|
|
AC_DEFINE_UNQUOTED(DEFGROUP, "$group", [For /run/finit/socket and /run/finit/bus])
|
|
|
|
AS_IF([test "x$with_hostname" != "xno"], [
|
|
AS_IF([test "x$hostname" = "xyes"], [
|
|
hostname=noname])])
|
|
AC_DEFINE_UNQUOTED(DEFHOST, "$hostname", [For /etc/hostname])
|
|
|
|
AS_IF([test "x$with_runlevel" != "xno"], [
|
|
AS_IF([test "x$runlevel" = "xyes"], [
|
|
runlevel=2
|
|
AC_DEFINE_UNQUOTED(RUNLEVEL, $runlevel, [Default runlevel to start after S])])
|
|
AC_DEFINE_UNQUOTED(RUNLEVEL, $runlevel, [Runlevel to start after S])])
|
|
|
|
AS_IF([test "x$with_random_seed" != "xno"], [
|
|
AS_IF([test "x$random_seed" = "xyes"], [
|
|
random_seed=/var/lib/misc/random-seed])
|
|
AC_EXPAND_DIR(random_path, "$random_seed")
|
|
AC_DEFINE_UNQUOTED(RANDOMSEED, "$random_path", [Improve random at boot by seeding it with sth from before.])])
|
|
|
|
AS_IF([test "x$rtc_date" != "xno"], [
|
|
AC_DEFINE_UNQUOTED(RTC_TIMESTAMP_CUSTOM, "$rtc_date", [Custom RTC restore date, default: 2000-01-01 00:00])], [
|
|
rtc_date=""])
|
|
|
|
AS_IF([test "x$rtc_file" != "xno"], [
|
|
AS_IF([test "x$rtc_file" = "xyes"], [
|
|
rtc_file=/var/lib/misc/rtc])
|
|
AC_EXPAND_DIR(rtcfile_path, "$rtc_file")
|
|
AC_DEFINE_UNQUOTED(RTC_FILE, "$rtcfile_path", [Save and restore system time from this file if /dev/rtc is missing.])],[
|
|
AC_DEFINE_UNQUOTED(RTC_FILE, NULL)])
|
|
|
|
AS_IF([test "x$with_keventd" != "xno"], [with_keventd=yes])
|
|
|
|
AS_IF([test "x$with_sulogin" != "xno"], [
|
|
AS_IF([test "x$sulogin" = "xyes"], [
|
|
sulogin=root])
|
|
with_sulogin=yes
|
|
AC_DEFINE_UNQUOTED(SULOGIN_USER, "$sulogin", [Built-in sulogin user, default: root])], [
|
|
sulogin=])
|
|
|
|
AS_IF([test "x$with_watchdog" != "xno"], [
|
|
AS_IF([test "x$watchdog" = "xyes"], [
|
|
watchdog=/dev/watchdog])
|
|
with_watchdog=yes
|
|
AC_DEFINE_UNQUOTED(WDT_DEVNODE, "$watchdog", [Built-in watchdog device node])], [
|
|
watchdog=])
|
|
|
|
AS_IF([test "x$with_libsystemd" != "xno"], [
|
|
AC_DEFINE(HAVE_LIBSYSTEMD, 1, [Build replacement libsystemd library support])])
|
|
|
|
AS_IF([test "x$enable_hook_scripts_plugin" != "xno"], [
|
|
AS_IF([test "x$hook_scripts_path" = "xyes"], [hook_scripts_path=$libexecdir/finit/hook])
|
|
AC_EXPAND_DIR(hook_scripts_path, "$hook_scripts_path")
|
|
AC_DEFINE_UNQUOTED(PLUGIN_HOOK_SCRIPTS_PATH, "$hook_scripts_path", [Built-in default: $libexecdir/finit])])
|
|
|
|
AS_IF([test "x$with_plugin_path" != "xno"], [
|
|
AS_IF([test "x$plugin_path" = "xyes"], [plugin_path=/usr/lib/finit/plugins:/usr/local/lib/finit/plugins])
|
|
AC_EXPAND_DIR(plugin_path, "$plugin_path")
|
|
AC_DEFINE_UNQUOTED(EXTERNAL_PLUGIN_PATH, "$plugin_path", [Built-in default: /usr/lib/finit/plugins:/usr/local/lib/finit/plugins])])
|
|
|
|
# Control build with automake flags
|
|
AM_CONDITIONAL(BASH, [test "x$bash_dir" != "xno"])
|
|
AM_CONDITIONAL(STATIC, [test "x$enable_static" = "xyes"])
|
|
AM_CONDITIONAL(KEVENTD, [test "x$with_keventd" != "xno"])
|
|
AM_CONDITIONAL(SULOGIN, [test "x$with_sulogin" != "xno"])
|
|
AM_CONDITIONAL(WATCHDOGD, [test "x$with_watchdog" != "xno"])
|
|
AM_CONDITIONAL(LIBSYSTEMD, [test "x$with_libsystemd" != "xno"])
|
|
AM_CONDITIONAL(DOC, [test "x$enable_doc" = "xyes"])
|
|
AM_CONDITIONAL(CONTRIB, [test "x$enable_contrib" = "xyes"])
|
|
AM_CONDITIONAL(TESTSERV, [test "x$enable_testserv_plugin" = "xyes"])
|
|
|
|
# Workaround for as-of-yet unreleased runstatedir support, planned for
|
|
# autoconf 2.70, which some major distros have backported.
|
|
AS_IF([test -z "$runstatedir"], runstatedir="$localstatedir/run")
|
|
AC_SUBST(runstatedir)
|
|
|
|
# Override default libdir, used for plugins and rescue.conf
|
|
pkglibdir=$libdir/finit
|
|
AC_SUBST(pkglibexecdir)
|
|
AC_EXPAND_DIR(pkglibexecdir, "$libexecdir/finit")
|
|
AC_DEFINE_UNQUOTED(FINIT_EXECPATH_, "$pkglibexecdir", [Finit libexec path])
|
|
AC_EXPAND_DIR(finit_runpath, "$runstatedir/finit/system")
|
|
AC_DEFINE_UNQUOTED(FINIT_RUNPATH_, "$finit_runpath", [Finit runtime dynamic system services])
|
|
|
|
AC_EXPAND_DIR(plugin_path, "$pkglibdir/plugins")
|
|
AC_SUBST(plugin_path)
|
|
AC_DEFINE_UNQUOTED(PLUGIN_PATH, "$plugin_path", [Finit plugin path])
|
|
|
|
AC_EXPAND_DIR(tmpfiles_path, "$libdir/tmpfiles.d")
|
|
AC_SUBST(tmpfiles_path)
|
|
AC_DEFINE_UNQUOTED(TMPFILES_PATH_, "$tmpfiles_path", [Main tmpfiles.d/, override in /etc])
|
|
|
|
AC_EXPAND_DIR(finit_tmpfiles, "$pkglibdir/tmpfiles.d")
|
|
AC_SUBST(finit_tmpfiles)
|
|
AC_DEFINE_UNQUOTED(FINIT_TMPFILES, "$finit_tmpfiles", [Finit tmpfiles.d/ .conf path])
|
|
|
|
AC_EXPAND_DIR(system_path, "$pkglibdir/system")
|
|
AC_SUBST(system_path)
|
|
AC_DEFINE_UNQUOTED(FINIT_SYSPATH_, "$system_path", [Static services, previously generated at runtime by plugins])
|
|
|
|
AC_EXPAND_DIR(rescue_conf, "$pkglibdir/rescue.conf")
|
|
AC_DEFINE_UNQUOTED(RESCUE_CONF, "$rescue_conf", [Finit rescue mode .conf])
|
|
AC_EXPAND_DIR(sample_conf, "$pkglibdir/sample.conf")
|
|
AC_DEFINE_UNQUOTED(SAMPLE_CONF, "$sample_conf", [Finit sameple.conf for initctl create])
|
|
|
|
AC_EXPAND_DIR(bash_completion_dir, "$BASH_DIR")
|
|
AC_SUBST(BASH_DIR, "$bash_completion_dir")
|
|
|
|
AS_IF([test "$heading" = ""], [heading="<DEFAULT>"])
|
|
AS_IF([test "$heading" = "no"], [heading="<NONE>"])
|
|
|
|
RTC_DATE=$rtc_date
|
|
AS_IF([test "$rtc_date" = ""], [RTC_DATE="<DEFAULT>"])
|
|
AS_IF([test "$rtc_date" = "no"], [RTC_DATE="<DEFAULT>"])
|
|
|
|
# Generate all files
|
|
AC_OUTPUT
|
|
|
|
cat <<EOF
|
|
|
|
------------------ Summary ------------------
|
|
$PACKAGE_NAME version $PACKAGE_VERSION
|
|
Prefix................: $(eval echo $prefix)
|
|
Exec prefix...........: $(eval echo $exec_prefix)
|
|
Libdir................: $(eval echo $libdir)
|
|
Sysconfdir............: `eval echo $sysconfdir`
|
|
Localstatedir.........: `eval echo $localstatedir`
|
|
Default fstab.........: `eval echo $fstab`
|
|
Finit config file.....: $conf_path
|
|
Finit config.d path...: $rcsd_path
|
|
Finit plugin path.....: $plugin_path
|
|
Compat rc.local path..: `eval echo $rclocal`
|
|
System environment....: ${sysconfig_path:-${sysconfig}}
|
|
Random seed path......: $random_path
|
|
C Compiler............: $CC $CFLAGS $CPPFLAGS $LDFLAGS $LIBS
|
|
Linker................: $LD $LLDP_LDFLAGS $LLDP_BIN_LDFLAGS $LDFLAGS $LIBS
|
|
|
|
Behavior:
|
|
Boot heading..........: $heading
|
|
Plugins...............: $plugins
|
|
RTC restore date......: $RTC_DATE
|
|
RTC fallback file.....: $rtc_file
|
|
|
|
Optional features:
|
|
Install doc/..........: $enable_doc
|
|
Install contrib/......: $enable_contrib
|
|
Bash completion.......: $bash_completion_dir
|
|
Built-in keventd......: $with_keventd
|
|
Built-in sulogin......: $with_sulogin $sulogin
|
|
Built-in watchdogd....: $with_watchdog $watchdog
|
|
Built-in logrotate....: $enable_logrotate
|
|
D-Bus support (libink): $enable_dbus
|
|
Replacement libsystemd: $with_libsystemd
|
|
Use cgroup v2.........: $enable_cgroup
|
|
Use libcap............: $enable_libcap
|
|
Parse kernel cmdline..: $enable_kernel_cmdline
|
|
Keep kernel logging...: $enable_kernel_logging
|
|
Skip fsck check.......: $enable_fastboot
|
|
Run fsck fix mode.....: $enable_fsckfix
|
|
Redirect output.......: $enable_redirect
|
|
Rescue mode...........: $enable_rescue
|
|
Default hostname......: $hostname
|
|
Default group.........: $group
|
|
Default runlevel......: $runlevel
|
|
|
|
------------- Compiler version --------------
|
|
$($CC --version || true)
|
|
-------------- Linker version ---------------
|
|
$($LD --version || true)
|
|
---------------------------------------------
|
|
|
|
Check the above options and compile with:
|
|
${MAKE-make}
|
|
|
|
EOF
|