From 07491df186d562d0efa6a7fca2b7f8d07dbd0652 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Mon, 23 Dec 2019 13:05:25 +0000 Subject: Make execline dependency optional This includes: - adding a configure option to disable execline support - duplicating el_semicolon() and el_getstrict() into the s6 library when execline is disabled at build time, making a compat shim and using it where needed (s6-svlisten, s6-ftrig-listen) - Creating alternatives for execlineb script spawning: * s6-log: '?' directive (done in the previous commit) * s6-notifyoncheck: require hardcoding the check in ./data/check * s6-ipcserver-access: no support for exec files, add a warning - Updating the relevant parts of the doc --enable-execline will remain the default, and whiners can choke on their tears. --- src/include/s6/compat.h | 20 ++++++++++++++++++++ src/include/s6/s6.h | 1 + 2 files changed, 21 insertions(+) create mode 100644 src/include/s6/compat.h (limited to 'src/include') diff --git a/src/include/s6/compat.h b/src/include/s6/compat.h new file mode 100644 index 0000000..151db07 --- /dev/null +++ b/src/include/s6/compat.h @@ -0,0 +1,20 @@ +/* ISC license. */ + +#ifndef S6_COMPAT_H +#define S6_COMPAT_H + +#include + +#ifdef S6_USE_EXECLINE + +#include +#define s6_el_semicolon(argv) el_semicolon(argv) + +#else + +extern int s6_compat_el_semicolon (char const **) ; +#define s6_el_semicolon(argv) s6_compat_el_semicolon(argv) + +#endif + +#endif diff --git a/src/include/s6/s6.h b/src/include/s6/s6.h index 98e23e1..aabcc13 100644 --- a/src/include/s6/s6.h +++ b/src/include/s6/s6.h @@ -3,6 +3,7 @@ #ifndef S6_H #define S6_H +#include #include #include #include -- cgit v1.2.3