meson: recreate dist-check-help

This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2017-04-13 11:52:05 -04:00
parent e17e5ba9bf
commit 005a29f234
2 changed files with 487 additions and 411 deletions

View File

@ -1074,6 +1074,10 @@ endforeach
############################################################
# binaries that have --help and are intended for use by humans,
# usually, but not always, installed in /bin.
public_programs = []
subdir('src/libudev')
subdir('src/shared')
subdir('src/core')
@ -1115,7 +1119,7 @@ executable('systemd',
install : true,
install_dir : rootlibexecdir)
executable('systemd-analyze',
exe = executable('systemd-analyze',
systemd_analyze_sources,
include_directories : includes,
link_with : [libcore,
@ -1130,6 +1134,7 @@ executable('systemd-analyze',
libblkid],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemd-journald',
systemd_journald_sources,
@ -1145,7 +1150,7 @@ executable('systemd-journald',
install : true,
install_dir : rootlibexecdir)
executable('systemd-cat',
exe = executable('systemd-cat',
systemd_cat_sources,
include_directories : includes,
link_with : [libjournal_core,
@ -1154,8 +1159,9 @@ executable('systemd-cat',
dependencies : [threads],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('journalctl',
exe = executable('journalctl',
journalctl_sources,
include_directories : includes,
link_with : [libsystemd_journal_internal,
@ -1169,6 +1175,7 @@ executable('journalctl',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
executable('systemd-getty-generator',
'src/getty-generator/getty-generator.c',
@ -1241,13 +1248,14 @@ if conf.get('HAVE_BLKID', 0) == 1
install : true,
install_dir : systemgeneratordir)
executable('systemd-dissect',
exe = executable('systemd-dissect',
'src/dissect/dissect.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [exe]
endif
if conf.get('ENABLE_RESOLVED', 0) == 1
@ -1263,7 +1271,7 @@ if conf.get('ENABLE_RESOLVED', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('systemd-resolve',
exe = executable('systemd-resolve',
systemd_resolve_sources,
include_directories : includes,
link_with : [libshared,
@ -1273,6 +1281,7 @@ if conf.get('ENABLE_RESOLVED', 0) == 1
libidn],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
endif
if conf.get('ENABLE_LOGIND', 0) == 1
@ -1289,7 +1298,7 @@ if conf.get('ENABLE_LOGIND', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('loginctl',
exe = executable('loginctl',
loginctl_sources,
include_directories : includes,
link_with : [libshared,
@ -1301,8 +1310,9 @@ if conf.get('ENABLE_LOGIND', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
executable('systemd-inhibit',
exe = executable('systemd-inhibit',
'src/login/inhibit.c',
include_directories : includes,
link_with : [libshared,
@ -1310,6 +1320,7 @@ if conf.get('ENABLE_LOGIND', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
if conf.get('HAVE_PAM', 0) == 1
version_script_arg = join_paths(meson.current_source_dir(), pam_systemd_sym)
@ -1342,23 +1353,25 @@ if conf.get('HAVE_PAM', 0) == 1
endif
if conf.get('ENABLE_EFI', 0) == 1 and conf.get('HAVE_BLKID', 0) == 1
executable('bootctl',
exe = executable('bootctl',
'src/boot/bootctl.c',
include_directories : includes,
link_with : [libshared],
dependencies : [libblkid],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
endif
executable('systemd-socket-activate', 'src/activate/activate.c',
exe = executable('systemd-socket-activate', 'src/activate/activate.c',
include_directories : includes,
link_with : [libshared],
dependencies : [threads],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemctl', 'src/systemctl/systemctl.c',
exe = executable('systemctl', 'src/systemctl/systemctl.c',
include_directories : includes,
link_with : [libshared,
libsystemd_internal],
@ -1370,6 +1383,7 @@ executable('systemctl', 'src/systemctl/systemctl.c',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
if conf.get('ENABLE_BACKLIGHT', 0) == 1
executable('systemd-backlight',
@ -1468,13 +1482,14 @@ if conf.get('ENABLE_HOSTNAMED', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('hostnamectl',
exe = executable('hostnamectl',
'src/hostname/hostnamectl.c',
include_directories : includes,
link_with : [libshared,
libsystemd_internal],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
endif
if conf.get('ENABLE_LOCALED', 0) == 1
@ -1488,13 +1503,14 @@ if conf.get('ENABLE_LOCALED', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('localectl',
exe = executable('localectl',
localectl_sources,
include_directories : includes,
link_with : [libshared,
libsystemd_internal],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
endif
if conf.get('ENABLE_TIMEDATED', 0) == 1
@ -1507,13 +1523,14 @@ if conf.get('ENABLE_TIMEDATED', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('timedatectl',
exe = executable('timedatectl',
'src/timedate/timedatectl.c',
include_directories : includes,
install_rpath : rootlibexecdir,
link_with : [libshared,
libsystemd_internal],
install : true)
public_programs += [exe]
endif
if conf.get('ENABLE_TIMESYNCD', 0) == 1
@ -1540,7 +1557,7 @@ if conf.get('ENABLE_MACHINED', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('machinectl',
exe = executable('machinectl',
'src/machine/machinectl.c',
include_directories : includes,
link_with : [libshared,
@ -1551,6 +1568,7 @@ if conf.get('ENABLE_MACHINED', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
endif
if conf.get('ENABLE_IMPORTD', 0) == 1
@ -1564,7 +1582,7 @@ if conf.get('ENABLE_IMPORTD', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('systemd-pull',
systemd_pull = executable('systemd-pull',
systemd_pull_sources,
include_directories : includes,
link_with : [libshared],
@ -1577,7 +1595,7 @@ if conf.get('ENABLE_IMPORTD', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('systemd-import',
systemd_import = executable('systemd-import',
systemd_import_sources,
include_directories : includes,
link_with : [libshared],
@ -1589,7 +1607,7 @@ if conf.get('ENABLE_IMPORTD', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('systemd-export',
systemd_export = executable('systemd-export',
systemd_export_sources,
include_directories : includes,
link_with : [libshared],
@ -1600,10 +1618,11 @@ if conf.get('ENABLE_IMPORTD', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [systemd_pull, systemd_import, systemd_export]
endif
if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_LIBCURL', 0) == 1
executable('systemd-journal-upload',
exe = executable('systemd-journal-upload',
systemd_journal_upload_sources,
include_directories : includes,
link_with : [libsystemd_journal_internal,
@ -1616,10 +1635,11 @@ if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_LIBCURL', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [exe]
endif
if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_MICROHTTPD', 0) == 1
executable('systemd-journal-remote',
s_j_remote = executable('systemd-journal-remote',
systemd_journal_remote_sources,
include_directories : includes,
link_with : [libsystemd_journal_internal,
@ -1633,7 +1653,7 @@ if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_MICROHTTPD', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('systemd-journal-gatewayd',
s_j_gatewayd = executable('systemd-journal-gatewayd',
systemd_journal_gatewayd_sources,
include_directories : includes,
link_with : [libsystemd_journal_internal,
@ -1646,6 +1666,7 @@ if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_MICROHTTPD', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [s_j_remote, s_j_gatewayd]
endif
if conf.get('ENABLE_COREDUMP', 0) == 1
@ -1664,7 +1685,7 @@ if conf.get('ENABLE_COREDUMP', 0) == 1
install : true,
install_dir : rootlibexecdir)
executable('coredumpctl',
exe = executable('coredumpctl',
coredumpctl_sources,
include_directories : includes,
link_with : [libsystemd_journal_internal,
@ -1675,16 +1696,18 @@ if conf.get('ENABLE_COREDUMP', 0) == 1
liblz4],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
endif
if conf.get('ENABLE_BINFMT', 0) == 1
executable('systemd-binfmt',
exe = executable('systemd-binfmt',
'src/binfmt/binfmt.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [exe]
meson.add_install_script('sh', '-c',
mkdir_p.format(binfmtdir))
@ -1761,13 +1784,14 @@ executable('systemd-sleep',
install : true,
install_dir : rootlibexecdir)
executable('systemd-sysctl',
exe = executable('systemd-sysctl',
'src/sysctl/sysctl.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [exe]
executable('systemd-ac-power',
'src/ac-power/ac-power.c',
@ -1777,35 +1801,39 @@ executable('systemd-ac-power',
install : true,
install_dir : rootlibexecdir)
executable('systemd-detect-virt',
exe = executable('systemd-detect-virt',
'src/detect-virt/detect-virt.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemd-delta',
exe = executable('systemd-delta',
'src/delta/delta.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemd-escape',
exe = executable('systemd-escape',
'src/escape/escape.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
executable('systemd-notify',
exe = executable('systemd-notify',
'src/notify/notify.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
executable('systemd-volatile-root',
'src/volatile-root/volatile-root.c',
@ -1823,15 +1851,16 @@ executable('systemd-cgroups-agent',
install : true,
install_dir : rootlibexecdir)
executable('systemd-path',
exe = executable('systemd-path',
'src/path/path.c',
include_directories : includes,
link_with : [libsystemd_internal,
libshared],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemd-ask-password',
exe = executable('systemd-ask-password',
'src/ask-password/ask-password.c',
include_directories : includes,
link_with : [libshared,
@ -1839,6 +1868,7 @@ executable('systemd-ask-password',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
executable('systemd-reply-password',
'src/reply-password/reply-password.c',
@ -1849,7 +1879,7 @@ executable('systemd-reply-password',
install : true,
install_dir : rootlibexecdir)
executable('systemd-tty-ask-password-agent',
exe = executable('systemd-tty-ask-password-agent',
'src/tty-ask-password-agent/tty-ask-password-agent.c',
include_directories : includes,
link_with : [libshared,
@ -1857,22 +1887,25 @@ executable('systemd-tty-ask-password-agent',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
executable('systemd-cgls',
exe = executable('systemd-cgls',
'src/cgls/cgls.c',
include_directories : includes,
link_with : [libshared,
libsystemd_internal],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemd-cgtop',
exe = executable('systemd-cgtop',
'src/cgtop/cgtop.c',
include_directories : includes,
link_with : [libshared,
libsystemd_internal],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemd-initctl',
'src/initctl/initctl.c',
@ -1883,7 +1916,7 @@ executable('systemd-initctl',
install : true,
install_dir : rootlibexecdir)
executable('systemd-mount',
exe = executable('systemd-mount',
'src/mount/mount-tool.c',
include_directories : includes,
link_with : [libshared,
@ -1891,27 +1924,30 @@ executable('systemd-mount',
libudev],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
meson.add_install_script(meson_make_symlink,
'systemd-mount', join_paths(bindir, 'systemd-umount'))
executable('systemd-run',
exe = executable('systemd-run',
'src/run/run.c',
include_directories : includes,
link_with : [libshared,
libsystemd_internal],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('systemd-stdio-bridge',
exe = executable('systemd-stdio-bridge',
'src/stdio-bridge/stdio-bridge.c',
include_directories : includes,
link_with : [libshared,
libsystemd_internal],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
executable('busctl',
exe = executable('busctl',
'src/busctl/busctl.c',
'src/busctl/busctl-introspect.c',
'src/busctl/busctl-introspect.h',
@ -1920,19 +1956,21 @@ executable('busctl',
libsystemd_internal],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
if conf.get('ENABLE_SYSUSERS', 0) == 1
executable('systemd-sysusers',
exe = executable('systemd-sysusers',
'src/sysusers/sysusers.c',
include_directories : includes,
link_with : [libshared],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
endif
if conf.get('ENABLE_TMPFILES', 0) == 1
executable('systemd-tmpfiles',
exe = executable('systemd-tmpfiles',
'src/tmpfiles/tmpfiles.c',
include_directories : includes,
link_with : [libshared],
@ -1940,10 +1978,11 @@ if conf.get('ENABLE_TMPFILES', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
endif
if conf.get('ENABLE_HWDB', 0) == 1
executable('systemd-hwdb',
exe = executable('systemd-hwdb',
'src/hwdb/hwdb.c',
'src/libsystemd/sd-hwdb/hwdb-internal.h',
include_directories : includes,
@ -1952,6 +1991,7 @@ if conf.get('ENABLE_HWDB', 0) == 1
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
endif
if conf.get('ENABLE_QUOTACHECK', 0) == 1
@ -1964,7 +2004,7 @@ if conf.get('ENABLE_QUOTACHECK', 0) == 1
install_dir : rootlibexecdir)
endif
executable('systemd-socket-proxyd',
exe = executable('systemd-socket-proxyd',
'src/socket-proxy/socket-proxyd.c',
include_directories : includes,
link_with : [libshared,
@ -1973,8 +2013,9 @@ executable('systemd-socket-proxyd',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [exe]
executable('systemd-udevd',
exe = executable('systemd-udevd',
systemd_udevd_sources,
include_directories : includes,
link_with : [libudev_core,
@ -1988,8 +2029,9 @@ executable('systemd-udevd',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
public_programs += [exe]
executable('udevadm',
exe = executable('udevadm',
udevadm_sources,
include_directories : includes,
link_with : [libudev_core,
@ -2003,6 +2045,7 @@ executable('udevadm',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
executable('systemd-shutdown',
systemd_shutdown_sources,
@ -2047,7 +2090,7 @@ if conf.get('HAVE_KMOD', 0) == 1
mkdir_p.format(join_paths(sysconfdir, 'modules-load.d')))
endif
executable('systemd-nspawn',
exe = executable('systemd-nspawn',
systemd_nspawn_sources,
'src/core/mount-setup.c', # FIXME: use a variable?
'src/core/mount-setup.h',
@ -2064,6 +2107,7 @@ executable('systemd-nspawn',
libselinux],
install_rpath : rootlibexecdir,
install : true)
public_programs += [exe]
if conf.get('ENABLE_NETWORKD', 0) == 1
executable('systemd-networkd',
@ -2090,7 +2134,7 @@ if conf.get('ENABLE_NETWORKD', 0) == 1
install_dir : rootlibexecdir)
endif
executable('networkctl',
exe = executable('networkctl',
networkctl_sources,
include_directories : includes,
link_with : [libsystemd_network,
@ -2099,6 +2143,7 @@ executable('networkctl',
install_rpath : rootlibexecdir,
install : true,
install_dir : rootbindir)
public_programs += [exe]
############################################################
@ -2210,6 +2255,17 @@ meson.add_install_script('sh', '-c', 'touch $DESTDIR@0@'.format(prefixdir))
############################################################
meson_check_help = find_program('tools/meson-check-help.sh')
foreach exec : public_programs
name = exec.full_path().split('/')[-1]
test('check-help-' + name,
meson_check_help,
args : [exec.full_path()])
endforeach
############################################################
if git.found() and etags.found()
all_files = run_command(
git,

20
tools/meson-check-help.sh Executable file
View File

@ -0,0 +1,20 @@
#!/bin/sh -e
# output width
if "$1" --help | grep -v 'default:' | grep -E -q '.{80}.'; then
echo "$(basename "$1") --help output is too wide:"
"$1" --help | awk 'length > 80' | grep -E --color=yes '.{80}'
exit 1
fi
# no --help output to stdout
if "$1" --help 2>&1 1>/dev/null | grep .; then
echo "$(basename "$1") --help prints to stderr"
exit 2
fi
# error output to stderr
if ! "$1" --no-such-parameter 2>&1 1>/dev/null | grep -q .; then
echo "$(basename "$1") with an unknown parameter does not print to stderr"
exit 3
fi