meson: Introduce initconfdir option

Right now we expect the configuration files for init scripts
to live in /etc/sysconfig, but that location is only used by
RHEL- and SUSE-derived distros.

This means that packagers for other distros have to patch
things as part of the build process, while people building
from source will get wonky integration.

This new option will provide a convenient way to override
the default location at build time that is usable by distro
packagers and people building from source alike.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
This commit is contained in:
Andrea Bolognani 2023-04-29 18:13:56 +02:00
parent 4419e74117
commit 9850b37e39
2 changed files with 6 additions and 0 deletions

View File

@ -76,6 +76,11 @@ if runstatedir == ''
runstatedir = localstatedir / 'run' runstatedir = localstatedir / 'run'
endif endif
initconfdir = get_option('initconfdir')
if initconfdir == ''
initconfdir = sysconfdir / 'sysconfig'
endif
bindir = prefix / get_option('bindir') bindir = prefix / get_option('bindir')
datadir = prefix / get_option('datadir') datadir = prefix / get_option('datadir')
includedir = prefix / get_option('includedir') includedir = prefix / get_option('includedir')

View File

@ -3,6 +3,7 @@ option('packager', type: 'string', value: '', description: 'Extra packager name'
option('packager_version', type: 'string', value: '', description: 'Extra packager version') option('packager_version', type: 'string', value: '', description: 'Extra packager version')
option('system', type: 'boolean', value: false, description: 'Set install paths to system ones') option('system', type: 'boolean', value: false, description: 'Set install paths to system ones')
option('runstatedir', type: 'string', value: '', description: 'State directory for temporary sockets, pid files, etc') option('runstatedir', type: 'string', value: '', description: 'State directory for temporary sockets, pid files, etc')
option('initconfdir', type: 'string', value: '', description: 'directory for init script configuration files')
option('expensive_tests', type: 'feature', value: 'auto', description: 'set the default for enabling expensive tests (long timeouts)') option('expensive_tests', type: 'feature', value: 'auto', description: 'set the default for enabling expensive tests (long timeouts)')
option('test_coverage', type: 'boolean', value: false, description: 'turn on code coverage instrumentation') option('test_coverage', type: 'boolean', value: false, description: 'turn on code coverage instrumentation')
option('git_werror', type: 'feature', value: 'auto', description: 'use -Werror if building from GIT') option('git_werror', type: 'feature', value: 'auto', description: 'use -Werror if building from GIT')