diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2019-06-24 12:56:24 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2019-06-24 12:56:24 +0300 |
commit | 006bfbc5235c181783445d321ce7a7e3c6d8bd8a (patch) | |
tree | f483e0d30c3e801add01b372b24a342281b70b86 /src/cmdline.opt | |
parent | cb90ca582a46ef9f0779837dc4c6fb00656e70c9 (diff) | |
download | pies-006bfbc5235c181783445d321ce7a7e3c6d8bd8a.tar.gz pies-006bfbc5235c181783445d321ce7a7e3c6d8bd8a.tar.bz2 |
Enable/disable SystemV init code at compile time
* configure.ac: New option --enable-sysvinit. Disable the init
code if RUN_LVL is not available.
(PIES_SYSVINIT_ENABLED): New configuration define.
(PIES_COND_SYSVINIT): New condition
Print configuration settings summary.
* src/pies.h (is_sysvinit): Check for PIES_SYSVINIT_ENABLED.
(SYSVINIT_ACTIVE): New macro.
* grecs: Upgrade.
* src/Makefile.am: Conditionally link sysvinit-related code.
* src/cmdline.opt: Disable the --telinit option if sysvinit support
is not available.
(parse_options): Use SYSVINIT_ACTIVE in the conditional.
* src/comp.c (component_verify): Check if component definition is
allowed by the current state of the sysvinit support.
* src/ctl.c: Disable the /runlevel entry point if sysvinit support
is not compiled.
* src/diag.c (stderr_open): Make sure sysvinit-related code is not
compiled if the sysvinit support is not available.
* src/pies.c (config_syntax_tab): Add entry for CONF_INITTAB only if
sysvinit support is available.
(_cb_initdefault,_cb_runlevels): Remove. Use cb_initdefault and cb_runlevels
instead.
(component_keywords): Disable runlevels without sysvinit support.
(pies_keywords): Same for initdefault.
Use SYSVINIT_ACTIVE to suppress compilation of sysvinit code without
sysvinit support.
* src/progman.c: Use SYSVINIT_ACTIVE to suppress compilation of
sysvinit code without sysvinit support.
* src/sysvinit.c (cb_initdefault,cb_runlevels): New functions.
Diffstat (limited to 'src/cmdline.opt')
-rw-r--r-- | src/cmdline.opt | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/cmdline.opt b/src/cmdline.opt index d2aaf6d..d9d90e1 100644 --- a/src/cmdline.opt +++ b/src/cmdline.opt @@ -118,12 +118,14 @@ BEGIN lint_mode = 1; END +CPP(#if PIES_SYSVINIT_ENABLED) OPTION(telinit,T,, [<telinit command: run "pies -T --help" for help>]) BEGIN log_to_stderr_only = 1; exit (telinit (argc - (optind - 1), argv + (optind - 1))); END +CPP(#endif) GROUP(Preprocessor) @@ -220,7 +222,7 @@ parse_options (int *pargc, char ***pargv) char **argv = *pargv; int index; - if (init_process) + if (SYSVINIT_ACTIVE) { sysvinit_parse_argv (argc, argv); index = argc; |