mirror of
https://github.com/systemd/systemd
synced 2026-03-15 09:34:47 +01:00
Compare commits
5 Commits
c856ef0457
...
d57e871c60
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d57e871c60 | ||
|
|
f1e696221f | ||
|
|
7c22f07cbd | ||
|
|
f86887af6e | ||
|
|
0f4c4f3824 |
@ -30,5 +30,4 @@ foreach file : in_files
|
|||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
meson.add_install_script('sh', '-c',
|
meson.add_install_script('sh', '-c',
|
||||||
'test -n "$DESTDIR" || @0@/journalctl --update-catalog'
|
'test -n "$DESTDIR" || @0@/journalctl --update-catalog'.format(rootbindir))
|
||||||
.format(rootbindir))
|
|
||||||
|
|||||||
@ -51,8 +51,7 @@ if conf.get('ENABLE_HWDB') == 1
|
|||||||
mkdir_p.format(join_paths(sysconfdir, 'udev/hwdb.d')))
|
mkdir_p.format(join_paths(sysconfdir, 'udev/hwdb.d')))
|
||||||
|
|
||||||
meson.add_install_script('sh', '-c',
|
meson.add_install_script('sh', '-c',
|
||||||
'test -n "$DESTDIR" || @0@/systemd-hwdb update'
|
'test -n "$DESTDIR" || @0@/systemd-hwdb update'.format(rootbindir))
|
||||||
.format(rootbindir))
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if want_tests != 'false'
|
if want_tests != 'false'
|
||||||
|
|||||||
@ -70,7 +70,7 @@ foreach tuple : xsltproc.found() ? manpages : []
|
|||||||
link = custom_target(
|
link = custom_target(
|
||||||
htmlalias,
|
htmlalias,
|
||||||
output : htmlalias,
|
output : htmlalias,
|
||||||
command : ['ln', '-fs', html, '@OUTPUT@'])
|
command : [ln, '-fs', html, '@OUTPUT@'])
|
||||||
if want_html
|
if want_html
|
||||||
dst = join_paths(docdir, 'html', htmlalias)
|
dst = join_paths(docdir, 'html', htmlalias)
|
||||||
cmd = 'ln -fs @0@ $DESTDIR@1@'.format(html, dst)
|
cmd = 'ln -fs @0@ $DESTDIR@1@'.format(html, dst)
|
||||||
@ -148,7 +148,7 @@ foreach tuple : xsltproc.found() ? [['systemd.directives', '7', systemd_directiv
|
|||||||
htmlalias,
|
htmlalias,
|
||||||
input : p2,
|
input : p2,
|
||||||
output : htmlalias,
|
output : htmlalias,
|
||||||
command : ['ln', '-fs', html, '@OUTPUT@'])
|
command : [ln, '-fs', html, '@OUTPUT@'])
|
||||||
if want_html
|
if want_html
|
||||||
dst = join_paths(docdir, 'html', htmlalias)
|
dst = join_paths(docdir, 'html', htmlalias)
|
||||||
cmd = 'ln -fs @0@ $DESTDIR@1@'.format(html, dst)
|
cmd = 'ln -fs @0@ $DESTDIR@1@'.format(html, dst)
|
||||||
@ -176,15 +176,14 @@ man = custom_target(
|
|||||||
'man',
|
'man',
|
||||||
output : 'man',
|
output : 'man',
|
||||||
depends : man_pages,
|
depends : man_pages,
|
||||||
command : ['echo'])
|
command : [echo])
|
||||||
|
|
||||||
html = custom_target(
|
html = custom_target(
|
||||||
'html',
|
'html',
|
||||||
output : 'html',
|
output : 'html',
|
||||||
depends : html_pages,
|
depends : html_pages,
|
||||||
command : ['echo'])
|
command : [echo])
|
||||||
|
|
||||||
rsync = find_program('rsync', required : false)
|
|
||||||
if rsync.found()
|
if rsync.found()
|
||||||
run_target(
|
run_target(
|
||||||
'doc-sync',
|
'doc-sync',
|
||||||
|
|||||||
46
meson.build
46
meson.build
@ -600,17 +600,22 @@ endif
|
|||||||
|
|
||||||
versiondep = declare_dependency(sources: version_h)
|
versiondep = declare_dependency(sources: version_h)
|
||||||
|
|
||||||
|
sh = find_program('sh')
|
||||||
|
echo = find_program('echo')
|
||||||
|
test = find_program('test')
|
||||||
sed = find_program('sed')
|
sed = find_program('sed')
|
||||||
awk = find_program('awk')
|
awk = find_program('awk')
|
||||||
m4 = find_program('m4')
|
m4 = find_program('m4')
|
||||||
stat = find_program('stat')
|
stat = find_program('stat')
|
||||||
|
ln = find_program('ln')
|
||||||
git = find_program('git', required : false)
|
git = find_program('git', required : false)
|
||||||
env = find_program('env')
|
env = find_program('env')
|
||||||
perl = find_program('perl', required : false)
|
perl = find_program('perl', required : false)
|
||||||
|
rsync = find_program('rsync', required : false)
|
||||||
meson_make_symlink = project_source_root + '/tools/meson-make-symlink.sh'
|
meson_make_symlink = project_source_root + '/tools/meson-make-symlink.sh'
|
||||||
mkdir_p = 'mkdir -p $DESTDIR/@0@'
|
|
||||||
test_efi_create_disk_sh = find_program('test/test-efi-create-disk.sh')
|
test_efi_create_disk_sh = find_program('test/test-efi-create-disk.sh')
|
||||||
|
|
||||||
|
mkdir_p = 'mkdir -p $DESTDIR/@0@'
|
||||||
splash_bmp = files('test/splash.bmp')
|
splash_bmp = files('test/splash.bmp')
|
||||||
|
|
||||||
# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
|
# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
|
||||||
@ -644,7 +649,7 @@ endforeach
|
|||||||
|
|
||||||
conf.set_quoted('TELINIT', get_option('telinit-path'))
|
conf.set_quoted('TELINIT', get_option('telinit-path'))
|
||||||
|
|
||||||
if run_command('ln', '--relative', '--help').returncode() != 0
|
if run_command(ln, '--relative', '--help').returncode() != 0
|
||||||
error('ln does not support --relative (added in coreutils 8.16)')
|
error('ln does not support --relative (added in coreutils 8.16)')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -658,7 +663,7 @@ const char * in_word_set(const char *, @0@);
|
|||||||
@1@
|
@1@
|
||||||
'''
|
'''
|
||||||
gperf_snippet_format = 'echo foo,bar | @0@ -L ANSI-C'
|
gperf_snippet_format = 'echo foo,bar | @0@ -L ANSI-C'
|
||||||
gperf_snippet = run_command('sh', '-c', gperf_snippet_format.format(gperf.path()))
|
gperf_snippet = run_command(sh, '-c', gperf_snippet_format.format(gperf.path()))
|
||||||
gperf_test = gperf_test_format.format('size_t', gperf_snippet.stdout())
|
gperf_test = gperf_test_format.format('size_t', gperf_snippet.stdout())
|
||||||
if cc.compiles(gperf_test)
|
if cc.compiles(gperf_test)
|
||||||
gperf_len_type = 'size_t'
|
gperf_len_type = 'size_t'
|
||||||
@ -718,11 +723,11 @@ conf.set_quoted('DEFAULT_NET_NAMING_SCHEME', default_net_naming_scheme)
|
|||||||
|
|
||||||
time_epoch = get_option('time-epoch')
|
time_epoch = get_option('time-epoch')
|
||||||
if time_epoch == -1
|
if time_epoch == -1
|
||||||
time_epoch = run_command('sh', ['-c', 'echo "$SOURCE_DATE_EPOCH"']).stdout().strip()
|
time_epoch = run_command(sh, '-c', 'echo "$SOURCE_DATE_EPOCH"').stdout().strip()
|
||||||
if time_epoch == '' and git.found() and run_command('test', '-e', '.git').returncode() == 0
|
if time_epoch == '' and git.found() and run_command('test', '-e', '.git').returncode() == 0
|
||||||
# If we're in a git repository, use the creation time of the latest git tag.
|
# If we're in a git repository, use the creation time of the latest git tag.
|
||||||
latest_tag = run_command('git', 'describe', '--abbrev=0', '--tags').stdout().strip()
|
latest_tag = run_command(git, 'describe', '--abbrev=0', '--tags').stdout().strip()
|
||||||
time_epoch = run_command('git', 'log', '--no-show-signature', '-1', '--format=%at', latest_tag).stdout()
|
time_epoch = run_command(git, 'log', '--no-show-signature', '-1', '--format=%at', latest_tag).stdout()
|
||||||
endif
|
endif
|
||||||
if time_epoch == ''
|
if time_epoch == ''
|
||||||
NEWS = files('NEWS')
|
NEWS = files('NEWS')
|
||||||
@ -3351,10 +3356,10 @@ executable(
|
|||||||
custom_target(
|
custom_target(
|
||||||
'systemd-runtest.env',
|
'systemd-runtest.env',
|
||||||
output : 'systemd-runtest.env',
|
output : 'systemd-runtest.env',
|
||||||
command : ['sh', '-c', '{ ' +
|
command : [sh, '-c',
|
||||||
'echo SYSTEMD_TEST_DATA=@0@; '.format(join_paths(project_source_root, 'test')) +
|
'{ echo SYSTEMD_TEST_DATA=@0@; echo SYSTEMD_CATALOG_DIR=@1@; } >@OUTPUT@'.format(
|
||||||
'echo SYSTEMD_CATALOG_DIR=@0@; '.format(join_paths(project_build_root, 'catalog')) +
|
join_paths(project_source_root, 'test'),
|
||||||
'} >@OUTPUT@'],
|
join_paths(project_build_root, 'catalog'))],
|
||||||
build_by_default : true)
|
build_by_default : true)
|
||||||
|
|
||||||
test_cflags = ['-DTEST_CODE=1']
|
test_cflags = ['-DTEST_CODE=1']
|
||||||
@ -3595,7 +3600,7 @@ foreach tuple : sanitizers
|
|||||||
name,
|
name,
|
||||||
output : name,
|
output : name,
|
||||||
depends : build,
|
depends : build,
|
||||||
command : [env, 'ln', '-fs',
|
command : [ln, '-fs',
|
||||||
join_paths(build.full_path(), b),
|
join_paths(build.full_path(), b),
|
||||||
'@OUTPUT@'],
|
'@OUTPUT@'],
|
||||||
build_by_default : true)
|
build_by_default : true)
|
||||||
@ -3622,9 +3627,8 @@ endforeach
|
|||||||
|
|
||||||
if git.found()
|
if git.found()
|
||||||
all_files = run_command(
|
all_files = run_command(
|
||||||
'env', '-u', 'GIT_WORK_TREE',
|
env, '-u', 'GIT_WORK_TREE',
|
||||||
git,
|
git, '--git-dir=@0@/.git'.format(project_source_root),
|
||||||
'--git-dir=@0@/.git'.format(project_source_root),
|
|
||||||
'ls-files', ':/*.[ch]')
|
'ls-files', ':/*.[ch]')
|
||||||
|
|
||||||
all_files = files(all_files.stdout().split())
|
all_files = files(all_files.stdout().split())
|
||||||
@ -3648,16 +3652,16 @@ endif
|
|||||||
if git.found()
|
if git.found()
|
||||||
git_head = run_command(
|
git_head = run_command(
|
||||||
git,
|
git,
|
||||||
['--git-dir=@0@/.git'.format(project_source_root),
|
'--git-dir=@0@/.git'.format(project_source_root),
|
||||||
'rev-parse', 'HEAD']).stdout().strip()
|
'rev-parse', 'HEAD').stdout().strip()
|
||||||
git_head_short = run_command(
|
git_head_short = run_command(
|
||||||
git,
|
git,
|
||||||
['--git-dir=@0@/.git'.format(project_source_root),
|
'--git-dir=@0@/.git'.format(project_source_root),
|
||||||
'rev-parse', '--short=7', 'HEAD']).stdout().strip()
|
'rev-parse', '--short=7', 'HEAD').stdout().strip()
|
||||||
|
|
||||||
run_target(
|
run_target(
|
||||||
'git-snapshot',
|
'git-snapshot',
|
||||||
command : ['git', 'archive',
|
command : [git, 'archive',
|
||||||
'-o', '@0@/systemd-@1@.tar.gz'.format(project_source_root,
|
'-o', '@0@/systemd-@1@.tar.gz'.format(project_source_root,
|
||||||
git_head_short),
|
git_head_short),
|
||||||
'--prefix', 'systemd-@0@/'.format(git_head),
|
'--prefix', 'systemd-@0@/'.format(git_head),
|
||||||
@ -3694,7 +3698,7 @@ endif
|
|||||||
custom_target(
|
custom_target(
|
||||||
'update-man-rules',
|
'update-man-rules',
|
||||||
output : 'update-man-rules',
|
output : 'update-man-rules',
|
||||||
command : ['sh', '-c',
|
command : [sh, '-c',
|
||||||
'cd @0@ && '.format(meson.build_root()) +
|
'cd @0@ && '.format(meson.build_root()) +
|
||||||
'python3 @0@/tools/update-man-rules.py $(find @0@ -wholename "*/man/*.xml") >t && '.format(project_source_root) +
|
'python3 @0@/tools/update-man-rules.py $(find @0@ -wholename "*/man/*.xml") >t && '.format(project_source_root) +
|
||||||
'mv t @0@/man/rules/meson.build'.format(meson.current_source_dir())],
|
'mv t @0@/man/rules/meson.build'.format(meson.current_source_dir())],
|
||||||
|
|||||||
@ -72,14 +72,14 @@ if conf.get('ENABLE_EFI') == 1 and get_option('gnu-efi') != 'false'
|
|||||||
if efi_libdir == ''
|
if efi_libdir == ''
|
||||||
# New location first introduced with gnu-efi 3.0.11
|
# New location first introduced with gnu-efi 3.0.11
|
||||||
efi_libdir = join_paths('/usr/lib/gnuefi', EFI_MACHINE_TYPE_NAME)
|
efi_libdir = join_paths('/usr/lib/gnuefi', EFI_MACHINE_TYPE_NAME)
|
||||||
cmd = run_command('test', '-e', efi_libdir)
|
cmd = run_command(test, '-e', efi_libdir)
|
||||||
|
|
||||||
if cmd.returncode() != 0
|
if cmd.returncode() != 0
|
||||||
# Fall back to the old approach
|
# Fall back to the old approach
|
||||||
cmd = run_command(efi_cc + ['-print-multi-os-directory'])
|
cmd = run_command(efi_cc + ['-print-multi-os-directory'])
|
||||||
if cmd.returncode() == 0
|
if cmd.returncode() == 0
|
||||||
path = join_paths('/usr/lib', cmd.stdout().strip())
|
path = join_paths('/usr/lib', cmd.stdout().strip())
|
||||||
cmd = run_command('realpath', '-e', path)
|
cmd = run_command(env, 'realpath', '-e', path)
|
||||||
if cmd.returncode() == 0
|
if cmd.returncode() == 0
|
||||||
efi_libdir = cmd.stdout().strip()
|
efi_libdir = cmd.stdout().strip()
|
||||||
endif
|
endif
|
||||||
@ -116,7 +116,9 @@ if have_gnu_efi
|
|||||||
foreach sbatvar : sbatvars
|
foreach sbatvar : sbatvars
|
||||||
value = get_option(sbatvar[0])
|
value = get_option(sbatvar[0])
|
||||||
if value == '' or value == 'auto'
|
if value == '' or value == 'auto'
|
||||||
value = run_command('sh', '-c', 'if [ -e /etc/os-release ]; then . /etc/os-release; else . /usr/lib/os-release; fi; echo $' + sbatvar[1]).stdout().strip()
|
cmd = 'if [ -e /etc/os-release ]; then . /etc/os-release; else . /usr/lib/os-release; fi; echo $@0@'.format(sbatvar[1])
|
||||||
|
value = run_command(sh, '-c', cmd).stdout().strip()
|
||||||
|
message('@0@ (from @1@): @2@'.format(sbatvar[0], sbatvar[1], value))
|
||||||
endif
|
endif
|
||||||
if value == ''
|
if value == ''
|
||||||
error('Required @0@ option not set and autodetection failed'.format(sbatvar[0]))
|
error('Required @0@ option not set and autodetection failed'.format(sbatvar[0]))
|
||||||
@ -156,7 +158,7 @@ if have_gnu_efi
|
|||||||
efi_lds = ''
|
efi_lds = ''
|
||||||
foreach location : efi_location_map
|
foreach location : efi_location_map
|
||||||
if efi_lds == ''
|
if efi_lds == ''
|
||||||
cmd = run_command('test', '-f', location[0])
|
cmd = run_command(test, '-f', location[0])
|
||||||
if cmd.returncode() == 0
|
if cmd.returncode() == 0
|
||||||
efi_lds = location[0]
|
efi_lds = location[0]
|
||||||
efi_crt0 = location[1]
|
efi_crt0 = location[1]
|
||||||
|
|||||||
@ -11,7 +11,7 @@ test_hashmap_ordered_c = custom_target(
|
|||||||
|
|
||||||
test_include_dir = include_directories('.')
|
test_include_dir = include_directories('.')
|
||||||
|
|
||||||
path = run_command('sh', ['-c', 'echo "$PATH"']).stdout().strip()
|
path = run_command(sh, '-c', 'echo "$PATH"').stdout().strip()
|
||||||
test_env = environment()
|
test_env = environment()
|
||||||
test_env.set('SYSTEMD_KBD_MODEL_MAP', kbd_model_map)
|
test_env.set('SYSTEMD_KBD_MODEL_MAP', kbd_model_map)
|
||||||
test_env.set('SYSTEMD_LANGUAGE_FALLBACK_MAP', language_fallback_map)
|
test_env.set('SYSTEMD_LANGUAGE_FALLBACK_MAP', language_fallback_map)
|
||||||
|
|||||||
@ -22,14 +22,11 @@ sanitize_address_undefined = custom_target(
|
|||||||
sanitizers = [['address,undefined', sanitize_address_undefined]]
|
sanitizers = [['address,undefined', sanitize_address_undefined]]
|
||||||
|
|
||||||
if git.found()
|
if git.found()
|
||||||
out = run_command(
|
out = run_command(env, '-u', 'GIT_WORK_TREE',
|
||||||
'env', '-u', 'GIT_WORK_TREE',
|
git, '--git-dir=@0@/.git'.format(project_source_root),
|
||||||
git,
|
|
||||||
'--git-dir=@0@/.git'.format(project_source_root),
|
|
||||||
'ls-files', ':/test/fuzz/*/*')
|
'ls-files', ':/test/fuzz/*/*')
|
||||||
else
|
else
|
||||||
out = run_command(
|
out = run_command(sh, '-c', 'ls @0@/test/fuzz/*/*'.format(project_source_root))
|
||||||
'sh', '-c', 'ls @0@/test/fuzz/*/*'.format(project_source_root))
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
fuzz_regression_tests = []
|
fuzz_regression_tests = []
|
||||||
|
|||||||
@ -131,13 +131,12 @@ if want_tests != 'false' and dmi_arches.contains(host_machine.cpu_family())
|
|||||||
|
|
||||||
if git.found()
|
if git.found()
|
||||||
out = run_command(
|
out = run_command(
|
||||||
'env', '-u', 'GIT_WORK_TREE',
|
env, '-u', 'GIT_WORK_TREE',
|
||||||
git,
|
git, '--git-dir=@0@/.git'.format(project_source_root),
|
||||||
'--git-dir=@0@/.git'.format(project_source_root),
|
|
||||||
'ls-files', ':/test/dmidecode-dumps/*.bin')
|
'ls-files', ':/test/dmidecode-dumps/*.bin')
|
||||||
else
|
else
|
||||||
out = run_command(
|
out = run_command(
|
||||||
'sh', '-c', 'ls @0@/test/dmidecode-dumps/*.bin'.format(project_source_root))
|
sh, '-c', 'ls @0@/test/dmidecode-dumps/*.bin'.format(project_source_root))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
foreach p : out.stdout().split()
|
foreach p : out.stdout().split()
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import argparse
|
|||||||
import dataclasses
|
import dataclasses
|
||||||
import glob
|
import glob
|
||||||
import os
|
import os
|
||||||
|
import pathlib
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
try:
|
try:
|
||||||
@ -27,6 +28,8 @@ def argument_parser():
|
|||||||
p = argparse.ArgumentParser()
|
p = argparse.ArgumentParser()
|
||||||
p.add_argument('-u', '--unsafe', action='store_true',
|
p.add_argument('-u', '--unsafe', action='store_true',
|
||||||
help='run "unsafe" tests too')
|
help='run "unsafe" tests too')
|
||||||
|
p.add_argument('-A', '--artifact_directory',
|
||||||
|
help='store output from failed tests in this dir')
|
||||||
return p
|
return p
|
||||||
|
|
||||||
opts = argument_parser().parse_args()
|
opts = argument_parser().parse_args()
|
||||||
@ -35,11 +38,14 @@ tests = glob.glob('/usr/lib/systemd/tests/test-*')
|
|||||||
if opts.unsafe:
|
if opts.unsafe:
|
||||||
tests += glob.glob('/usr/lib/systemd/tests/unsafe/test-*')
|
tests += glob.glob('/usr/lib/systemd/tests/unsafe/test-*')
|
||||||
|
|
||||||
|
if not opts.artifact_directory and os.getenv('ARTIFACT_DIRECTORY'):
|
||||||
|
opts.artifact_directory = os.getenv('ARTIFACT_DIRECTORY')
|
||||||
|
|
||||||
total = Total(total=len(tests))
|
total = Total(total=len(tests))
|
||||||
for test in tests:
|
for test in tests:
|
||||||
name = os.path.basename(test)
|
name = os.path.basename(test)
|
||||||
|
|
||||||
ex = subprocess.run(test, stdin=subprocess.DEVNULL, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
ex = subprocess.run(test, stdin=subprocess.DEVNULL, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||||
if ex.returncode == 0:
|
if ex.returncode == 0:
|
||||||
print(f'{GREEN}PASS: {name}{RESET_ALL}')
|
print(f'{GREEN}PASS: {name}{RESET_ALL}')
|
||||||
total.good += 1
|
total.good += 1
|
||||||
@ -50,12 +56,23 @@ for test in tests:
|
|||||||
print(f'{RED}FAIL: {name}{RESET_ALL}')
|
print(f'{RED}FAIL: {name}{RESET_ALL}')
|
||||||
total.fail += 1
|
total.fail += 1
|
||||||
|
|
||||||
# stdout/stderr might not be valid unicode, let's just dump it to the terminal.
|
output_file = None
|
||||||
# Also let's reset the style afterwards, in case our output sets something.
|
if opts.artifact_directory:
|
||||||
sys.stdout.buffer.write(ex.stdout)
|
output_dir = pathlib.Path(opts.artifact_directory) / 'unit-tests'
|
||||||
print(f'{RESET_ALL}{BRIGHT}')
|
output_dir.mkdir(parents=True, exist_ok=True)
|
||||||
sys.stdout.buffer.write(ex.stderr)
|
output_file = output_dir / name
|
||||||
|
output_file.write_bytes(ex.stdout)
|
||||||
|
|
||||||
|
try:
|
||||||
|
print(ex.stdout.decode('utf-8'))
|
||||||
|
except UnicodeDecodeError:
|
||||||
|
print(f'{BRIGHT}Note, some test output shown here is not UTF-8')
|
||||||
|
if output_file:
|
||||||
|
print(f'For actual test output see artifact file {output_file}')
|
||||||
print(f'{RESET_ALL}')
|
print(f'{RESET_ALL}')
|
||||||
|
print(ex.stdout.decode('utf-8', errors='replace'))
|
||||||
|
sys.stdout.flush()
|
||||||
|
|
||||||
|
|
||||||
print(f'{BRIGHT}OK: {total.good} SKIP: {total.skip} FAIL: {total.fail}{RESET_ALL}')
|
print(f'{BRIGHT}OK: {total.good} SKIP: {total.skip} FAIL: {total.fail}{RESET_ALL}')
|
||||||
sys.exit(total.fail > 0)
|
sys.exit(total.fail > 0)
|
||||||
|
|||||||
@ -349,8 +349,7 @@ if conf.get('HAVE_SYSV_COMPAT') == 1
|
|||||||
foreach i : [1, 2, 3, 4, 5]
|
foreach i : [1, 2, 3, 4, 5]
|
||||||
meson.add_install_script(
|
meson.add_install_script(
|
||||||
'sh', '-c',
|
'sh', '-c',
|
||||||
mkdir_p
|
mkdir_p.format(join_paths(systemunitdir, 'runlevel@0@.target.wants'.format(i))))
|
||||||
.format(join_paths(systemunitdir, 'runlevel@0@.target.wants'.format(i))))
|
|
||||||
endforeach
|
endforeach
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user