meson: reindent all files with 8 spaces

The indentation for emacs'es meson-mode is added .dir-locals.

All files are reindented automatically, using the lasest meson-mode from git.
Indentation should now be fairly consistent.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2017-04-17 19:25:00 -04:00
parent 0a76b0e8a2
commit 37efbbd821
45 changed files with 4063 additions and 4138 deletions

View File

@ -20,4 +20,5 @@
(eval . (c-set-offset 'arglist-intro '++)) (eval . (c-set-offset 'arglist-intro '++))
(eval . (c-set-offset 'arglist-close 0)))) (eval . (c-set-offset 'arglist-close 0))))
(nxml-mode . ((nxml-child-indent . 2) (nxml-mode . ((nxml-child-indent . 2)
(fill-column . 119)))) (fill-column . 119)))
(meson-mode . ((meson-indent-basic . 8))))

View File

@ -1,17 +1,15 @@
# -*- mode: meson -*-
in_files = ''' in_files = '''
systemd.bg.catalog systemd.bg.catalog
systemd.be.catalog systemd.be.catalog
systemd.be@latin.catalog systemd.be@latin.catalog
systemd.fr.catalog systemd.fr.catalog
systemd.it.catalog systemd.it.catalog
systemd.pl.catalog systemd.pl.catalog
systemd.pt_BR.catalog systemd.pt_BR.catalog
systemd.ru.catalog systemd.ru.catalog
systemd.zh_CN.catalog systemd.zh_CN.catalog
systemd.zh_TW.catalog systemd.zh_TW.catalog
systemd.catalog systemd.catalog
'''.split() '''.split()
support_url = get_option('support-url') support_url = get_option('support-url')
@ -19,12 +17,12 @@ support_sed = 's~%SUPPORT_URL%~@0@~'.format(support_url)
build_catalog_dir = meson.current_build_dir() build_catalog_dir = meson.current_build_dir()
foreach file : in_files foreach file : in_files
custom_target( custom_target(
file, file,
input : file + '.in', input : file + '.in',
output: file, output: file,
command : [sed, support_sed, '@INPUT@'], command : [sed, support_sed, '@INPUT@'],
capture : true, capture : true,
install : true, install : true,
install_dir : catalogdir) install_dir : catalogdir)
endforeach endforeach

View File

@ -1,8 +1,6 @@
# -*- mode: meson -*-
file = configure_file( file = configure_file(
input : 'README.in', input : 'README.in',
output : 'README', output : 'README',
configuration : substs) configuration : substs)
install_data(file, install_data(file,
install_dir : sysvinit_path) install_dir : sysvinit_path)

View File

@ -1,8 +1,6 @@
# -*- mode: meson -*-
file = configure_file( file = configure_file(
input : 'README.in', input : 'README.in',
output : 'README', output : 'README',
configuration : substs) configuration : substs)
install_data(file, install_data(file,
install_dir : varlogdir) install_dir : varlogdir)

View File

@ -1,39 +1,37 @@
# -*- mode: meson -*-
hwdb_files = files(''' hwdb_files = files('''
20-pci-vendor-model.hwdb 20-pci-vendor-model.hwdb
20-pci-classes.hwdb 20-pci-classes.hwdb
20-usb-vendor-model.hwdb 20-usb-vendor-model.hwdb
20-usb-classes.hwdb 20-usb-classes.hwdb
20-sdio-vendor-model.hwdb 20-sdio-vendor-model.hwdb
20-sdio-classes.hwdb 20-sdio-classes.hwdb
20-bluetooth-vendor-product.hwdb 20-bluetooth-vendor-product.hwdb
20-acpi-vendor.hwdb 20-acpi-vendor.hwdb
20-OUI.hwdb 20-OUI.hwdb
20-net-ifname.hwdb 20-net-ifname.hwdb
60-evdev.hwdb 60-evdev.hwdb
60-keyboard.hwdb 60-keyboard.hwdb
60-sensor.hwdb 60-sensor.hwdb
70-mouse.hwdb 70-mouse.hwdb
70-pointingstick.hwdb 70-pointingstick.hwdb
70-touchpad.hwdb 70-touchpad.hwdb
'''.split()) '''.split())
if conf.get('ENABLE_HWDB', 0) == 1 if conf.get('ENABLE_HWDB', 0) == 1
install_data(hwdb_files, install_data(hwdb_files,
install_dir : udevhwdbdir) install_dir : udevhwdbdir)
meson.add_install_script('sh', '-c', meson.add_install_script('sh', '-c',
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
############################################################ ############################################################
custom_target( custom_target(
'update', 'update',
output : 'update', output : 'update',
command : [hwdb_update_sh, meson.current_source_dir()]) command : [hwdb_update_sh, meson.current_source_dir()])

View File

@ -1,5 +1,3 @@
# -*- mode: meson -*-
# This is lame, I know, but meson has no other include mechanism # This is lame, I know, but meson has no other include mechanism
subdir('rules') subdir('rules')
@ -14,123 +12,122 @@ want_man = want_man != 'false' and xsltproc.found()
want_html = want_html != 'false' and xsltproc.found() want_html = want_html != 'false' and xsltproc.found()
xsltproc_flags = [ xsltproc_flags = [
'--nonet', '--nonet',
'--xinclude', '--xinclude',
'--stringparam', 'man.output.quietly', '1', '--stringparam', 'man.output.quietly', '1',
'--stringparam', 'funcsynopsis.style', 'ansi', '--stringparam', 'funcsynopsis.style', 'ansi',
'--stringparam', 'man.authors.section.enabled', '0', '--stringparam', 'man.authors.section.enabled', '0',
'--stringparam', 'man.copyright.section.enabled', '0', '--stringparam', 'man.copyright.section.enabled', '0',
'--stringparam', 'systemd.version', '@0@'.format(meson.project_version()), '--stringparam', 'systemd.version', '@0@'.format(meson.project_version()),
'--path', '--path',
'@0@:@1@'.format(meson.current_build_dir(), meson.current_source_dir())] '@0@:@1@'.format(meson.current_build_dir(), meson.current_source_dir())]
custom_man_xsl = files('custom-man.xsl') custom_man_xsl = files('custom-man.xsl')
custom_html_xsl = files('custom-html.xsl') custom_html_xsl = files('custom-html.xsl')
xslt_cmd = [xsltproc, '-o', '@OUTPUT0@'] + xsltproc_flags
custom_entities_ent = configure_file( custom_entities_ent = configure_file(
input : 'custom-entities.ent.in', input : 'custom-entities.ent.in',
output : 'custom-entities.ent', output : 'custom-entities.ent',
configuration : conf) configuration : conf)
man_pages = [] man_pages = []
html_pages = [] html_pages = []
source_xml_files = [] source_xml_files = []
foreach tuple : manpages foreach tuple : manpages
stem = tuple[0] stem = tuple[0]
section = tuple[1] section = tuple[1]
aliases = tuple[2] aliases = tuple[2]
condition = tuple[3] condition = tuple[3]
xml = stem + '.xml' xml = stem + '.xml'
html = stem + '.html' html = stem + '.html'
man = stem + '.' + section man = stem + '.' + section
manaliases = [] manaliases = []
htmlaliases = [] htmlaliases = []
foreach alias : aliases foreach alias : aliases
manaliases += [alias + '.' + section] manaliases += [alias + '.' + section]
htmlaliases += [alias + '.html'] htmlaliases += [alias + '.html']
endforeach endforeach
mandirn = join_paths(get_option('mandir'), 'man' + section) mandirn = join_paths(get_option('mandir'), 'man' + section)
have = condition == '' or conf.get(condition, 0) == 1 if condition == '' or conf.get(condition, 0) == 1
p1 = custom_target(
man,
input : xml,
output : [man] + manaliases,
command : xslt_cmd + [custom_man_xsl, '@INPUT@'],
depend_files : custom_entities_ent,
install : want_man,
install_dir : mandirn)
man_pages += [p1]
if have p2 = custom_target(
p1 = custom_target( html,
man, input : xml,
input : xml, output : [html] + htmlaliases,
output : [man] + manaliases, command : xslt_cmd + [custom_html_xsl, '@INPUT@'],
command : [xsltproc, '-o', '@OUTPUT0@'] + xsltproc_flags + [custom_man_xsl, '@INPUT@'], depend_files : custom_entities_ent,
depend_files : custom_entities_ent, install : want_html,
install : want_man, install_dir : join_paths(docdir, 'html'))
install_dir : mandirn) html_pages += [p2]
man_pages += [p1]
p2 = custom_target( source_xml_files += files(tuple[0] + '.xml')
html, else
input : xml, message('Skipping @0@.@1@ because @2@ is false'.format(stem, section, condition))
output : [html] + htmlaliases, endif
command : [xsltproc, '-o', '@OUTPUT0@'] + xsltproc_flags + [custom_html_xsl, '@INPUT@'],
depend_files : custom_entities_ent,
install : want_html,
install_dir : join_paths(docdir, 'html'))
html_pages += [p2]
source_xml_files += files(tuple[0] + '.xml')
else
message('Skipping @0@.@1@ because @2@ is @3@'.format(stem, section, condition, have))
endif
endforeach endforeach
############################################################ ############################################################
have_lxml = run_command(xml_helper_py).returncode() == 0 have_lxml = run_command(xml_helper_py).returncode() == 0
if not have_lxml if not have_lxml
message('python-lxml not available, not making man page indices') message('python-lxml not available, not making man page indices')
endif endif
systemd_directives_xml = custom_target( systemd_directives_xml = custom_target(
'systemd.directives.xml', 'systemd.directives.xml',
input : source_xml_files, input : source_xml_files,
output : 'systemd.directives.xml', output : 'systemd.directives.xml',
command : [make_directive_index_py, '@OUTPUT@'] + source_xml_files) command : [make_directive_index_py, '@OUTPUT@'] + source_xml_files)
nonindex_xml_files = source_xml_files + [systemd_directives_xml] nonindex_xml_files = source_xml_files + [systemd_directives_xml]
systemd_index_xml = custom_target( systemd_index_xml = custom_target(
'systemd.index.xml', 'systemd.index.xml',
input : nonindex_xml_files, input : nonindex_xml_files,
output : 'systemd.index.xml', output : 'systemd.index.xml',
command : [make_man_index_py, '@OUTPUT@'] + nonindex_xml_files) command : [make_man_index_py, '@OUTPUT@'] + nonindex_xml_files)
foreach tuple : [['systemd.directives', '7', systemd_directives_xml], foreach tuple : [['systemd.directives', '7', systemd_directives_xml],
['systemd.index', '7', systemd_index_xml]] ['systemd.index', '7', systemd_index_xml]]
stem = tuple[0] stem = tuple[0]
section = tuple[1] section = tuple[1]
xml = tuple[2] xml = tuple[2]
html = stem + '.html' html = stem + '.html'
man = stem + '.' + section man = stem + '.' + section
mandirn = join_paths(get_option('mandir'), 'man' + section) mandirn = join_paths(get_option('mandir'), 'man' + section)
p1 = custom_target( p1 = custom_target(
man, man,
input : xml, input : xml,
output : man, output : man,
command : [xsltproc, '-o', '@OUTPUT0@'] + xsltproc_flags + [custom_man_xsl, '@INPUT@'], command : xslt_cmd + [custom_man_xsl, '@INPUT@'],
install : want_man and have_lxml, install : want_man and have_lxml,
install_dir : mandirn) install_dir : mandirn)
man_pages += [p1] man_pages += [p1]
p2 = custom_target( p2 = custom_target(
html, html,
input : xml, input : xml,
output : html, output : html,
command : [xsltproc, '-o', '@OUTPUT0@'] + xsltproc_flags + [custom_html_xsl, '@INPUT@'], command : xslt_cmd + [custom_html_xsl, '@INPUT@'],
install : want_html and have_lxml, install : want_html and have_lxml,
install_dir : join_paths(docdir, 'html')) install_dir : join_paths(docdir, 'html'))
html_pages += [p2] html_pages += [p2]
endforeach endforeach
man = custom_target('man', man = custom_target('man',

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,11 @@
# -*- mode: meson -*-
if conf.get('ENABLE_NETWORKD', 0) == 1 if conf.get('ENABLE_NETWORKD', 0) == 1
install_data('80-container-host0.network', install_data('80-container-host0.network',
'80-container-ve.network', '80-container-ve.network',
'80-container-vz.network', '80-container-vz.network',
install_dir : networkdir) install_dir : networkdir)
meson.add_install_script('sh', '-c', meson.add_install_script('sh', '-c',
mkdir_p.format(join_paths(sysconfdir, 'systemd/network'))) mkdir_p.format(join_paths(sysconfdir, 'systemd/network')))
endif endif
install_data('99-default.link', install_data('99-default.link',

View File

@ -1,5 +1,3 @@
# -*- mode: meson -*-
i18n = import('i18n') i18n = import('i18n')
i18n.gettext(meson.project_name()) i18n.gettext(meson.project_name())

View File

@ -1,40 +1,38 @@
# -*- mode: meson -*-
rules = files(''' rules = files('''
60-block.rules 60-block.rules
60-cdrom_id.rules 60-cdrom_id.rules
60-drm.rules 60-drm.rules
60-evdev.rules 60-evdev.rules
60-persistent-alsa.rules 60-persistent-alsa.rules
60-persistent-input.rules 60-persistent-input.rules
60-persistent-storage.rules 60-persistent-storage.rules
60-persistent-storage-tape.rules 60-persistent-storage-tape.rules
60-persistent-v4l.rules 60-persistent-v4l.rules
60-sensor.rules 60-sensor.rules
60-serial.rules 60-serial.rules
64-btrfs.rules 64-btrfs.rules
70-mouse.rules 70-mouse.rules
70-touchpad.rules 70-touchpad.rules
75-net-description.rules 75-net-description.rules
75-probe_mtd.rules 75-probe_mtd.rules
78-sound-card.rules 78-sound-card.rules
80-drivers.rules 80-drivers.rules
80-net-setup-link.rules 80-net-setup-link.rules
'''.split()) '''.split())
install_data(rules, install_data(rules,
install_dir : udevrulesdir) install_dir : udevrulesdir)
rules_in = ''' rules_in = '''
50-udev-default.rules 50-udev-default.rules
99-systemd.rules 99-systemd.rules
'''.split() '''.split()
foreach file : rules_in foreach file : rules_in
gen = configure_file( gen = configure_file(
input : file + '.in', input : file + '.in',
output : file, output : file,
configuration : substs) configuration : substs)
install_data(gen, install_data(gen,
install_dir : udevrulesdir) install_dir : udevrulesdir)
endforeach endforeach

View File

@ -1,52 +1,50 @@
# -*- mode: meson -*-
bashcompletiondir = get_option('bashcompletiondir') bashcompletiondir = get_option('bashcompletiondir')
if bashcompletiondir == '' if bashcompletiondir == ''
bash_completion = dependency('bash-completion', required : false) bash_completion = dependency('bash-completion', required : false)
if bash_completion.found() if bash_completion.found()
bashcompletiondir = bash_completion.get_pkgconfig_variable('completionsdir') bashcompletiondir = bash_completion.get_pkgconfig_variable('completionsdir')
else else
bashcompletiondir = join_paths(datadir, 'bash-completion/completions') bashcompletiondir = join_paths(datadir, 'bash-completion/completions')
endif endif
message('bash completions: @0@'.format(bashcompletiondir)) message('bash completions: @0@'.format(bashcompletiondir))
endif endif
if bashcompletiondir != 'no' if bashcompletiondir != 'no'
bash_systemctl = configure_file( bash_systemctl = configure_file(
input : 'systemctl.in', input : 'systemctl.in',
output : 'systemctl', output : 'systemctl',
configuration : substs) configuration : substs)
items = [['busctl', ''], items = [['busctl', ''],
['journalctl', ''], ['journalctl', ''],
['systemd-analyze', ''], ['systemd-analyze', ''],
['systemd-cat', ''], ['systemd-cat', ''],
['systemd-cgls', ''], ['systemd-cgls', ''],
['systemd-cgtop', ''], ['systemd-cgtop', ''],
['systemd-delta', ''], ['systemd-delta', ''],
['systemd-detect-virt', ''], ['systemd-detect-virt', ''],
['systemd-nspawn', ''], ['systemd-nspawn', ''],
['systemd-path', ''], ['systemd-path', ''],
['systemd-run', ''], ['systemd-run', ''],
['udevadm', ''], ['udevadm', ''],
['kernel-install', ''], ['kernel-install', ''],
[bash_systemctl, ''], [bash_systemctl, ''],
['bootctl', 'ENABLE_EFI'], ['bootctl', 'ENABLE_EFI'],
['coredumpctl', 'ENABLE_COREDUMP'], ['coredumpctl', 'ENABLE_COREDUMP'],
['hostnamectl', 'ENABLE_HOSTNAMED'], ['hostnamectl', 'ENABLE_HOSTNAMED'],
['localectl', 'ENABLE_LOCALED'], ['localectl', 'ENABLE_LOCALED'],
['loginctl', 'ENABLE_LOGIND'], ['loginctl', 'ENABLE_LOGIND'],
['machinectl', 'ENABLE_MACHINED'], ['machinectl', 'ENABLE_MACHINED'],
['networkctl', 'ENABLE_NETWORKD'], ['networkctl', 'ENABLE_NETWORKD'],
['systemd-resolve', 'ENABLE_RESOLVED'], ['systemd-resolve', 'ENABLE_RESOLVED'],
['timedatectl', 'ENABLE_TIMEDATED'], ['timedatectl', 'ENABLE_TIMEDATED'],
] ]
foreach item : items foreach item : items
if item[1] == '' or conf.get(item[1], 0) == 1 if item[1] == '' or conf.get(item[1], 0) == 1
install_data(item[0], install_data(item[0],
install_dir : bashcompletiondir) install_dir : bashcompletiondir)
endif endif
endforeach endforeach
endif endif

View File

@ -1,49 +1,47 @@
# -*- mode: meson -*-
zshcompletiondir = get_option('zshcompletiondir') zshcompletiondir = get_option('zshcompletiondir')
if zshcompletiondir == '' if zshcompletiondir == ''
zshcompletiondir = join_paths(datadir, 'zsh/site-functions') zshcompletiondir = join_paths(datadir, 'zsh/site-functions')
message('zsh completions: @0@'.format(zshcompletiondir)) message('zsh completions: @0@'.format(zshcompletiondir))
endif endif
if zshcompletiondir != 'no' if zshcompletiondir != 'no'
zsh_systemctl = configure_file( zsh_systemctl = configure_file(
input : '_systemctl.in', input : '_systemctl.in',
output : '_systemctl', output : '_systemctl',
configuration : substs) configuration : substs)
items = [['_busctl', ''], items = [['_busctl', ''],
['_journalctl', ''], ['_journalctl', ''],
['_systemd-analyze', ''], ['_systemd-analyze', ''],
['_systemd-delta', ''], ['_systemd-delta', ''],
['_systemd-nspawn', ''], ['_systemd-nspawn', ''],
['_systemd', ''], ['_systemd', ''],
['_systemd-run', ''], ['_systemd-run', ''],
['_udevadm', ''], ['_udevadm', ''],
['_kernel-install', ''], ['_kernel-install', ''],
['_sd_hosts_or_user_at_host', ''], ['_sd_hosts_or_user_at_host', ''],
['_sd_outputmodes', ''], ['_sd_outputmodes', ''],
['_sd_unit_files', ''], ['_sd_unit_files', ''],
['_sd_machines', ''], ['_sd_machines', ''],
[zsh_systemctl, ''], [zsh_systemctl, ''],
['_bootctl', 'ENABLE_EFI'], ['_bootctl', 'ENABLE_EFI'],
['_coredumpctl', 'ENABLE_COREDUMP'], ['_coredumpctl', 'ENABLE_COREDUMP'],
['_hostnamectl', 'ENABLE_HOSTNAMED'], ['_hostnamectl', 'ENABLE_HOSTNAMED'],
['_localectl', 'ENABLE_LOCALED'], ['_localectl', 'ENABLE_LOCALED'],
['_loginctl', 'ENABLE_LOGIND'], ['_loginctl', 'ENABLE_LOGIND'],
['_machinectl', 'ENABLE_MACHINED'], ['_machinectl', 'ENABLE_MACHINED'],
['_networkctl', 'ENABLE_NETWORKD'], ['_networkctl', 'ENABLE_NETWORKD'],
['_systemd-inhibit', 'ENABLE_LOGIND'], ['_systemd-inhibit', 'ENABLE_LOGIND'],
['_systemd-resolve', 'ENABLE_RESOLVED'], ['_systemd-resolve', 'ENABLE_RESOLVED'],
['_systemd-tmpfiles', 'ENABLE_TMPFILES'], ['_systemd-tmpfiles', 'ENABLE_TMPFILES'],
['_timedatectl', 'ENABLE_TIMEDATED'], ['_timedatectl', 'ENABLE_TIMEDATED'],
] ]
foreach item : items foreach item : items
if item[1] == '' or conf.get(item[1], 0) == 1 if item[1] == '' or conf.get(item[1], 0) == 1
install_data(item[0], install_data(item[0],
install_dir : zshcompletiondir) install_dir : zshcompletiondir)
endif endif
endforeach endforeach
endif endif

View File

@ -1,7 +1,5 @@
# -*- mode: meson -*-
systemd_analyze_sources = files(''' systemd_analyze_sources = files('''
analyze.c analyze.c
analyze-verify.c analyze-verify.c
analyze-verify.h analyze-verify.h
'''.split()) '''.split())

View File

@ -1,201 +1,199 @@
# -*- mode: meson -*-
basic_sources_plain = files(''' basic_sources_plain = files('''
af-list.c af-list.c
af-list.h af-list.h
alloc-util.c alloc-util.c
alloc-util.h alloc-util.h
architecture.c architecture.c
architecture.h architecture.h
arphrd-list.c arphrd-list.c
arphrd-list.h arphrd-list.h
async.c async.c
async.h async.h
audit-util.c audit-util.c
audit-util.h audit-util.h
barrier.c barrier.c
barrier.h barrier.h
bitmap.c bitmap.c
bitmap.h bitmap.h
blkid-util.h blkid-util.h
btrfs-ctree.h btrfs-ctree.h
btrfs-util.c btrfs-util.c
btrfs-util.h btrfs-util.h
build.h build.h
bus-label.c bus-label.c
bus-label.h bus-label.h
calendarspec.c calendarspec.c
calendarspec.h calendarspec.h
capability-util.c capability-util.c
capability-util.h capability-util.h
cap-list.c cap-list.c
cap-list.h cap-list.h
cgroup-util.c cgroup-util.c
cgroup-util.h cgroup-util.h
chattr-util.c chattr-util.c
chattr-util.h chattr-util.h
clock-util.c clock-util.c
clock-util.h clock-util.h
conf-files.c conf-files.c
conf-files.h conf-files.h
copy.c copy.c
copy.h copy.h
cpu-set-util.c cpu-set-util.c
cpu-set-util.h cpu-set-util.h
def.h def.h
device-nodes.c device-nodes.c
device-nodes.h device-nodes.h
dirent-util.c dirent-util.c
dirent-util.h dirent-util.h
env-util.c env-util.c
env-util.h env-util.h
errno-list.c errno-list.c
errno-list.h errno-list.h
escape.c escape.c
escape.h escape.h
ether-addr-util.c ether-addr-util.c
ether-addr-util.h ether-addr-util.h
exec-util.c exec-util.c
exec-util.h exec-util.h
exit-status.c exit-status.c
exit-status.h exit-status.h
extract-word.c extract-word.c
extract-word.h extract-word.h
fd-util.c fd-util.c
fd-util.h fd-util.h
fileio.c fileio.c
fileio.h fileio.h
fileio-label.c fileio-label.c
fileio-label.h fileio-label.h
format-util.h format-util.h
fs-util.c fs-util.c
fs-util.h fs-util.h
glob-util.c glob-util.c
glob-util.h glob-util.h
gunicode.c gunicode.c
gunicode.h gunicode.h
hash-funcs.c hash-funcs.c
hash-funcs.h hash-funcs.h
hashmap.c hashmap.c
hashmap.h hashmap.h
hexdecoct.c hexdecoct.c
hexdecoct.h hexdecoct.h
hostname-util.c hostname-util.c
hostname-util.h hostname-util.h
in-addr-util.c in-addr-util.c
in-addr-util.h in-addr-util.h
ioprio.h ioprio.h
io-util.c io-util.c
io-util.h io-util.h
journal-importer.c journal-importer.c
journal-importer.h journal-importer.h
khash.c khash.c
khash.h khash.h
label.c label.c
label.h label.h
list.h list.h
locale-util.c locale-util.c
locale-util.h locale-util.h
lockfile-util.c lockfile-util.c
lockfile-util.h lockfile-util.h
log.c log.c
log.h log.h
login-util.c login-util.c
login-util.h login-util.h
macro.h macro.h
memfd-util.c memfd-util.c
memfd-util.h memfd-util.h
mempool.c mempool.c
mempool.h mempool.h
missing_syscall.h missing_syscall.h
mkdir.c mkdir.c
mkdir.h mkdir.h
mkdir-label.c mkdir-label.c
mount-util.c mount-util.c
mount-util.h mount-util.h
MurmurHash2.c MurmurHash2.c
MurmurHash2.h MurmurHash2.h
nss-util.h nss-util.h
ordered-set.c ordered-set.c
ordered-set.h ordered-set.h
parse-util.c parse-util.c
parse-util.h parse-util.h
path-util.c path-util.c
path-util.h path-util.h
prioq.c prioq.c
prioq.h prioq.h
proc-cmdline.c proc-cmdline.c
proc-cmdline.h proc-cmdline.h
process-util.c process-util.c
process-util.h process-util.h
random-util.c random-util.c
random-util.h random-util.h
ratelimit.c ratelimit.c
ratelimit.h ratelimit.h
raw-clone.h raw-clone.h
refcnt.h refcnt.h
replace-var.c replace-var.c
replace-var.h replace-var.h
rlimit-util.c rlimit-util.c
rlimit-util.h rlimit-util.h
rm-rf.c rm-rf.c
rm-rf.h rm-rf.h
securebits.h securebits.h
selinux-util.c selinux-util.c
selinux-util.h selinux-util.h
set.h set.h
sigbus.c sigbus.c
sigbus.h sigbus.h
signal-util.c signal-util.c
signal-util.h signal-util.h
siphash24.c siphash24.c
siphash24.h siphash24.h
smack-util.c smack-util.c
smack-util.h smack-util.h
socket-label.c socket-label.c
socket-util.c socket-util.c
socket-util.h socket-util.h
sparse-endian.h sparse-endian.h
special.h special.h
stat-util.c stat-util.c
stat-util.h stat-util.h
stdio-util.h stdio-util.h
strbuf.c strbuf.c
strbuf.h strbuf.h
string-table.c string-table.c
string-table.h string-table.h
string-util.c string-util.c
string-util.h string-util.h
strv.c strv.c
strv.h strv.h
strxcpyx.c strxcpyx.c
strxcpyx.h strxcpyx.h
syslog-util.c syslog-util.c
syslog-util.h syslog-util.h
terminal-util.c terminal-util.c
terminal-util.h terminal-util.h
time-util.c time-util.c
time-util.h time-util.h
umask-util.h umask-util.h
unaligned.h unaligned.h
unit-name.c unit-name.c
unit-name.h unit-name.h
user-util.c user-util.c
user-util.h user-util.h
utf8.c utf8.c
utf8.h utf8.h
util.c util.c
util.h util.h
verbs.c verbs.c
verbs.h verbs.h
virt.c virt.c
virt.h virt.h
web-util.c web-util.c
web-util.h web-util.h
xattr-util.c xattr-util.c
xattr-util.h xattr-util.h
xml.c xml.c
xml.h xml.h
'''.split()) '''.split())
missing_h = files('missing.h') missing_h = files('missing.h')
@ -204,31 +202,31 @@ generate_gperfs = find_program('generate-gperfs.py')
generate_af_list = find_program('generate-af-list.sh') generate_af_list = find_program('generate-af-list.sh')
af_list_txt = custom_target( af_list_txt = custom_target(
'af-list.txt', 'af-list.txt',
output : 'af-list.txt', output : 'af-list.txt',
command : [generate_af_list, cpp], command : [generate_af_list, cpp],
capture : true) capture : true)
generate_arphrd_list = find_program('generate-arphrd-list.sh') generate_arphrd_list = find_program('generate-arphrd-list.sh')
arphrd_list_txt = custom_target( arphrd_list_txt = custom_target(
'arphrd-list.txt', 'arphrd-list.txt',
output : 'arphrd-list.txt', output : 'arphrd-list.txt',
command : [generate_arphrd_list, cpp], command : [generate_arphrd_list, cpp],
capture : true) capture : true)
generate_cap_list = find_program('generate-cap-list.sh') generate_cap_list = find_program('generate-cap-list.sh')
cap_list_txt = custom_target( cap_list_txt = custom_target(
'cap-list.txt', 'cap-list.txt',
output : 'cap-list.txt', output : 'cap-list.txt',
command : [generate_cap_list, cpp, config_h, missing_h], command : [generate_cap_list, cpp, config_h, missing_h],
capture : true) capture : true)
generate_errno_list = find_program('generate-errno-list.sh') generate_errno_list = find_program('generate-errno-list.sh')
errno_list_txt = custom_target( errno_list_txt = custom_target(
'errno-list.txt', 'errno-list.txt',
output : 'errno-list.txt', output : 'errno-list.txt',
command : [generate_errno_list, cpp], command : [generate_errno_list, cpp],
capture : true) capture : true)
generated_gperf_headers = [] generated_gperf_headers = []
foreach item : [['af', af_list_txt, 'af', ''], foreach item : [['af', af_list_txt, 'af', ''],
@ -236,48 +234,48 @@ foreach item : [['af', af_list_txt, 'af', ''],
['cap', cap_list_txt, 'capability', ''], ['cap', cap_list_txt, 'capability', ''],
['errno', errno_list_txt, 'errno', '']] ['errno', errno_list_txt, 'errno', '']]
fname = '@0@-from-name.gperf'.format(item[0]) fname = '@0@-from-name.gperf'.format(item[0])
gperf_file = custom_target( gperf_file = custom_target(
fname, fname,
input : item[1], input : item[1],
output : fname, output : fname,
command : [generate_gperfs, item[2], item[3], '@INPUT@'], command : [generate_gperfs, item[2], item[3], '@INPUT@'],
capture : true) capture : true)
fname = '@0@-from-name.h'.format(item[0]) fname = '@0@-from-name.h'.format(item[0])
target1 = custom_target( target1 = custom_target(
fname, fname,
input : gperf_file, input : gperf_file,
output : fname, output : fname,
command : [gperf, command : [gperf,
'-L', 'ANSI-C', '-t', '--ignore-case', '-L', 'ANSI-C', '-t', '--ignore-case',
'-N', 'lookup_@0@'.format(item[2]), '-N', 'lookup_@0@'.format(item[2]),
'-H', 'hash_@0@_name'.format(item[2]), '-H', 'hash_@0@_name'.format(item[2]),
'-p', '-C', '-p', '-C',
'@INPUT@'], '@INPUT@'],
capture : true) capture : true)
fname = '@0@-to-name.h'.format(item[0]) fname = '@0@-to-name.h'.format(item[0])
awkscript = '@0@-to-name.awk'.format(item[0]) awkscript = '@0@-to-name.awk'.format(item[0])
target2 = custom_target( target2 = custom_target(
fname, fname,
input : [awkscript, item[1]], input : [awkscript, item[1]],
output : fname, output : fname,
command : [awk, '-f', '@INPUT0@', '@INPUT1@'], command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
capture : true) capture : true)
generated_gperf_headers += [target1, target2] generated_gperf_headers += [target1, target2]
endforeach endforeach
basic_sources = basic_sources_plain + [missing_h] + generated_gperf_headers basic_sources = basic_sources_plain + [missing_h] + generated_gperf_headers
libbasic = static_library( libbasic = static_library(
'basic', 'basic',
basic_sources, basic_sources,
include_directories : includes, include_directories : includes,
dependencies : [threads, dependencies : [threads,
libcap, libcap,
libblkid, libblkid,
libselinux, libselinux,
], ],
install : false) install : false)

View File

@ -1,191 +1,192 @@
efi_headers = files(''' efi_headers = files('''
console.h console.h
disk.h disk.h
graphics.h graphics.h
linux.h linux.h
measure.h measure.h
pefile.h pefile.h
splash.h splash.h
util.h util.h
'''.split()) '''.split())
common_sources = ''' common_sources = '''
disk.c disk.c
graphics.c graphics.c
measure.c measure.c
pefile.c pefile.c
util.c util.c
'''.split() '''.split()
systemd_boot_sources = ''' systemd_boot_sources = '''
boot.c boot.c
console.c console.c
'''.split() '''.split()
stub_sources = ''' stub_sources = '''
linux.c linux.c
splash.c splash.c
stub.c stub.c
'''.split() '''.split()
if conf.get('ENABLE_EFI', 0) == 1 and get_option('gnu-efi') != 'false' if conf.get('ENABLE_EFI', 0) == 1 and get_option('gnu-efi') != 'false'
efi_cc = get_option('efi-cc') efi_cc = get_option('efi-cc')
efi_ld = get_option('efi-ld') efi_ld = get_option('efi-ld')
efi_incdir = get_option('efi-includedir') efi_incdir = get_option('efi-includedir')
efibind_h = '@0@/@1@/efibind.h'.format(efi_incdir, efi_arch) efibind_h = '@0@/@1@/efibind.h'.format(efi_incdir, efi_arch)
have_header = cc.has_header(efibind_h) have_header = cc.has_header(efibind_h)
if have_header and EFI_MACHINE_TYPE_NAME == '' if have_header and EFI_MACHINE_TYPE_NAME == ''
error('gnu-efi is available, but EFI_MACHINE_TYPE_NAME is unknown') error('gnu-efi is available, but EFI_MACHINE_TYPE_NAME is unknown')
endif endif
efi_libdir = get_option('efi-libdir') efi_libdir = get_option('efi-libdir')
if efi_libdir == '' if efi_libdir == ''
cmd = 'cd /usr/lib/$(@0@ -print-multi-os-directory) && pwd'.format(efi_cc) cmd = 'cd /usr/lib/$(@0@ -print-multi-os-directory) && pwd'.format(efi_cc)
ret = run_command('sh', '-c', cmd) ret = run_command('sh', '-c', cmd)
if ret.returncode() == 0 if ret.returncode() == 0
efi_libdir = ret.stdout().strip() efi_libdir = ret.stdout().strip()
endif endif
endif endif
have_gnu_efi = have_header and efi_libdir != '' have_gnu_efi = have_header and efi_libdir != ''
else else
have_gnu_efi = false have_gnu_efi = false
endif endif
if get_option('gnu-efi') == 'true' and not have_gnu_efi if get_option('gnu-efi') == 'true' and not have_gnu_efi
error('gnu-efi support requested, but headers were not found') error('gnu-efi support requested, but headers were not found')
endif endif
if have_gnu_efi if have_gnu_efi
efi_conf = configuration_data() efi_conf = configuration_data()
efi_conf.set_quoted('PACKAGE_VERSION', meson.project_version()) efi_conf.set_quoted('PACKAGE_VERSION', meson.project_version())
efi_conf.set_quoted('EFI_MACHINE_TYPE_NAME', EFI_MACHINE_TYPE_NAME) efi_conf.set_quoted('EFI_MACHINE_TYPE_NAME', EFI_MACHINE_TYPE_NAME)
efi_config_h = configure_file( efi_config_h = configure_file(
output : 'efi_config.h', output : 'efi_config.h',
configuration : efi_conf) configuration : efi_conf)
objcopy = find_program('objcopy') objcopy = find_program('objcopy')
efi_ldsdir = get_option('efi-ldsdir') efi_ldsdir = get_option('efi-ldsdir')
if efi_ldsdir == '' if efi_ldsdir == ''
efi_ldsdir = join_paths(efi_libdir, 'gnuefi') efi_ldsdir = join_paths(efi_libdir, 'gnuefi')
endif endif
message('efi-libdir: "@0@"'.format(efi_libdir)) message('efi-libdir: "@0@"'.format(efi_libdir))
message('efi-ldsdir: "@0@"'.format(efi_ldsdir)) message('efi-ldsdir: "@0@"'.format(efi_ldsdir))
message('efi-includedir: "@0@"'.format(efi_incdir)) message('efi-includedir: "@0@"'.format(efi_incdir))
compile_args = ['-Wall', compile_args = ['-Wall',
'-Wextra', '-Wextra',
'-std=gnu90', '-std=gnu90',
'-nostdinc', '-nostdinc',
'-ggdb', '-O0', '-ggdb', '-O0',
'-fpic', '-fpic',
'-fshort-wchar', '-fshort-wchar',
'-ffreestanding', '-ffreestanding',
'-fno-strict-aliasing', '-fno-strict-aliasing',
'-fno-stack-protector', '-fno-stack-protector',
'-Wsign-compare', '-Wsign-compare',
'-Wno-missing-field-initializers', '-Wno-missing-field-initializers',
'-isystem', efi_incdir, '-isystem', efi_incdir,
'-isystem', join_paths(efi_incdir, efi_arch), '-isystem', join_paths(efi_incdir, efi_arch),
'-include', efi_config_h] '-include', efi_config_h]
if efi_arch == 'x86_64' if efi_arch == 'x86_64'
compile_args += ['-mno-red-zone', compile_args += ['-mno-red-zone',
'-mno-sse', '-mno-sse',
'-mno-mmx', '-mno-mmx',
'-DEFI_FUNCTION_WRAPPER', '-DEFI_FUNCTION_WRAPPER',
'-DGNU_EFI_USE_MS_ABI'] '-DGNU_EFI_USE_MS_ABI']
elif efi_arch == 'ia32' elif efi_arch == 'ia32'
compile_args += ['-mno-sse', compile_args += ['-mno-sse',
'-mno-mmx'] '-mno-mmx']
endif endif
efi_ldflags = ['-T', efi_ldflags = ['-T',
'@0@/elf_@1@_efi.lds'.format(efi_ldsdir, efi_arch), '@0@/elf_@1@_efi.lds'.format(efi_ldsdir, efi_arch),
'-shared', '-shared',
'-Bsymbolic', '-Bsymbolic',
'-nostdlib', '-nostdlib',
'-znocombreloc', '-znocombreloc',
'-L', efi_libdir, '-L', efi_libdir,
'@0@/crt0-efi-@1@.o'.format(efi_ldsdir, efi_arch)] '@0@/crt0-efi-@1@.o'.format(efi_ldsdir, efi_arch)]
if efi_arch == 'aarch64' or efi_arch == 'arm' if efi_arch == 'aarch64' or efi_arch == 'arm'
# Aarch64 and ARM32 don't have an EFI capable objcopy. Use 'binary' # Aarch64 and ARM32 don't have an EFI capable objcopy. Use 'binary'
# instead, and add required symbols manually. # instead, and add required symbols manually.
efi_ldflags += ['--defsym=EFI_SUBSYSTEM=0xa'] efi_ldflags += ['--defsym=EFI_SUBSYSTEM=0xa']
efi_format = ['-O', 'binary'] efi_format = ['-O', 'binary']
else else
efi_format = ['--target=efi-app-@0@'.format(efi_arch)] efi_format = ['--target=efi-app-@0@'.format(efi_arch)]
endif endif
systemd_boot_objects = [] systemd_boot_objects = []
stub_objects = [] stub_objects = []
foreach file : common_sources + systemd_boot_sources + stub_sources foreach file : common_sources + systemd_boot_sources + stub_sources
o_file = custom_target(file + '.o', o_file = custom_target(file + '.o',
input : file, input : file,
output : file + '.o', output : file + '.o',
command : [efi_cc, '-c', '@INPUT@', '-o', '@OUTPUT@'] command : [efi_cc, '-c', '@INPUT@', '-o', '@OUTPUT@']
+ compile_args, + compile_args,
depend_files : efi_headers) depend_files : efi_headers)
if (common_sources + systemd_boot_sources).contains(file) if (common_sources + systemd_boot_sources).contains(file)
systemd_boot_objects += [o_file] systemd_boot_objects += [o_file]
endif endif
if (common_sources + stub_sources).contains(file) if (common_sources + stub_sources).contains(file)
stub_objects += [o_file] stub_objects += [o_file]
endif endif
endforeach endforeach
libgcc_file_name = run_command(efi_cc, '-print-libgcc-file-name').stdout().strip() libgcc_file_name = run_command(efi_cc, '-print-libgcc-file-name').stdout().strip()
systemd_boot_efi_name = 'systemd-boot@0@.efi'.format(EFI_MACHINE_TYPE_NAME) systemd_boot_efi_name = 'systemd-boot@0@.efi'.format(EFI_MACHINE_TYPE_NAME)
stub_efi_name = 'linux@0@.efi.stub'.format(EFI_MACHINE_TYPE_NAME) stub_efi_name = 'linux@0@.efi.stub'.format(EFI_MACHINE_TYPE_NAME)
no_undefined_symbols = find_program('no-undefined-symbols.sh') no_undefined_symbols = find_program('no-undefined-symbols.sh')
foreach tuple : [['systemd_boot.so', systemd_boot_efi_name, systemd_boot_objects], foreach tuple : [['systemd_boot.so', systemd_boot_efi_name, systemd_boot_objects],
['stub.so', stub_efi_name, stub_objects]] ['stub.so', stub_efi_name, stub_objects]]
so = custom_target( so = custom_target(
tuple[0], tuple[0],
input : tuple[2], input : tuple[2],
output : tuple[0], output : tuple[0],
command : [efi_ld, '-o', '@OUTPUT@'] + command : [efi_ld, '-o', '@OUTPUT@'] +
efi_ldflags + tuple[2] + efi_ldflags + tuple[2] +
['-lefi', '-lgnuefi', libgcc_file_name]) ['-lefi', '-lgnuefi', libgcc_file_name])
test('no-undefined-symbols-' + tuple[0], test('no-undefined-symbols-' + tuple[0],
no_undefined_symbols, no_undefined_symbols,
args : [so]) args : [so])
stub = custom_target( stub = custom_target(
tuple[1], tuple[1],
input : so, input : so,
output : tuple[1], output : tuple[1],
command : [objcopy, command : [objcopy,
'-j', '.text', '-j', '.text',
'-j', '.sdata', '-j', '.sdata',
'-j', '.data', '-j', '.data',
'-j', '.dynamic', '-j', '.dynamic',
'-j', '.dynsym', '-j', '.dynsym',
'-j', '.rel', '-j', '.rel',
'-j', '.rela', '-j', '.rela',
'-j', '.reloc'] '-j', '.reloc']
+ efi_format + + efi_format +
['@INPUT@', '@OUTPUT@'], ['@INPUT@', '@OUTPUT@'],
install : true, install : true,
install_dir : bootlibdir) install_dir : bootlibdir)
set_variable(tuple[0].underscorify(), so) set_variable(tuple[0].underscorify(), so)
set_variable(tuple[0].underscorify() + '_stub', stub) set_variable(tuple[0].underscorify() + '_stub', stub)
endforeach endforeach
endif endif
############################################################ ############################################################
if have_gnu_efi if have_gnu_efi
test_efi_disk_img = custom_target( test_efi_disk_img = custom_target(
'test-efi-disk.img', 'test-efi-disk.img',
input : [systemd_boot_so, stub_so_stub], input : [systemd_boot_so, stub_so_stub],
output : 'test-efi-disk.img', output : 'test-efi-disk.img',
command : [test_efi_create_disk_sh, '@OUTPUT@', '@INPUT0@', '@INPUT1@', splash_bmp]) command : [test_efi_create_disk_sh, '@OUTPUT@',
'@INPUT0@', '@INPUT1@', splash_bmp])
endif endif

View File

@ -1,191 +1,189 @@
# -*- mode: meson -*-
libcore_la_sources = ''' libcore_la_sources = '''
unit.c unit.c
unit.h unit.h
unit-printf.c unit-printf.c
unit-printf.h unit-printf.h
job.c job.c
job.h job.h
manager.c manager.c
manager.h manager.h
transaction.c transaction.c
transaction.h transaction.h
load-fragment.c load-fragment.c
load-fragment.h load-fragment.h
service.c service.c
service.h service.h
socket.c socket.c
socket.h socket.h
busname.c busname.c
busname.h busname.h
bus-policy.c bus-policy.c
bus-policy.h bus-policy.h
target.c target.c
target.h target.h
device.c device.c
device.h device.h
mount.c mount.c
mount.h mount.h
automount.c automount.c
automount.h automount.h
swap.c swap.c
swap.h swap.h
timer.c timer.c
timer.h timer.h
path.c path.c
path.h path.h
slice.c slice.c
slice.h slice.h
scope.c scope.c
scope.h scope.h
load-dropin.c load-dropin.c
load-dropin.h load-dropin.h
execute.c execute.c
execute.h execute.h
dynamic-user.c dynamic-user.c
dynamic-user.h dynamic-user.h
kill.c kill.c
kill.h kill.h
dbus.c dbus.c
dbus.h dbus.h
dbus-manager.c dbus-manager.c
dbus-manager.h dbus-manager.h
dbus-unit.c dbus-unit.c
dbus-unit.h dbus-unit.h
dbus-job.c dbus-job.c
dbus-job.h dbus-job.h
dbus-service.c dbus-service.c
dbus-service.h dbus-service.h
dbus-socket.c dbus-socket.c
dbus-socket.h dbus-socket.h
dbus-busname.c dbus-busname.c
dbus-busname.h dbus-busname.h
dbus-target.c dbus-target.c
dbus-target.h dbus-target.h
dbus-device.c dbus-device.c
dbus-device.h dbus-device.h
dbus-mount.c dbus-mount.c
dbus-mount.h dbus-mount.h
dbus-automount.c dbus-automount.c
dbus-automount.h dbus-automount.h
dbus-swap.c dbus-swap.c
dbus-swap.h dbus-swap.h
dbus-timer.c dbus-timer.c
dbus-timer.h dbus-timer.h
dbus-path.c dbus-path.c
dbus-path.h dbus-path.h
dbus-slice.c dbus-slice.c
dbus-slice.h dbus-slice.h
dbus-scope.c dbus-scope.c
dbus-scope.h dbus-scope.h
dbus-execute.c dbus-execute.c
dbus-execute.h dbus-execute.h
dbus-kill.c dbus-kill.c
dbus-kill.h dbus-kill.h
dbus-cgroup.c dbus-cgroup.c
dbus-cgroup.h dbus-cgroup.h
cgroup.c cgroup.c
cgroup.h cgroup.h
selinux-access.c selinux-access.c
selinux-access.h selinux-access.h
selinux-setup.c selinux-setup.c
selinux-setup.h selinux-setup.h
smack-setup.c smack-setup.c
smack-setup.h smack-setup.h
ima-setup.c ima-setup.c
ima-setup.h ima-setup.h
locale-setup.h locale-setup.h
locale-setup.c locale-setup.c
hostname-setup.c hostname-setup.c
hostname-setup.h hostname-setup.h
machine-id-setup.c machine-id-setup.c
machine-id-setup.h machine-id-setup.h
mount-setup.c mount-setup.c
mount-setup.h mount-setup.h
kmod-setup.c kmod-setup.c
kmod-setup.h kmod-setup.h
loopback-setup.h loopback-setup.h
loopback-setup.c loopback-setup.c
namespace.c namespace.c
namespace.h namespace.h
killall.h killall.h
killall.c killall.c
audit-fd.c audit-fd.c
audit-fd.h audit-fd.h
show-status.c show-status.c
show-status.h show-status.h
emergency-action.c emergency-action.c
emergency-action.h emergency-action.h
'''.split() '''.split()
load_fragment_gperf_gperf = custom_target( load_fragment_gperf_gperf = custom_target(
'load-fragment-gperf.gperf', 'load-fragment-gperf.gperf',
input : 'load-fragment-gperf.gperf.m4', input : 'load-fragment-gperf.gperf.m4',
output: 'load-fragment-gperf.gperf', output: 'load-fragment-gperf.gperf',
command : [m4, '-P'] + m4_defines + ['@INPUT@'], command : [m4, '-P'] + m4_defines + ['@INPUT@'],
capture : true) capture : true)
load_fragment_gperf_c = custom_target( load_fragment_gperf_c = custom_target(
'load-fragment-gperf.c', 'load-fragment-gperf.c',
input : load_fragment_gperf_gperf, input : load_fragment_gperf_gperf,
output : 'load-fragment-gperf.c', output : 'load-fragment-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
awkscript = 'load-fragment-gperf-nulstr.awk' awkscript = 'load-fragment-gperf-nulstr.awk'
load_fragment_gperf_nulstr_c = custom_target( load_fragment_gperf_nulstr_c = custom_target(
'load-fragment-gperf-nulstr.c', 'load-fragment-gperf-nulstr.c',
input : [awkscript, load_fragment_gperf_gperf], input : [awkscript, load_fragment_gperf_gperf],
output : 'load-fragment-gperf-nulstr.c', output : 'load-fragment-gperf-nulstr.c',
command : [awk, '-f', '@INPUT0@', '@INPUT1@'], command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
capture : true) capture : true)
libcore = static_library( libcore = static_library(
'core', 'core',
libcore_la_sources, libcore_la_sources,
load_fragment_gperf_c, load_fragment_gperf_c,
load_fragment_gperf_nulstr_c, load_fragment_gperf_nulstr_c,
include_directories : includes, include_directories : includes,
link_with : [libshared_static], link_with : [libshared_static],
dependencies : [threads, dependencies : [threads,
libpam, libpam,
libaudit, libaudit,
libkmod, libkmod,
libapparmor, libapparmor,
libmount]) libmount])
systemd_sources = files('main.c') systemd_sources = files('main.c')
systemd_shutdown_sources = files(''' systemd_shutdown_sources = files('''
shutdown.c shutdown.c
umount.c umount.c
umount.h umount.h
mount-setup.c mount-setup.c
mount-setup.h mount-setup.h
killall.c killall.c
killall.h killall.h
'''.split()) '''.split())
in_files = [['macros.systemd', rpmmacrosdir], in_files = [['macros.systemd', rpmmacrosdir],
['triggers.systemd', ''], ['triggers.systemd', ''],
['systemd.pc', pkgconfigdatadir]] ['systemd.pc', pkgconfigdatadir]]
foreach item : in_files foreach item : in_files
file = item[0] file = item[0]
dir = item[1] dir = item[1]
# If "no", disable generation completely. # If 'no', disable generation completely.
# If "", generate, but do not install. # If '', generate, but do not install.
if dir != 'no' if dir != 'no'
gen = configure_file( gen = configure_file(
input : file + '.in', input : file + '.in',
output : file, output : file,
configuration : substs) configuration : substs)
if dir != '' if dir != ''
install_data(gen, install_data(gen,
install_dir : dir) install_dir : dir)
endif endif
endif endif
endforeach endforeach
install_data('org.freedesktop.systemd1.conf', install_data('org.freedesktop.systemd1.conf',
@ -194,17 +192,17 @@ install_data('org.freedesktop.systemd1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
policy_in = configure_file( policy_in = configure_file(
input : 'org.freedesktop.systemd1.policy.in.in', input : 'org.freedesktop.systemd1.policy.in.in',
output : 'org.freedesktop.systemd1.policy.in', output : 'org.freedesktop.systemd1.policy.in',
configuration : substs) configuration : substs)
custom_target( custom_target(
'org.freedesktop.systemd1.policy', 'org.freedesktop.systemd1.policy',
input : policy_in, input : policy_in,
output : 'org.freedesktop.systemd1.policy', output : 'org.freedesktop.systemd1.policy',
command : intltool_command, command : intltool_command,
install : install_polkit, install : install_polkit,
install_dir : polkitpolicydir) install_dir : polkitpolicydir)
# TODO: this might work with meson from git, see # TODO: this might work with meson from git, see
# https://github.com/mesonbuild/meson/issues/1441#issuecomment-283585493 # https://github.com/mesonbuild/meson/issues/1441#issuecomment-283585493

View File

@ -1,14 +1,12 @@
# -*- mode: meson -*-
systemd_coredump_sources = files(''' systemd_coredump_sources = files('''
coredump.c coredump.c
coredump-vacuum.c coredump-vacuum.c
coredump-vacuum.h coredump-vacuum.h
'''.split()) '''.split())
if conf.get('HAVE_ELFUTILS', 0) == 1 if conf.get('HAVE_ELFUTILS', 0) == 1
systemd_coredump_sources += files(['stacktrace.c', systemd_coredump_sources += files(['stacktrace.c',
'stacktrace.h']) 'stacktrace.h'])
endif endif
coredumpctl_sources = files('coredumpctl.c') coredumpctl_sources = files('coredumpctl.c')
@ -17,10 +15,10 @@ install_data('coredump.conf',
install_dir : pkgsysconfdir) install_dir : pkgsysconfdir)
tests += [ tests += [
[['src/coredump/test-coredump-vacuum.c', [['src/coredump/test-coredump-vacuum.c',
'src/coredump/coredump-vacuum.c', 'src/coredump/coredump-vacuum.c',
'src/coredump/coredump-vacuum.h'], 'src/coredump/coredump-vacuum.h'],
[], [],
[], [],
'ENABLE_COREDUMP', 'manual'], 'ENABLE_COREDUMP', 'manual'],
] ]

View File

@ -1,16 +1,14 @@
# -*- mode: meson -*-
install_data('org.freedesktop.hostname1.conf', install_data('org.freedesktop.hostname1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.hostname1.service', install_data('org.freedesktop.hostname1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
if conf.get('ENABLE_HOSTNAMED', 0) == 1 if conf.get('ENABLE_HOSTNAMED', 0) == 1
custom_target( custom_target(
'org.freedesktop.hostname1.policy', 'org.freedesktop.hostname1.policy',
input : 'org.freedesktop.hostname1.policy.in', input : 'org.freedesktop.hostname1.policy.in',
output : 'org.freedesktop.hostname1.policy', output : 'org.freedesktop.hostname1.policy',
command : intltool_command, command : intltool_command,
install : install_polkit, install : install_polkit,
install_dir : polkitpolicydir) install_dir : polkitpolicydir)
endif endif

View File

@ -1,79 +1,77 @@
# -*- mode: meson -*-
systemd_importd_sources = files(''' systemd_importd_sources = files('''
importd.c importd.c
'''.split()) '''.split())
systemd_pull_sources = files(''' systemd_pull_sources = files('''
pull.c pull.c
pull-raw.c pull-raw.c
pull-raw.h pull-raw.h
pull-tar.c pull-tar.c
pull-tar.h pull-tar.h
pull-job.c pull-job.c
pull-job.h pull-job.h
pull-common.c pull-common.c
pull-common.h pull-common.h
import-common.c import-common.c
import-common.h import-common.h
import-compress.c import-compress.c
import-compress.h import-compress.h
curl-util.c curl-util.c
curl-util.h curl-util.h
qcow2-util.c qcow2-util.c
qcow2-util.h qcow2-util.h
'''.split()) '''.split())
systemd_import_sources = files(''' systemd_import_sources = files('''
import.c import.c
import-raw.c import-raw.c
import-raw.h import-raw.h
import-tar.c import-tar.c
import-tar.h import-tar.h
import-common.c import-common.c
import-common.h import-common.h
import-compress.c import-compress.c
import-compress.h import-compress.h
qcow2-util.c qcow2-util.c
qcow2-util.h qcow2-util.h
'''.split()) '''.split())
systemd_export_sources = files(''' systemd_export_sources = files('''
export.c export.c
export-tar.c export-tar.c
export-tar.h export-tar.h
export-raw.c export-raw.c
export-raw.h export-raw.h
import-common.c import-common.c
import-common.h import-common.h
import-compress.c import-compress.c
import-compress.h import-compress.h
'''.split()) '''.split())
if conf.get('ENABLE_IMPORTD', 0) == 1 if conf.get('ENABLE_IMPORTD', 0) == 1
install_data('org.freedesktop.import1.conf', install_data('org.freedesktop.import1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.import1.service', install_data('org.freedesktop.import1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
custom_target( custom_target(
'org.freedesktop.import1.policy', 'org.freedesktop.import1.policy',
input : 'org.freedesktop.import1.policy.in', input : 'org.freedesktop.import1.policy.in',
output : 'org.freedesktop.import1.policy', output : 'org.freedesktop.import1.policy',
command : intltool_command, command : intltool_command,
install : install_polkit, install : install_polkit,
install_dir : polkitpolicydir) install_dir : polkitpolicydir)
install_data('import-pubring.gpg', install_data('import-pubring.gpg',
install_dir : rootlibexecdir) install_dir : rootlibexecdir)
# TODO: shouldn't this be in pkgdatadir? # TODO: shouldn't this be in pkgdatadir?
endif endif
tests += [ tests += [
[['src/import/test-qcow2.c', [['src/import/test-qcow2.c',
'src/import/qcow2-util.c', 'src/import/qcow2-util.c',
'src/import/qcow2-util.h'], 'src/import/qcow2-util.h'],
[libshared], [libshared],
[libz], [libz],
'HAVE_ZLIB', 'manual'], 'HAVE_ZLIB', 'manual'],
] ]

View File

@ -1,44 +1,42 @@
# -*- mode: meson -*-
systemd_journal_upload_sources = files(''' systemd_journal_upload_sources = files('''
journal-upload.h journal-upload.h
journal-upload.c journal-upload.c
journal-upload-journal.c journal-upload-journal.c
'''.split()) '''.split())
systemd_journal_remote_sources = files(''' systemd_journal_remote_sources = files('''
journal-remote-parse.h journal-remote-parse.h
journal-remote-parse.c journal-remote-parse.c
journal-remote-write.h journal-remote-write.h
journal-remote-write.c journal-remote-write.c
journal-remote.h journal-remote.h
journal-remote.c journal-remote.c
microhttpd-util.h microhttpd-util.h
microhttpd-util.c microhttpd-util.c
'''.split()) '''.split())
systemd_journal_gatewayd_sources = files(''' systemd_journal_gatewayd_sources = files('''
journal-gatewayd.c journal-gatewayd.c
microhttpd-util.h microhttpd-util.h
microhttpd-util.c microhttpd-util.c
'''.split()) '''.split())
if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_LIBCURL', 0) == 1 if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_LIBCURL', 0) == 1
journal_upload_conf = configure_file( journal_upload_conf = configure_file(
input : 'journal-upload.conf.in', input : 'journal-upload.conf.in',
output : 'journal-upload.conf', output : 'journal-upload.conf',
configuration : substs) configuration : substs)
install_data(journal_upload_conf, install_data(journal_upload_conf,
install_dir : pkgsysconfdir) install_dir : pkgsysconfdir)
endif endif
if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_MICROHTTPD', 0) == 1 if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_MICROHTTPD', 0) == 1
journal_remote_conf = configure_file( journal_remote_conf = configure_file(
input : 'journal-remote.conf.in', input : 'journal-remote.conf.in',
output : 'journal-remote.conf', output : 'journal-remote.conf',
configuration : substs) configuration : substs)
install_data(journal_remote_conf, install_data(journal_remote_conf,
install_dir : pkgsysconfdir) install_dir : pkgsysconfdir)
endif endif
install_data('browse.html', install_data('browse.html',

View File

@ -1,25 +1,23 @@
# -*- mode: meson -*-
journal_internal_sources = files(''' journal_internal_sources = files('''
audit-type.c audit-type.c
audit-type.h audit-type.h
catalog.c catalog.c
catalog.h catalog.h
compress.c compress.c
compress.h compress.h
journal-def.h journal-def.h
journal-file.c journal-file.c
journal-file.h journal-file.h
journal-send.c journal-send.c
journal-vacuum.c journal-vacuum.c
journal-vacuum.h journal-vacuum.h
journal-verify.c journal-verify.c
journal-verify.h journal-verify.h
lookup3.c lookup3.c
lookup3.h lookup3.h
mmap-cache.c mmap-cache.c
mmap-cache.h mmap-cache.h
sd-journal.c sd-journal.c
'''.split()) '''.split())
############################################################ ############################################################
@ -28,82 +26,86 @@ audit_type_includes = [config_h,
missing_h, missing_h,
'linux/audit.h'] 'linux/audit.h']
if conf.get('HAVE_AUDIT', 0) == 1 if conf.get('HAVE_AUDIT', 0) == 1
audit_type_includes += 'libaudit.h' audit_type_includes += 'libaudit.h'
endif endif
generate_audit_type_list = find_program('generate-audit_type-list.sh') generate_audit_type_list = find_program('generate-audit_type-list.sh')
audit_type_list_txt = custom_target( audit_type_list_txt = custom_target(
'audit_type-list.txt', 'audit_type-list.txt',
output : 'audit_type-list.txt', output : 'audit_type-list.txt',
command : [generate_audit_type_list, cpp] + audit_type_includes, command : [generate_audit_type_list, cpp] + audit_type_includes,
capture : true) capture : true)
audit_type_to_name = custom_target( audit_type_to_name = custom_target(
'audit_type-to-name.h', 'audit_type-to-name.h',
input : ['audit_type-to-name.awk', audit_type_list_txt], input : ['audit_type-to-name.awk', audit_type_list_txt],
output : 'audit_type-to-name.h', output : 'audit_type-to-name.h',
command : [awk, '-f', '@INPUT0@', '@INPUT1@'], command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
capture : true) capture : true)
journal_internal_sources += [audit_type_to_name] journal_internal_sources += [audit_type_to_name]
############################################################ ############################################################
libjournal_core_sources = files(''' libjournal_core_sources = files('''
journald-kmsg.c journald-kmsg.c
journald-kmsg.h journald-kmsg.h
journald-syslog.c journald-syslog.c
journald-syslog.h journald-syslog.h
journald-stream.c journald-stream.c
journald-stream.h journald-stream.h
journald-server.c journald-server.c
journald-server.h journald-server.h
journald-console.c journald-console.c
journald-console.h journald-console.h
journald-wall.c journald-wall.c
journald-wall.h journald-wall.h
journald-native.c journald-native.c
journald-native.h journald-native.h
journald-audit.c journald-audit.c
journald-audit.h journald-audit.h
journald-rate-limit.c journald-rate-limit.c
journald-rate-limit.h journald-rate-limit.h
journal-internal.h journal-internal.h
'''.split()) '''.split())
systemd_journald_sources = files(''' systemd_journald_sources = files('''
journald.c journald.c
journald-server.h journald-server.h
'''.split()) '''.split())
journald_gperf_c = custom_target( journald_gperf_c = custom_target(
'journald-gperf.c', 'journald-gperf.c',
input : 'journald-gperf.gperf', input : 'journald-gperf.gperf',
output : 'journald-gperf.c', output : 'journald-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
systemd_cat_sources = files('cat.c') systemd_cat_sources = files('cat.c')
journalctl_sources = files('journalctl.c') journalctl_sources = files('journalctl.c')
if conf.get('HAVE_QRENCODE', 0) == 1 if conf.get('HAVE_QRENCODE', 0) == 1
journalctl_sources += files('journal-qrcode.c', journalctl_sources += files('journal-qrcode.c',
'journal-qrcode.h') 'journal-qrcode.h')
endif endif
install_data('journald.conf', install_data('journald.conf',
install_dir : pkgsysconfdir) install_dir : pkgsysconfdir)
meson.add_install_script('sh', '-c', meson.add_install_script(
mkdir_p.format('/var/log/journal')) 'sh', '-c',
meson.add_install_script('sh', '-c', mkdir_p.format('/var/log/journal'))
'chown 0:0 $DESTDIR/var/log/journal && meson.add_install_script(
chmod 755 $DESTDIR/var/log/journal || :') 'sh', '-c',
'chown 0:0 $DESTDIR/var/log/journal &&
chmod 755 $DESTDIR/var/log/journal || :')
if get_option('adm-group') if get_option('adm-group')
meson.add_install_script('sh', '-c', meson.add_install_script(
'setfacl -nm g:adm:rx,d:g:adm:rx $DESTDIR/var/log/journal || :') 'sh', '-c',
'setfacl -nm g:adm:rx,d:g:adm:rx $DESTDIR/var/log/journal || :')
endif endif
if get_option('wheel-group') if get_option('wheel-group')
meson.add_install_script('sh', '-c', meson.add_install_script(
'setfacl -nm g:wheel:rx,d:g:wheel:rx $DESTDIR/var/log/journal || :') 'sh', '-c',
'setfacl -nm g:wheel:rx,d:g:wheel:rx $DESTDIR/var/log/journal || :')
endif endif

View File

@ -1,5 +1,3 @@
# -*- mode: meson -*-
install_data('kernel-install', install_data('kernel-install',
install_mode : 'rwxr-xr-x', install_mode : 'rwxr-xr-x',
install_dir : bindir) install_dir : bindir)

View File

@ -1,48 +1,46 @@
# -*- mode: meson -*-
sources = files(''' sources = files('''
sd-dhcp-client.c sd-dhcp-client.c
sd-dhcp-server.c sd-dhcp-server.c
dhcp-network.c dhcp-network.c
dhcp-option.c dhcp-option.c
dhcp-packet.c dhcp-packet.c
dhcp-internal.h dhcp-internal.h
dhcp-server-internal.h dhcp-server-internal.h
dhcp-protocol.h dhcp-protocol.h
dhcp-lease-internal.h dhcp-lease-internal.h
sd-dhcp-lease.c sd-dhcp-lease.c
sd-ipv4ll.c sd-ipv4ll.c
sd-ipv4acd.c sd-ipv4acd.c
arp-util.h arp-util.h
arp-util.c arp-util.c
network-internal.c network-internal.c
sd-ndisc.c sd-ndisc.c
ndisc-internal.h ndisc-internal.h
ndisc-router.h ndisc-router.h
ndisc-router.c ndisc-router.c
icmp6-util.h icmp6-util.h
icmp6-util.c icmp6-util.c
sd-dhcp6-client.c sd-dhcp6-client.c
dhcp6-internal.h dhcp6-internal.h
dhcp6-protocol.h dhcp6-protocol.h
dhcp6-network.c dhcp6-network.c
dhcp6-option.c dhcp6-option.c
dhcp6-lease-internal.h dhcp6-lease-internal.h
sd-dhcp6-lease.c sd-dhcp6-lease.c
dhcp-identifier.h dhcp-identifier.h
dhcp-identifier.c dhcp-identifier.c
lldp-internal.h lldp-internal.h
lldp-network.h lldp-network.h
lldp-network.c lldp-network.c
lldp-neighbor.h lldp-neighbor.h
lldp-neighbor.c lldp-neighbor.c
sd-lldp.c sd-lldp.c
'''.split()) '''.split())
network_internal_h = files('network-internal.h') network_internal_h = files('network-internal.h')
libsystemd_network = static_library( libsystemd_network = static_library(
'systemd-network', 'systemd-network',
sources, sources,
network_internal_h, network_internal_h,
include_directories : includes) include_directories : includes)

View File

@ -1,98 +1,96 @@
# -*- mode: meson -*-
sd_login_c = files('sd-login/sd-login.c') sd_login_c = files('sd-login/sd-login.c')
libsystemd_internal_sources = files(''' libsystemd_internal_sources = files('''
sd-bus/bus-bloom.c sd-bus/bus-bloom.c
sd-bus/bus-bloom.h sd-bus/bus-bloom.h
sd-bus/bus-common-errors.c sd-bus/bus-common-errors.c
sd-bus/bus-common-errors.h sd-bus/bus-common-errors.h
sd-bus/bus-container.c sd-bus/bus-container.c
sd-bus/bus-container.h sd-bus/bus-container.h
sd-bus/bus-control.c sd-bus/bus-control.c
sd-bus/bus-control.h sd-bus/bus-control.h
sd-bus/bus-convenience.c sd-bus/bus-convenience.c
sd-bus/bus-creds.c sd-bus/bus-creds.c
sd-bus/bus-creds.h sd-bus/bus-creds.h
sd-bus/bus-dump.c sd-bus/bus-dump.c
sd-bus/bus-dump.h sd-bus/bus-dump.h
sd-bus/bus-error.c sd-bus/bus-error.c
sd-bus/bus-error.h sd-bus/bus-error.h
sd-bus/bus-gvariant.c sd-bus/bus-gvariant.c
sd-bus/bus-gvariant.h sd-bus/bus-gvariant.h
sd-bus/bus-internal.c sd-bus/bus-internal.c
sd-bus/bus-internal.h sd-bus/bus-internal.h
sd-bus/bus-introspect.c sd-bus/bus-introspect.c
sd-bus/bus-introspect.h sd-bus/bus-introspect.h
sd-bus/bus-kernel.c sd-bus/bus-kernel.c
sd-bus/bus-kernel.h sd-bus/bus-kernel.h
sd-bus/bus-match.c sd-bus/bus-match.c
sd-bus/bus-match.h sd-bus/bus-match.h
sd-bus/bus-message.c sd-bus/bus-message.c
sd-bus/bus-message.h sd-bus/bus-message.h
sd-bus/bus-objects.c sd-bus/bus-objects.c
sd-bus/bus-objects.h sd-bus/bus-objects.h
sd-bus/bus-protocol.h sd-bus/bus-protocol.h
sd-bus/bus-signature.c sd-bus/bus-signature.c
sd-bus/bus-signature.h sd-bus/bus-signature.h
sd-bus/bus-slot.c sd-bus/bus-slot.c
sd-bus/bus-slot.h sd-bus/bus-slot.h
sd-bus/bus-socket.c sd-bus/bus-socket.c
sd-bus/bus-socket.h sd-bus/bus-socket.h
sd-bus/bus-track.c sd-bus/bus-track.c
sd-bus/bus-track.h sd-bus/bus-track.h
sd-bus/bus-type.c sd-bus/bus-type.c
sd-bus/bus-type.h sd-bus/bus-type.h
sd-bus/kdbus.h sd-bus/kdbus.h
sd-bus/sd-bus.c sd-bus/sd-bus.c
sd-daemon/sd-daemon.c sd-daemon/sd-daemon.c
sd-device/device-enumerator-private.h sd-device/device-enumerator-private.h
sd-device/device-enumerator.c sd-device/device-enumerator.c
sd-device/device-internal.h sd-device/device-internal.h
sd-device/device-private.c sd-device/device-private.c
sd-device/device-private.h sd-device/device-private.h
sd-device/device-util.h sd-device/device-util.h
sd-device/sd-device.c sd-device/sd-device.c
sd-event/sd-event.c sd-event/sd-event.c
sd-hwdb/hwdb-internal.h sd-hwdb/hwdb-internal.h
sd-hwdb/hwdb-util.h sd-hwdb/hwdb-util.h
sd-hwdb/sd-hwdb.c sd-hwdb/sd-hwdb.c
sd-id128/id128-util.c sd-id128/id128-util.c
sd-id128/id128-util.h sd-id128/id128-util.h
sd-id128/sd-id128.c sd-id128/sd-id128.c
sd-netlink/local-addresses.c sd-netlink/local-addresses.c
sd-netlink/local-addresses.h sd-netlink/local-addresses.h
sd-netlink/netlink-internal.h sd-netlink/netlink-internal.h
sd-netlink/netlink-message.c sd-netlink/netlink-message.c
sd-netlink/netlink-socket.c sd-netlink/netlink-socket.c
sd-netlink/netlink-types.c sd-netlink/netlink-types.c
sd-netlink/netlink-types.h sd-netlink/netlink-types.h
sd-netlink/netlink-util.c sd-netlink/netlink-util.c
sd-netlink/netlink-util.h sd-netlink/netlink-util.h
sd-netlink/rtnl-message.c sd-netlink/rtnl-message.c
sd-netlink/sd-netlink.c sd-netlink/sd-netlink.c
sd-network/network-util.c sd-network/network-util.c
sd-network/network-util.h sd-network/network-util.h
sd-network/sd-network.c sd-network/sd-network.c
sd-path/sd-path.c sd-path/sd-path.c
sd-resolve/sd-resolve.c sd-resolve/sd-resolve.c
sd-utf8/sd-utf8.c sd-utf8/sd-utf8.c
'''.split()) + sd_login_c '''.split()) + sd_login_c
libsystemd_internal = static_library( libsystemd_internal = static_library(
'systemd', 'systemd',
libsystemd_internal_sources, libsystemd_internal_sources,
install : false, install : false,
include_directories : includes, include_directories : includes,
link_with : libbasic, link_with : libbasic,
dependencies : [threads, dependencies : [threads,
librt]) librt])
libsystemd_sym = 'src/libsystemd/libsystemd.sym' libsystemd_sym = 'src/libsystemd/libsystemd.sym'
libsystemd_pc = configure_file( libsystemd_pc = configure_file(
input : 'libsystemd.pc.in', input : 'libsystemd.pc.in',
output : 'libsystemd.pc', output : 'libsystemd.pc',
configuration : substs) configuration : substs)
install_data(libsystemd_pc, install_data(libsystemd_pc,
install_dir : pkgconfiglibdir) install_dir : pkgconfiglibdir)

View File

@ -1,17 +1,15 @@
# -*- mode: meson -*-
libudev_sources = files(''' libudev_sources = files('''
libudev-private.h libudev-private.h
libudev-device-internal.h libudev-device-internal.h
libudev.c libudev.c
libudev-list.c libudev-list.c
libudev-util.c libudev-util.c
libudev-device.c libudev-device.c
libudev-device-private.c libudev-device-private.c
libudev-enumerate.c libudev-enumerate.c
libudev-monitor.c libudev-monitor.c
libudev-queue.c libudev-queue.c
libudev-hwdb.c libudev-hwdb.c
'''.split()) '''.split())
############################################################ ############################################################
@ -19,25 +17,25 @@ libudev_sources = files('''
libudev_sym = 'libudev.sym' libudev_sym = 'libudev.sym'
libudev_sym_path = '@0@/@1@'.format(meson.current_source_dir(), libudev_sym) libudev_sym_path = '@0@/@1@'.format(meson.current_source_dir(), libudev_sym)
libudev = shared_library( libudev = shared_library(
'udev', 'udev',
libudev_sources, libudev_sources,
version : '1.6.6', version : '1.6.6',
include_directories : includes, include_directories : includes,
link_args : ['-shared', link_args : ['-shared',
'-Wl,--version-script=' + libudev_sym_path], '-Wl,--version-script=' + libudev_sym_path],
link_with : [libbasic, link_with : [libbasic,
libsystemd_internal], libsystemd_internal],
dependencies : [threads], dependencies : [threads],
link_depends : libudev_sym, link_depends : libudev_sym,
install : true, install : true,
install_dir : rootlibdir) install_dir : rootlibdir)
install_headers('libudev.h') install_headers('libudev.h')
libudev_h_path = '@0@/libudev.h'.format(meson.current_source_dir()) libudev_h_path = '@0@/libudev.h'.format(meson.current_source_dir())
libudev_pc = configure_file( libudev_pc = configure_file(
input : 'libudev.pc.in', input : 'libudev.pc.in',
output : 'libudev.pc', output : 'libudev.pc',
configuration : substs) configuration : substs)
install_data(libudev_pc, install_data(libudev_pc,
install_dir : pkgconfiglibdir) install_dir : pkgconfiglibdir)

View File

@ -1,26 +1,24 @@
# -*- mode: meson -*-
systemd_localed_sources = files(''' systemd_localed_sources = files('''
localed.c localed.c
keymap-util.c keymap-util.c
keymap-util.h keymap-util.h
'''.split()) '''.split())
localectl_sources = files('localectl.c') localectl_sources = files('localectl.c')
if conf.get('ENABLE_LOCALED', 0) == 1 if conf.get('ENABLE_LOCALED', 0) == 1
install_data('org.freedesktop.locale1.conf', install_data('org.freedesktop.locale1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.locale1.service', install_data('org.freedesktop.locale1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
custom_target( custom_target(
'org.freedesktop.locale1.policy', 'org.freedesktop.locale1.policy',
input : 'org.freedesktop.locale1.policy.in', input : 'org.freedesktop.locale1.policy.in',
output : 'org.freedesktop.locale1.policy', output : 'org.freedesktop.locale1.policy',
command : intltool_command, command : intltool_command,
install : install_polkit, install : install_polkit,
install_dir : polkitpolicydir) install_dir : polkitpolicydir)
endif endif
# If you know a way that allows the same variables to be used # If you know a way that allows the same variables to be used
@ -34,9 +32,9 @@ install_data('kbd-model-map',
install_dir : pkgdatadir) install_dir : pkgdatadir)
tests += [ tests += [
[['src/locale/test-keymap-util.c', [['src/locale/test-keymap-util.c',
'src/locale/keymap-util.c', 'src/locale/keymap-util.c',
'src/locale/keymap-util.h'], 'src/locale/keymap-util.h'],
[libshared], [libshared],
[libdl]], [libdl]],
] ]

View File

@ -1,106 +1,104 @@
# -*- mode: meson -*-
systemd_logind_sources = files(''' systemd_logind_sources = files('''
logind.c logind.c
logind.h logind.h
'''.split()) '''.split())
logind_gperf_c = custom_target( logind_gperf_c = custom_target(
'logind_gperf.c', 'logind_gperf.c',
input : 'logind-gperf.gperf', input : 'logind-gperf.gperf',
output : 'logind-gperf.c', output : 'logind-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
systemd_logind_sources += [logind_gperf_c] systemd_logind_sources += [logind_gperf_c]
liblogind_core_sources = files(''' liblogind_core_sources = files('''
logind-core.c logind-core.c
logind-device.c logind-device.c
logind-device.h logind-device.h
logind-button.c logind-button.c
logind-button.h logind-button.h
logind-action.c logind-action.c
logind-action.h logind-action.h
logind-seat.c logind-seat.c
logind-seat.h logind-seat.h
logind-session.c logind-session.c
logind-session.h logind-session.h
logind-session-device.c logind-session-device.c
logind-session-device.h logind-session-device.h
logind-user.c logind-user.c
logind-user.h logind-user.h
logind-inhibit.c logind-inhibit.c
logind-inhibit.h logind-inhibit.h
logind-dbus.c logind-dbus.c
logind-session-dbus.c logind-session-dbus.c
logind-seat-dbus.c logind-seat-dbus.c
logind-user-dbus.c logind-user-dbus.c
logind-utmp.c logind-utmp.c
logind-acl.h logind-acl.h
'''.split()) '''.split())
logind_acl_c = files('logind-acl.c') logind_acl_c = files('logind-acl.c')
if conf.get('HAVE_ACL', 0) == 1 if conf.get('HAVE_ACL', 0) == 1
liblogind_core_sources += logind_acl_c liblogind_core_sources += logind_acl_c
endif endif
liblogind_core = static_library( liblogind_core = static_library(
'logind-core', 'logind-core',
liblogind_core_sources, liblogind_core_sources,
include_directories : includes, include_directories : includes,
dependencies : [libacl]) dependencies : [libacl])
loginctl_sources = files(''' loginctl_sources = files('''
loginctl.c loginctl.c
sysfs-show.h sysfs-show.h
sysfs-show.c sysfs-show.c
'''.split()) '''.split())
if conf.get('ENABLE_LOGIND', 0) == 1 if conf.get('ENABLE_LOGIND', 0) == 1
logind_conf = configure_file( logind_conf = configure_file(
input : 'logind.conf.in', input : 'logind.conf.in',
output : 'logind.conf', output : 'logind.conf',
configuration : substs) configuration : substs)
install_data(logind_conf, install_data(logind_conf,
install_dir : pkgsysconfdir) install_dir : pkgsysconfdir)
pam_systemd_sym = 'src/login/pam_systemd.sym' pam_systemd_sym = 'src/login/pam_systemd.sym'
pam_systemd_c = files('pam_systemd.c') pam_systemd_c = files('pam_systemd.c')
install_data('org.freedesktop.login1.conf', install_data('org.freedesktop.login1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.login1.service', install_data('org.freedesktop.login1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
custom_target( custom_target(
'org.freedesktop.login1.policy', 'org.freedesktop.login1.policy',
input : 'org.freedesktop.login1.policy.in', input : 'org.freedesktop.login1.policy.in',
output : 'org.freedesktop.login1.policy', output : 'org.freedesktop.login1.policy',
command : intltool_command, command : intltool_command,
install : install_polkit, install : install_polkit,
install_dir : polkitpolicydir) install_dir : polkitpolicydir)
install_data('70-power-switch.rules', install_data('70-power-switch.rules',
'70-uaccess.rules', '70-uaccess.rules',
install_dir : udevrulesdir) install_dir : udevrulesdir)
foreach file : ['71-seat.rules', foreach file : ['71-seat.rules',
'73-seat-late.rules'] '73-seat-late.rules']
gen = configure_file( gen = configure_file(
input : file + '.in', input : file + '.in',
output : file, output : file,
configuration : substs) configuration : substs)
install_data(gen, install_data(gen,
install_dir : udevrulesdir) install_dir : udevrulesdir)
endforeach endforeach
custom_target( custom_target(
'systemd-user', 'systemd-user',
input : 'systemd-user.m4', input : 'systemd-user.m4',
output: 'systemd-user', output: 'systemd-user',
command : [m4, '-P'] + m4_defines + ['@INPUT@'], command : [m4, '-P'] + m4_defines + ['@INPUT@'],
capture : true, capture : true,
install : pamconfdir != 'no', install : pamconfdir != 'no',
install_dir : pamconfdir) install_dir : pamconfdir)
endif endif

View File

@ -1,48 +1,46 @@
# -*- mode: meson -*-
systemd_machined_sources = files(''' systemd_machined_sources = files('''
machined.c machined.c
machined.h machined.h
'''.split()) '''.split())
libmachine_core_sources = files(''' libmachine_core_sources = files('''
machine.c machine.c
machine.h machine.h
machined-dbus.c machined-dbus.c
machine-dbus.c machine-dbus.c
machine-dbus.h machine-dbus.h
image-dbus.c image-dbus.c
image-dbus.h image-dbus.h
operation.c operation.c
operation.h operation.h
'''.split()) '''.split())
libmachine_core = static_library( libmachine_core = static_library(
'machine-core', 'machine-core',
libmachine_core_sources, libmachine_core_sources,
include_directories : includes, include_directories : includes,
dependencies : [threads]) dependencies : [threads])
if conf.get('ENABLE_MACHINED', 0) == 1 if conf.get('ENABLE_MACHINED', 0) == 1
install_data('org.freedesktop.machine1.conf', install_data('org.freedesktop.machine1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.machine1.service', install_data('org.freedesktop.machine1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
custom_target( custom_target(
'org.freedesktop.machine1.policy', 'org.freedesktop.machine1.policy',
input : 'org.freedesktop.machine1.policy.in', input : 'org.freedesktop.machine1.policy.in',
output : 'org.freedesktop.machine1.policy', output : 'org.freedesktop.machine1.policy',
command : intltool_command, command : intltool_command,
install : install_polkit, install : install_polkit,
install_dir : polkitpolicydir) install_dir : polkitpolicydir)
endif endif
tests += [ tests += [
[['src/machine/test-machine-tables.c'], [['src/machine/test-machine-tables.c'],
[libmachine_core, [libmachine_core,
libshared, libshared,
libudev], libudev],
[threads], [threads],
'ENABLE_MACHINED'], 'ENABLE_MACHINED'],
] ]

View File

@ -1,74 +1,72 @@
# -*- mode: meson -*-
sources = files(''' sources = files('''
netdev/bond.c netdev/bond.c
netdev/bond.h netdev/bond.h
netdev/bridge.c netdev/bridge.c
netdev/bridge.h netdev/bridge.h
netdev/dummy.c netdev/dummy.c
netdev/dummy.h netdev/dummy.h
netdev/ipvlan.c netdev/ipvlan.c
netdev/ipvlan.h netdev/ipvlan.h
netdev/macvlan.c netdev/macvlan.c
netdev/macvlan.h netdev/macvlan.h
netdev/netdev.c netdev/netdev.c
netdev/netdev.h netdev/netdev.h
netdev/tunnel.c netdev/tunnel.c
netdev/tunnel.h netdev/tunnel.h
netdev/tuntap.c netdev/tuntap.c
netdev/tuntap.h netdev/tuntap.h
netdev/vcan.c netdev/vcan.c
netdev/vcan.h netdev/vcan.h
netdev/veth.c netdev/veth.c
netdev/veth.h netdev/veth.h
netdev/vlan.c netdev/vlan.c
netdev/vlan.h netdev/vlan.h
netdev/vrf.c netdev/vrf.c
netdev/vrf.h netdev/vrf.h
netdev/vxlan.c netdev/vxlan.c
netdev/vxlan.h netdev/vxlan.h
networkd-address-pool.c networkd-address-pool.c
networkd-address-pool.h networkd-address-pool.h
networkd-address.c networkd-address.c
networkd-address.h networkd-address.h
networkd-brvlan.c networkd-brvlan.c
networkd-brvlan.h networkd-brvlan.h
networkd-conf.c networkd-conf.c
networkd-conf.h networkd-conf.h
networkd-dhcp4.c networkd-dhcp4.c
networkd-dhcp6.c networkd-dhcp6.c
networkd-fdb.c networkd-fdb.c
networkd-fdb.h networkd-fdb.h
networkd-ipv4ll.c networkd-ipv4ll.c
networkd-ipv6-proxy-ndp.c networkd-ipv6-proxy-ndp.c
networkd-ipv6-proxy-ndp.h networkd-ipv6-proxy-ndp.h
networkd-link-bus.c networkd-link-bus.c
networkd-link.c networkd-link.c
networkd-link.h networkd-link.h
networkd-lldp-tx.c networkd-lldp-tx.c
networkd-lldp-tx.h networkd-lldp-tx.h
networkd-manager-bus.c networkd-manager-bus.c
networkd-manager.c networkd-manager.c
networkd-manager.h networkd-manager.h
networkd-ndisc.c networkd-ndisc.c
networkd-ndisc.h networkd-ndisc.h
networkd-network-bus.c networkd-network-bus.c
networkd-network.c networkd-network.c
networkd-network.h networkd-network.h
networkd-route.c networkd-route.c
networkd-route.h networkd-route.h
networkd-util.c networkd-util.c
networkd-util.h networkd-util.h
'''.split()) '''.split())
systemd_networkd_sources = files('networkd.c') systemd_networkd_sources = files('networkd.c')
systemd_networkd_wait_online_sources = files(''' systemd_networkd_wait_online_sources = files('''
wait-online/link.c wait-online/link.c
wait-online/link.h wait-online/link.h
wait-online/manager.c wait-online/manager.c
wait-online/manager.h wait-online/manager.h
wait-online/wait-online.c wait-online/wait-online.c
'''.split()) + network_internal_h '''.split()) + network_internal_h
networkctl_sources = files('networkctl.c') networkctl_sources = files('networkctl.c')
@ -76,48 +74,48 @@ networkctl_sources = files('networkctl.c')
network_include_dir = include_directories('.') network_include_dir = include_directories('.')
if conf.get('ENABLE_NETWORKD', 0) == 1 if conf.get('ENABLE_NETWORKD', 0) == 1
networkd_gperf_c = custom_target( networkd_gperf_c = custom_target(
'networkd-gperf.c', 'networkd-gperf.c',
input : 'networkd-gperf.gperf', input : 'networkd-gperf.gperf',
output : 'networkd-gperf.c', output : 'networkd-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
networkd_network_gperf_c = custom_target( networkd_network_gperf_c = custom_target(
'networkd-network-gperf.c', 'networkd-network-gperf.c',
input : 'networkd-network-gperf.gperf', input : 'networkd-network-gperf.gperf',
output : 'networkd-network-gperf.c', output : 'networkd-network-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
netdev_gperf_c = custom_target( netdev_gperf_c = custom_target(
'netdev-gperf.c', 'netdev-gperf.c',
input : 'netdev/netdev-gperf.gperf', input : 'netdev/netdev-gperf.gperf',
output : 'netdev-gperf.c', output : 'netdev-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
libnetworkd_core = static_library( libnetworkd_core = static_library(
'networkd-core', 'networkd-core',
sources, sources,
network_internal_h, network_internal_h,
networkd_gperf_c, networkd_gperf_c,
networkd_network_gperf_c, networkd_network_gperf_c,
netdev_gperf_c, netdev_gperf_c,
include_directories : includes, include_directories : includes,
link_with : [libshared]) link_with : [libshared])
install_data('org.freedesktop.network1.conf', install_data('org.freedesktop.network1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.network1.service', install_data('org.freedesktop.network1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
if install_polkit if install_polkit
install_data('systemd-networkd.rules', install_data('systemd-networkd.rules',
install_dir : polkitrulesdir) install_dir : polkitrulesdir)
endif endif
if install_polkit_pkla if install_polkit_pkla
install_data('systemd-networkd.pkla', install_data('systemd-networkd.pkla',
install_dir : polkitpkladir) install_dir : polkitpkladir)
endif endif
tests += [ tests += [
[['src/network/test-networkd-conf.c'], [['src/network/test-networkd-conf.c'],
[libnetworkd_core, [libnetworkd_core,
libsystemd_network, libsystemd_network,

View File

@ -1,42 +1,40 @@
# -*- mode: meson -*-
systemd_nspawn_sources = files(''' systemd_nspawn_sources = files('''
nspawn.c nspawn.c
nspawn-settings.c nspawn-settings.c
nspawn-settings.h nspawn-settings.h
nspawn-mount.c nspawn-mount.c
nspawn-mount.h nspawn-mount.h
nspawn-network.c nspawn-network.c
nspawn-network.h nspawn-network.h
nspawn-expose-ports.c nspawn-expose-ports.c
nspawn-expose-ports.h nspawn-expose-ports.h
nspawn-cgroup.c nspawn-cgroup.c
nspawn-cgroup.h nspawn-cgroup.h
nspawn-seccomp.c nspawn-seccomp.c
nspawn-seccomp.h nspawn-seccomp.h
nspawn-register.c nspawn-register.c
nspawn-register.h nspawn-register.h
nspawn-setuid.c nspawn-setuid.c
nspawn-setuid.h nspawn-setuid.h
nspawn-stub-pid1.c nspawn-stub-pid1.c
nspawn-stub-pid1.h nspawn-stub-pid1.h
nspawn-patch-uid.c nspawn-patch-uid.c
nspawn-patch-uid.h nspawn-patch-uid.h
'''.split()) '''.split())
nspawn_gperf_c = custom_target( nspawn_gperf_c = custom_target(
'nspawn-gperf.c', 'nspawn-gperf.c',
input : 'nspawn-gperf.gperf', input : 'nspawn-gperf.gperf',
output : 'nspawn-gperf.c', output : 'nspawn-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
systemd_nspawn_sources += [nspawn_gperf_c] systemd_nspawn_sources += [nspawn_gperf_c]
tests += [ tests += [
[['src/nspawn/test-patch-uid.c', [['src/nspawn/test-patch-uid.c',
'src/nspawn/nspawn-patch-uid.c', 'src/nspawn/nspawn-patch-uid.c',
'src/nspawn/nspawn-patch-uid.h'], 'src/nspawn/nspawn-patch-uid.h'],
[libshared], [libshared],
[libacl], [libacl],
'', 'manual'], '', 'manual'],
] ]

View File

@ -1,64 +1,62 @@
# -*- mode: meson -*-
basic_dns_sources = files(''' basic_dns_sources = files('''
resolved-dns-dnssec.c resolved-dns-dnssec.c
resolved-dns-dnssec.h resolved-dns-dnssec.h
resolved-dns-packet.c resolved-dns-packet.c
resolved-dns-packet.h resolved-dns-packet.h
resolved-dns-rr.c resolved-dns-rr.c
resolved-dns-rr.h resolved-dns-rr.h
resolved-dns-answer.c resolved-dns-answer.c
resolved-dns-answer.h resolved-dns-answer.h
resolved-dns-question.c resolved-dns-question.c
resolved-dns-question.h resolved-dns-question.h
dns-type.c dns-type.c
'''.split()) '''.split())
dns_type_h = files('dns-type.h')[0] dns_type_h = files('dns-type.h')[0]
systemd_resolved_only_sources = files(''' systemd_resolved_only_sources = files('''
resolved.c resolved.c
resolved-manager.c resolved-manager.c
resolved-manager.h resolved-manager.h
resolved-conf.c resolved-conf.c
resolved-conf.h resolved-conf.h
resolved-resolv-conf.c resolved-resolv-conf.c
resolved-resolv-conf.h resolved-resolv-conf.h
resolved-bus.c resolved-bus.c
resolved-bus.h resolved-bus.h
resolved-link.h resolved-link.h
resolved-link.c resolved-link.c
resolved-link-bus.c resolved-link-bus.c
resolved-link-bus.h resolved-link-bus.h
resolved-llmnr.h resolved-llmnr.h
resolved-llmnr.c resolved-llmnr.c
resolved-mdns.h resolved-mdns.h
resolved-mdns.c resolved-mdns.c
resolved-def.h resolved-def.h
resolved-dns-query.h resolved-dns-query.h
resolved-dns-query.c resolved-dns-query.c
resolved-dns-synthesize.h resolved-dns-synthesize.h
resolved-dns-synthesize.c resolved-dns-synthesize.c
resolved-dns-transaction.h resolved-dns-transaction.h
resolved-dns-transaction.c resolved-dns-transaction.c
resolved-dns-scope.h resolved-dns-scope.h
resolved-dns-scope.c resolved-dns-scope.c
resolved-dns-server.h resolved-dns-server.h
resolved-dns-server.c resolved-dns-server.c
resolved-dns-search-domain.h resolved-dns-search-domain.h
resolved-dns-search-domain.c resolved-dns-search-domain.c
resolved-dns-cache.h resolved-dns-cache.h
resolved-dns-cache.c resolved-dns-cache.c
resolved-dns-zone.h resolved-dns-zone.h
resolved-dns-zone.c resolved-dns-zone.c
resolved-dns-stream.h resolved-dns-stream.h
resolved-dns-stream.c resolved-dns-stream.c
resolved-dns-trust-anchor.h resolved-dns-trust-anchor.h
resolved-dns-trust-anchor.c resolved-dns-trust-anchor.c
resolved-dns-stub.h resolved-dns-stub.h
resolved-dns-stub.c resolved-dns-stub.c
resolved-etc-hosts.h resolved-etc-hosts.h
resolved-etc-hosts.c resolved-etc-hosts.c
'''.split()) '''.split())
systemd_resolve_only_sources = files('resolve-tool.c') systemd_resolve_only_sources = files('resolve-tool.c')
@ -66,114 +64,112 @@ systemd_resolve_only_sources = files('resolve-tool.c')
############################################################ ############################################################
dns_type_list_txt = custom_target( dns_type_list_txt = custom_target(
'dns_type-list.txt', 'dns_type-list.txt',
input : ['generate-dns_type-list.sed', dns_type_h], input : ['generate-dns_type-list.sed', dns_type_h],
output : 'dns_type-list.txt', output : 'dns_type-list.txt',
command : [sed, '-n', '-r', '-f', '@INPUT0@', '@INPUT1@'], command : [sed, '-n', '-r', '-f', '@INPUT0@', '@INPUT1@'],
capture : true) capture : true)
generate_dns_type_gperf = find_program('generate-dns_type-gperf.py') generate_dns_type_gperf = find_program('generate-dns_type-gperf.py')
dns_type_headers = [dns_type_h] dns_type_headers = [dns_type_h]
foreach item : [['dns_type', dns_type_list_txt, 'dns_type', 'DNS_TYPE_']] foreach item : [['dns_type', dns_type_list_txt, 'dns_type', 'DNS_TYPE_']]
fname = '@0@-from-name.gperf'.format(item[0]) fname = '@0@-from-name.gperf'.format(item[0])
gperf_file = custom_target( gperf_file = custom_target(
fname, fname,
input : item[1], input : item[1],
output : fname, output : fname,
command : [generate_dns_type_gperf, item[2], item[3], '@INPUT@'], command : [generate_dns_type_gperf, item[2], item[3], '@INPUT@'],
capture : true) capture : true)
fname = '@0@-from-name.h'.format(item[0]) fname = '@0@-from-name.h'.format(item[0])
target1 = custom_target( target1 = custom_target(
fname, fname,
input : gperf_file, input : gperf_file,
output : fname, output : fname,
command : [gperf, command : [gperf,
'-L', 'ANSI-C', '-t', '--ignore-case', '-L', 'ANSI-C', '-t', '--ignore-case',
'-N', 'lookup_@0@'.format(item[2]), '-N', 'lookup_@0@'.format(item[2]),
'-H', 'hash_@0@_name'.format(item[2]), '-H', 'hash_@0@_name'.format(item[2]),
'-p', '-C', '-p', '-C',
'@INPUT@'], '@INPUT@'],
capture : true) capture : true)
fname = '@0@-to-name.h'.format(item[0]) fname = '@0@-to-name.h'.format(item[0])
awkscript = '@0@-to-name.awk'.format(item[0]) awkscript = '@0@-to-name.awk'.format(item[0])
target2 = custom_target( target2 = custom_target(
fname, fname,
input : [awkscript, item[1]], input : [awkscript, item[1]],
output : fname, output : fname,
command : [awk, '-f', '@INPUT0@', '@INPUT1@'], command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
capture : true) capture : true)
dns_type_headers += [target1, target2] dns_type_headers += [target1, target2]
endforeach endforeach
resolved_gperf_c = custom_target( resolved_gperf_c = custom_target(
'resolved_gperf.c', 'resolved_gperf.c',
input : 'resolved-gperf.gperf', input : 'resolved-gperf.gperf',
output : 'resolved-gperf.c', output : 'resolved-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
systemd_resolved_sources = ( systemd_resolved_sources = (basic_dns_sources +
basic_dns_sources + [resolved_gperf_c] +
[resolved_gperf_c] + systemd_resolved_only_sources +
systemd_resolved_only_sources + dns_type_headers)
dns_type_headers)
systemd_resolve_sources = ( systemd_resolve_sources = (basic_dns_sources +
basic_dns_sources + systemd_resolve_only_sources +
systemd_resolve_only_sources + dns_type_headers)
dns_type_headers)
if conf.get('ENABLE_RESOLVED', 0) == 1 if conf.get('ENABLE_RESOLVED', 0) == 1
install_data('org.freedesktop.resolve1.conf', install_data('org.freedesktop.resolve1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.resolve1.service', install_data('org.freedesktop.resolve1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
resolved_conf = configure_file( resolved_conf = configure_file(
input : 'resolved.conf.in', input : 'resolved.conf.in',
output : 'resolved.conf', output : 'resolved.conf',
configuration : substs) configuration : substs)
install_data(resolved_conf, install_data(resolved_conf,
install_dir : pkgsysconfdir) install_dir : pkgsysconfdir)
endif endif
install_data('resolv.conf', install_data('resolv.conf',
install_dir : rootlibexecdir) install_dir : rootlibexecdir)
tests += [ tests += [
[['src/resolve/test-resolve-tables.c', [['src/resolve/test-resolve-tables.c',
basic_dns_sources, basic_dns_sources,
dns_type_headers, dns_type_headers,
'src/shared/test-tables.h'], 'src/shared/test-tables.h'],
[], [],
[libgcrypt, [libgcrypt,
libm], libm],
'ENABLE_RESOLVED'], 'ENABLE_RESOLVED'],
[['src/resolve/test-dns-packet.c', [['src/resolve/test-dns-packet.c',
basic_dns_sources, basic_dns_sources,
dns_type_headers], dns_type_headers],
[], [],
[libgcrypt, [libgcrypt,
libm], libm],
'ENABLE_RESOLVED'], 'ENABLE_RESOLVED'],
[['src/resolve/test-dnssec.c', [['src/resolve/test-dnssec.c',
basic_dns_sources, basic_dns_sources,
dns_type_headers], dns_type_headers],
[], [],
[libgcrypt, [libgcrypt,
libm], libm],
'ENABLE_RESOLVED'], 'ENABLE_RESOLVED'],
[['src/resolve/test-dnssec-complex.c', [['src/resolve/test-dnssec-complex.c',
'src/resolve/dns-type.c', 'src/resolve/dns-type.c',
dns_type_headers], dns_type_headers],
[], [],
[], [],
'ENABLE_RESOLVED', 'manual'], 'ENABLE_RESOLVED', 'manual'],
] ]

View File

@ -1,173 +1,171 @@
# -*- mode: meson -*-
shared_sources = ''' shared_sources = '''
acl-util.h acl-util.h
acpi-fpdt.c acpi-fpdt.c
acpi-fpdt.h acpi-fpdt.h
apparmor-util.c apparmor-util.c
apparmor-util.h apparmor-util.h
ask-password-api.c ask-password-api.c
ask-password-api.h ask-password-api.h
base-filesystem.c base-filesystem.c
base-filesystem.h base-filesystem.h
boot-timestamps.c boot-timestamps.c
boot-timestamps.h boot-timestamps.h
bus-unit-util.c bus-unit-util.c
bus-unit-util.h bus-unit-util.h
bus-util.c bus-util.c
bus-util.h bus-util.h
cgroup-show.c cgroup-show.c
cgroup-show.h cgroup-show.h
clean-ipc.c clean-ipc.c
clean-ipc.h clean-ipc.h
condition.c condition.c
condition.h condition.h
conf-parser.c conf-parser.c
conf-parser.h conf-parser.h
dev-setup.c dev-setup.c
dev-setup.h dev-setup.h
dissect-image.c dissect-image.c
dissect-image.h dissect-image.h
dns-domain.c dns-domain.c
dns-domain.h dns-domain.h
dropin.c dropin.c
dropin.h dropin.h
efivars.c efivars.c
efivars.h efivars.h
fdset.c fdset.c
fdset.h fdset.h
fstab-util.c fstab-util.c
fstab-util.h fstab-util.h
gcrypt-util.c gcrypt-util.c
gcrypt-util.h gcrypt-util.h
generator.c generator.c
generator.h generator.h
gpt.h gpt.h
ima-util.c ima-util.c
ima-util.h ima-util.h
import-util.c import-util.c
import-util.h import-util.h
initreq.h initreq.h
install.c install.c
install.h install.h
install-printf.c install-printf.c
install-printf.h install-printf.h
journal-util.c journal-util.c
journal-util.h journal-util.h
logs-show.c logs-show.c
logs-show.h logs-show.h
loop-util.c loop-util.c
loop-util.h loop-util.h
machine-image.c machine-image.c
machine-image.h machine-image.h
machine-pool.c machine-pool.c
machine-pool.h machine-pool.h
nsflags.c nsflags.c
nsflags.h nsflags.h
output-mode.c output-mode.c
output-mode.h output-mode.h
pager.c pager.c
pager.h pager.h
path-lookup.c path-lookup.c
path-lookup.h path-lookup.h
ptyfwd.c ptyfwd.c
ptyfwd.h ptyfwd.h
resolve-util.c resolve-util.c
resolve-util.h resolve-util.h
seccomp-util.h seccomp-util.h
sleep-config.c sleep-config.c
sleep-config.h sleep-config.h
spawn-ask-password-agent.c spawn-ask-password-agent.c
spawn-ask-password-agent.h spawn-ask-password-agent.h
spawn-polkit-agent.c spawn-polkit-agent.c
spawn-polkit-agent.h spawn-polkit-agent.h
specifier.c specifier.c
specifier.h specifier.h
switch-root.c switch-root.c
switch-root.h switch-root.h
sysctl-util.c sysctl-util.c
sysctl-util.h sysctl-util.h
tests.c tests.c
tests.h tests.h
udev-util.h udev-util.h
uid-range.c uid-range.c
uid-range.h uid-range.h
utmp-wtmp.h utmp-wtmp.h
vlan-util.c vlan-util.c
vlan-util.h vlan-util.h
volatile-util.c volatile-util.c
volatile-util.h volatile-util.h
watchdog.c watchdog.c
watchdog.h watchdog.h
'''.split() '''.split()
test_tables_h = files('test-tables.h') test_tables_h = files('test-tables.h')
shared_sources += [test_tables_h] shared_sources += [test_tables_h]
if conf.get('HAVE_ACL', 0) == 1 if conf.get('HAVE_ACL', 0) == 1
shared_sources += ['acl-util.c'] shared_sources += ['acl-util.c']
endif endif
if conf.get('HAVE_UTMP', 0) == 1 if conf.get('HAVE_UTMP', 0) == 1
shared_sources += ['utmp-wtmp.c'] shared_sources += ['utmp-wtmp.c']
endif endif
if conf.get('HAVE_SECCOMP', 0) == 1 if conf.get('HAVE_SECCOMP', 0) == 1
shared_sources += ['seccomp-util.c'] shared_sources += ['seccomp-util.c']
endif endif
libshared_name = 'systemd-shared-@0@'.format(meson.project_version()) libshared_name = 'systemd-shared-@0@'.format(meson.project_version())
libshared = shared_library( libshared = shared_library(
libshared_name, libshared_name,
shared_sources, shared_sources,
basic_sources, basic_sources,
journal_internal_sources, journal_internal_sources,
libsystemd_internal_sources, libsystemd_internal_sources,
include_directories : includes, include_directories : includes,
link_args : ['-shared'], link_args : ['-shared'],
c_args : ['-fvisibility=default'], c_args : ['-fvisibility=default'],
link_with : [libudev], link_with : [libudev],
dependencies : [threads, dependencies : [threads,
librt, librt,
libcap, libcap,
libacl, libacl,
libcryptsetup, libcryptsetup,
libiptc, libiptc,
libseccomp, libseccomp,
libselinux, libselinux,
libidn, libidn,
libxz, libxz,
liblz4, liblz4,
libblkid], libblkid],
install : true, install : true,
install_dir : rootlibexecdir) install_dir : rootlibexecdir)
libshared_static = static_library( libshared_static = static_library(
libshared_name, libshared_name,
shared_sources, shared_sources,
basic_sources, basic_sources,
include_directories : includes, include_directories : includes,
dependencies : [threads, dependencies : [threads,
librt, librt,
libcap, libcap,
libacl, libacl,
libcryptsetup, libcryptsetup,
libiptc, libiptc,
libseccomp, libseccomp,
libselinux, libselinux,
libidn, libidn,
libxz, libxz,
liblz4, liblz4,
libblkid]) libblkid])
if conf.get('HAVE_LIBIPTC', 0) == 1 if conf.get('HAVE_LIBIPTC', 0) == 1
libfirewall = static_library( libfirewall = static_library(
'firewall', 'firewall',
'firewall-util.h', 'firewall-util.h',
'firewall-util.c', 'firewall-util.c',
include_directories : includes, include_directories : includes,
dependencies : [libiptc]) dependencies : [libiptc])
else else
libfirewall = [] libfirewall = []
endif endif

View File

@ -1,9 +1,7 @@
# -*- mode: meson -*-
gen = configure_file( gen = configure_file(
input : 'systemd-sulogin-shell.in', input : 'systemd-sulogin-shell.in',
output : 'systemd-sulogin-shell', output : 'systemd-sulogin-shell',
configuration : substs) configuration : substs)
install_data(gen, install_data(gen,
install_dir : rootlibexecdir) install_dir : rootlibexecdir)

View File

@ -1,15 +1,13 @@
# -*- mode: meson -*-
_systemd_headers = ''' _systemd_headers = '''
sd-bus.h sd-bus.h
sd-bus-protocol.h sd-bus-protocol.h
sd-bus-vtable.h sd-bus-vtable.h
sd-daemon.h sd-daemon.h
sd-event.h sd-event.h
sd-id128.h sd-id128.h
sd-journal.h sd-journal.h
sd-login.h sd-login.h
sd-messages.h sd-messages.h
'''.split() '''.split()
# https://github.com/mesonbuild/meson/issues/1633 # https://github.com/mesonbuild/meson/issues/1633
@ -33,9 +31,9 @@ systemd_headers = files(_systemd_headers)
# sd-utf8.h # sd-utf8.h
install_headers( install_headers(
systemd_headers, systemd_headers,
'_sd-common.h', '_sd-common.h',
subdir : 'systemd') subdir : 'systemd')
############################################################ ############################################################
@ -45,12 +43,12 @@ opts = [[],
['-std=iso9899:1990']] ['-std=iso9899:1990']]
foreach header : _systemd_headers foreach header : _systemd_headers
foreach opt : opts foreach opt : opts
name = ''.join([header] + opt) name = ''.join([header] + opt)
test('cc-' + name, test('cc-' + name,
check_compilation_sh, check_compilation_sh,
args : cc.cmd_array() + ['-x', 'c'] + opt + args : cc.cmd_array() + ['-x', 'c'] + opt +
['-Werror', '-include', ['-Werror', '-include',
join_paths(meson.current_source_dir(), header)]) join_paths(meson.current_source_dir(), header)])
endforeach endforeach
endforeach endforeach

File diff suppressed because it is too large Load Diff

View File

@ -1,16 +1,14 @@
# -*- mode: meson -*-
if conf.get('ENABLE_TIMEDATED', 0) == 1 if conf.get('ENABLE_TIMEDATED', 0) == 1
install_data('org.freedesktop.timedate1.conf', install_data('org.freedesktop.timedate1.conf',
install_dir : dbuspolicydir) install_dir : dbuspolicydir)
install_data('org.freedesktop.timedate1.service', install_data('org.freedesktop.timedate1.service',
install_dir : dbussystemservicedir) install_dir : dbussystemservicedir)
custom_target( custom_target(
'org.freedesktop.timedate1.policy', 'org.freedesktop.timedate1.policy',
input : 'org.freedesktop.timedate1.policy.in', input : 'org.freedesktop.timedate1.policy.in',
output : 'org.freedesktop.timedate1.policy', output : 'org.freedesktop.timedate1.policy',
command : intltool_command, command : intltool_command,
install : install_polkit, install : install_polkit,
install_dir : polkitpolicydir) install_dir : polkitpolicydir)
endif endif

View File

@ -1,28 +1,26 @@
# -*- mode: meson -*-
systemd_timesyncd_sources = files(''' systemd_timesyncd_sources = files('''
timesyncd.c timesyncd.c
timesyncd-manager.c timesyncd-manager.c
timesyncd-manager.h timesyncd-manager.h
timesyncd-conf.c timesyncd-conf.c
timesyncd-conf.h timesyncd-conf.h
timesyncd-server.c timesyncd-server.c
timesyncd-server.h timesyncd-server.h
'''.split()) '''.split())
timesyncd_gperf_c = custom_target( timesyncd_gperf_c = custom_target(
'timesyncd-gperf.c', 'timesyncd-gperf.c',
input : 'timesyncd-gperf.gperf', input : 'timesyncd-gperf.gperf',
output : 'timesyncd-gperf.c', output : 'timesyncd-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
systemd_timesyncd_sources += [timesyncd_gperf_c] systemd_timesyncd_sources += [timesyncd_gperf_c]
if conf.get('ENABLE_TIMESYNCD', 0) == 1 if conf.get('ENABLE_TIMESYNCD', 0) == 1
timesyncd_conf = configure_file( timesyncd_conf = configure_file(
input : 'timesyncd.conf.in', input : 'timesyncd.conf.in',
output : 'timesyncd.conf', output : 'timesyncd.conf',
configuration : substs) configuration : substs)
install_data(timesyncd_conf, install_data(timesyncd_conf,
install_dir : pkgsysconfdir) install_dir : pkgsysconfdir)
endif endif

View File

@ -1,120 +1,118 @@
# -*- mode: meson -*-
udevadm_sources = files(''' udevadm_sources = files('''
udevadm.c udevadm.c
udevadm-info.c udevadm-info.c
udevadm-control.c udevadm-control.c
udevadm-monitor.c udevadm-monitor.c
udevadm-hwdb.c udevadm-hwdb.c
udevadm-settle.c udevadm-settle.c
udevadm-trigger.c udevadm-trigger.c
udevadm-test.c udevadm-test.c
udevadm-test-builtin.c udevadm-test-builtin.c
udevadm-util.c udevadm-util.c
udevadm-util.h udevadm-util.h
'''.split()) '''.split())
systemd_udevd_sources = files('udevd.c') systemd_udevd_sources = files('udevd.c')
libudev_core_sources = ''' libudev_core_sources = '''
udev.h udev.h
udev-event.c udev-event.c
udev-watch.c udev-watch.c
udev-node.c udev-node.c
udev-rules.c udev-rules.c
udev-ctrl.c udev-ctrl.c
udev-builtin.c udev-builtin.c
udev-builtin-btrfs.c udev-builtin-btrfs.c
udev-builtin-hwdb.c udev-builtin-hwdb.c
udev-builtin-input_id.c udev-builtin-input_id.c
udev-builtin-keyboard.c udev-builtin-keyboard.c
udev-builtin-net_id.c udev-builtin-net_id.c
udev-builtin-net_setup_link.c udev-builtin-net_setup_link.c
udev-builtin-path_id.c udev-builtin-path_id.c
udev-builtin-usb_id.c udev-builtin-usb_id.c
net/link-config.c net/link-config.c
net/link-config.h net/link-config.h
net/ethtool-util.c net/ethtool-util.c
net/ethtool-util.h net/ethtool-util.h
'''.split() '''.split()
if conf.get('HAVE_KMOD', 0) == 1 if conf.get('HAVE_KMOD', 0) == 1
libudev_core_sources += ['udev-builtin-kmod.c'] libudev_core_sources += ['udev-builtin-kmod.c']
endif endif
if conf.get('HAVE_BLKID', 0) == 1 if conf.get('HAVE_BLKID', 0) == 1
libudev_core_sources += ['udev-builtin-blkid.c'] libudev_core_sources += ['udev-builtin-blkid.c']
endif endif
if conf.get('HAVE_ACL', 0) == 1 if conf.get('HAVE_ACL', 0) == 1
libudev_core_sources += ['udev-builtin-uaccess.c', libudev_core_sources += ['udev-builtin-uaccess.c',
logind_acl_c, logind_acl_c,
sd_login_c] sd_login_c]
endif endif
############################################################ ############################################################
generate_keyboard_keys_list = find_program('generate-keyboard-keys-list.sh') generate_keyboard_keys_list = find_program('generate-keyboard-keys-list.sh')
keyboard_keys_list_txt = custom_target( keyboard_keys_list_txt = custom_target(
'keyboard-keys-list.txt', 'keyboard-keys-list.txt',
output : 'keyboard-keys-list.txt', output : 'keyboard-keys-list.txt',
command : [generate_keyboard_keys_list, cpp], command : [generate_keyboard_keys_list, cpp],
capture : true) capture : true)
fname = 'keyboard-keys-from-name.gperf' fname = 'keyboard-keys-from-name.gperf'
gperf_file = custom_target( gperf_file = custom_target(
fname, fname,
input : keyboard_keys_list_txt, input : keyboard_keys_list_txt,
output : fname, output : fname,
command : [generate_gperfs, 'key', '', '@INPUT@'], command : [generate_gperfs, 'key', '', '@INPUT@'],
capture : true) capture : true)
fname = 'keyboard-keys-from-name.h' fname = 'keyboard-keys-from-name.h'
keyboard_keys_from_name_h = custom_target( keyboard_keys_from_name_h = custom_target(
fname, fname,
input : gperf_file, input : gperf_file,
output : fname, output : fname,
command : [gperf, command : [gperf,
'-L', 'ANSI-C', '-t', '--ignore-case', '-L', 'ANSI-C', '-t', '--ignore-case',
'-N', 'keyboard_lookup_key', '-N', 'keyboard_lookup_key',
'-H', 'hash_key_name', '-H', 'hash_key_name',
'-p', '-C', '-p', '-C',
'@INPUT@'], '@INPUT@'],
capture : true) capture : true)
############################################################ ############################################################
link_config_gperf_c = custom_target( link_config_gperf_c = custom_target(
'link-config-gperf.c', 'link-config-gperf.c',
input : 'net/link-config-gperf.gperf', input : 'net/link-config-gperf.gperf',
output : 'link-config-gperf.c', output : 'link-config-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
############################################################ ############################################################
if get_option('link-udev-shared') if get_option('link-udev-shared')
libudev_link_with = [libshared] libudev_link_with = [libshared]
rpath = rootlibexecdir rpath = rootlibexecdir
else else
libudev_link_with = [libshared_static, libudev_link_with = [libshared_static,
libsystemd_internal] libsystemd_internal]
rpath = '' rpath = ''
endif endif
libudev_internal = static_library( libudev_internal = static_library(
'udev', 'udev',
libudev_sources, libudev_sources,
include_directories : includes, include_directories : includes,
link_with : libudev_link_with) link_with : libudev_link_with)
libudev_core_includes = [includes, include_directories('net')] libudev_core_includes = [includes, include_directories('net')]
libudev_core = static_library( libudev_core = static_library(
'udev-core', 'udev-core',
libudev_core_sources, libudev_core_sources,
link_config_gperf_c, link_config_gperf_c,
keyboard_keys_from_name_h, keyboard_keys_from_name_h,
include_directories : libudev_core_includes, include_directories : libudev_core_includes,
link_with : libudev_link_with) link_with : libudev_link_with)
foreach prog : [['ata_id/ata_id.c'], foreach prog : [['ata_id/ata_id.c'],
['cdrom_id/cdrom_id.c'], ['cdrom_id/cdrom_id.c'],
@ -128,22 +126,22 @@ foreach prog : [['ata_id/ata_id.c'],
'mtd_probe/mtd_probe.h', 'mtd_probe/mtd_probe.h',
'mtd_probe/probe_smartmedia.c']] 'mtd_probe/probe_smartmedia.c']]
executable(prog[0].split('/')[0], executable(prog[0].split('/')[0],
prog, prog,
include_directories : includes, include_directories : includes,
link_with : [libudev_internal], link_with : [libudev_internal],
install_rpath : rpath, install_rpath : rpath,
install : true, install : true,
install_dir : udevlibexecdir) install_dir : udevlibexecdir)
endforeach endforeach
install_data('udev.conf', install_data('udev.conf',
install_dir : join_paths(sysconfdir, 'udev')) install_dir : join_paths(sysconfdir, 'udev'))
udev_pc = configure_file( udev_pc = configure_file(
input : 'udev.pc.in', input : 'udev.pc.in',
output : 'udev.pc', output : 'udev.pc',
configuration : substs) configuration : substs)
install_data(udev_pc, install_data(udev_pc,
install_dir : pkgconfigdatadir) install_dir : pkgconfigdatadir)

View File

@ -1,10 +1,8 @@
# -*- mode: meson -*-
if conf.get('ENABLE_VCONSOLE', 0) == 1 if conf.get('ENABLE_VCONSOLE', 0) == 1
vconsole_rules = configure_file( vconsole_rules = configure_file(
input : '90-vconsole.rules.in', input : '90-vconsole.rules.in',
output : '90-vconsole.rules', output : '90-vconsole.rules',
configuration : substs) configuration : substs)
install_data(vconsole_rules, install_data(vconsole_rules,
install_dir : udevrulesdir) install_dir : udevrulesdir)
endif endif

View File

@ -1,22 +1,20 @@
# -*- mode: meson -*-
install_data( install_data(
'50-default.conf', '50-default.conf',
install_dir : sysctldir) install_dir : sysctldir)
in_files = [] in_files = []
if conf.get('ENABLE_COREDUMP', 0) == 1 if conf.get('ENABLE_COREDUMP', 0) == 1
in_files += ['50-coredump.conf'] in_files += ['50-coredump.conf']
endif endif
foreach file : in_files foreach file : in_files
gen = configure_file( gen = configure_file(
input : file + '.in', input : file + '.in',
output : file, output : file,
configuration : substs) configuration : substs)
install_data(gen, install_data(gen,
install_dir : sysctldir) install_dir : sysctldir)
endforeach endforeach
meson.add_install_script('sh', '-c', meson.add_install_script('sh', '-c',

View File

@ -1,33 +1,31 @@
# -*- mode: meson -*-
in_files = ['basic.conf'] in_files = ['basic.conf']
enable_sysusers = conf.get('ENABLE_SYSUSERS', 0) == 1 enable_sysusers = conf.get('ENABLE_SYSUSERS', 0) == 1
foreach file : in_files foreach file : in_files
gen = configure_file( gen = configure_file(
input : file + '.in', input : file + '.in',
output : file, output : file,
configuration : substs) configuration : substs)
if enable_sysusers if enable_sysusers
install_data(gen, install_data(gen,
install_dir : sysusersdir) install_dir : sysusersdir)
endif endif
endforeach endforeach
m4_files = ['systemd.conf'] m4_files = ['systemd.conf']
if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_MICROHTTPD', 0) == 1 if conf.get('ENABLE_REMOTE', 0) == 1 and conf.get('HAVE_MICROHTTPD', 0) == 1
m4_files += ['systemd-remote.conf'] m4_files += ['systemd-remote.conf']
endif endif
foreach file : m4_files foreach file : m4_files
custom_target( custom_target(
'sysusers.d/' + file, 'sysusers.d/' + file,
input : file + '.m4', input : file + '.m4',
output: file, output: file,
command : [m4, '-P'] + m4_defines + ['@INPUT@'], command : [m4, '-P'] + m4_defines + ['@INPUT@'],
capture : true, capture : true,
install : enable_sysusers, install : enable_sysusers,
install_dir : sysusersdir) install_dir : sysusersdir)
endforeach endforeach

View File

@ -1,166 +1,166 @@
test_data_files = ''' test_data_files = '''
a.service a.service
basic.target basic.target
b.service b.service
c.service c.service
daughter.service daughter.service
d.service d.service
end.service end.service
e.service e.service
f.service f.service
grandchild.service grandchild.service
g.service g.service
hello-after-sleep.target hello-after-sleep.target
hello.service hello.service
h.service h.service
parent-deep.slice parent-deep.slice
parent.slice parent.slice
sched_idle_bad.service sched_idle_bad.service
sched_idle_ok.service sched_idle_ok.service
sched_rr_bad.service sched_rr_bad.service
sched_rr_change.service sched_rr_change.service
sched_rr_ok.service sched_rr_ok.service
shutdown.target shutdown.target
sleep.service sleep.service
sockets.target sockets.target
son.service son.service
sysinit.target sysinit.target
testsuite.target testsuite.target
timers.target timers.target
unstoppable.service unstoppable.service
test-path/paths.target test-path/paths.target
test-path/basic.target test-path/basic.target
test-path/sysinit.target test-path/sysinit.target
test-path/path-changed.service test-path/path-changed.service
test-path/path-directorynotempty.service test-path/path-directorynotempty.service
test-path/path-existsglob.service test-path/path-existsglob.service
test-path/path-exists.service test-path/path-exists.service
test-path/path-makedirectory.service test-path/path-makedirectory.service
test-path/path-modified.service test-path/path-modified.service
test-path/path-mycustomunit.service test-path/path-mycustomunit.service
test-path/path-service.service test-path/path-service.service
test-path/path-changed.path test-path/path-changed.path
test-path/path-directorynotempty.path test-path/path-directorynotempty.path
test-path/path-existsglob.path test-path/path-existsglob.path
test-path/path-exists.path test-path/path-exists.path
test-path/path-makedirectory.path test-path/path-makedirectory.path
test-path/path-modified.path test-path/path-modified.path
test-path/path-unit.path test-path/path-unit.path
test-execute/exec-environment-empty.service test-execute/exec-environment-empty.service
test-execute/exec-environment-multiple.service test-execute/exec-environment-multiple.service
test-execute/exec-environment.service test-execute/exec-environment.service
test-execute/exec-passenvironment-absent.service test-execute/exec-passenvironment-absent.service
test-execute/exec-passenvironment-empty.service test-execute/exec-passenvironment-empty.service
test-execute/exec-passenvironment-repeated.service test-execute/exec-passenvironment-repeated.service
test-execute/exec-passenvironment.service test-execute/exec-passenvironment.service
test-execute/exec-group.service test-execute/exec-group.service
test-execute/exec-group-nfsnobody.service test-execute/exec-group-nfsnobody.service
test-execute/exec-supplementarygroups.service test-execute/exec-supplementarygroups.service
test-execute/exec-supplementarygroups-single-group.service test-execute/exec-supplementarygroups-single-group.service
test-execute/exec-supplementarygroups-single-group-user.service test-execute/exec-supplementarygroups-single-group-user.service
test-execute/exec-supplementarygroups-multiple-groups-default-group-user.service test-execute/exec-supplementarygroups-multiple-groups-default-group-user.service
test-execute/exec-supplementarygroups-multiple-groups-withgid.service test-execute/exec-supplementarygroups-multiple-groups-withgid.service
test-execute/exec-supplementarygroups-multiple-groups-withuid.service test-execute/exec-supplementarygroups-multiple-groups-withuid.service
test-execute/exec-dynamicuser-fixeduser.service test-execute/exec-dynamicuser-fixeduser.service
test-execute/exec-dynamicuser-fixeduser-one-supplementarygroup.service test-execute/exec-dynamicuser-fixeduser-one-supplementarygroup.service
test-execute/exec-dynamicuser-supplementarygroups.service test-execute/exec-dynamicuser-supplementarygroups.service
test-execute/exec-ignoresigpipe-no.service test-execute/exec-ignoresigpipe-no.service
test-execute/exec-ignoresigpipe-yes.service test-execute/exec-ignoresigpipe-yes.service
test-execute/exec-personality-x86-64.service test-execute/exec-personality-x86-64.service
test-execute/exec-personality-x86.service test-execute/exec-personality-x86.service
test-execute/exec-personality-s390.service test-execute/exec-personality-s390.service
test-execute/exec-personality-ppc64.service test-execute/exec-personality-ppc64.service
test-execute/exec-personality-ppc64le.service test-execute/exec-personality-ppc64le.service
test-execute/exec-personality-aarch64.service test-execute/exec-personality-aarch64.service
test-execute/exec-privatedevices-no.service test-execute/exec-privatedevices-no.service
test-execute/exec-privatedevices-yes.service test-execute/exec-privatedevices-yes.service
test-execute/exec-privatedevices-no-capability-mknod.service test-execute/exec-privatedevices-no-capability-mknod.service
test-execute/exec-privatedevices-yes-capability-mknod.service test-execute/exec-privatedevices-yes-capability-mknod.service
test-execute/exec-protectkernelmodules-no-capabilities.service test-execute/exec-protectkernelmodules-no-capabilities.service
test-execute/exec-protectkernelmodules-yes-capabilities.service test-execute/exec-protectkernelmodules-yes-capabilities.service
test-execute/exec-protectkernelmodules-yes-mount-propagation.service test-execute/exec-protectkernelmodules-yes-mount-propagation.service
test-execute/exec-privatetmp-no.service test-execute/exec-privatetmp-no.service
test-execute/exec-privatetmp-yes.service test-execute/exec-privatetmp-yes.service
test-execute/exec-readonlypaths.service test-execute/exec-readonlypaths.service
test-execute/exec-readonlypaths-mount-propagation.service test-execute/exec-readonlypaths-mount-propagation.service
test-execute/exec-readwritepaths-mount-propagation.service test-execute/exec-readwritepaths-mount-propagation.service
test-execute/exec-inaccessiblepaths-mount-propagation.service test-execute/exec-inaccessiblepaths-mount-propagation.service
test-execute/exec-spec-interpolation.service test-execute/exec-spec-interpolation.service
test-execute/exec-systemcallerrornumber.service test-execute/exec-systemcallerrornumber.service
test-execute/exec-systemcallfilter-failing2.service test-execute/exec-systemcallfilter-failing2.service
test-execute/exec-systemcallfilter-failing.service test-execute/exec-systemcallfilter-failing.service
test-execute/exec-systemcallfilter-not-failing2.service test-execute/exec-systemcallfilter-not-failing2.service
test-execute/exec-systemcallfilter-not-failing.service test-execute/exec-systemcallfilter-not-failing.service
test-execute/exec-systemcallfilter-system-user.service test-execute/exec-systemcallfilter-system-user.service
test-execute/exec-systemcallfilter-system-user-nfsnobody.service test-execute/exec-systemcallfilter-system-user-nfsnobody.service
test-execute/exec-user.service test-execute/exec-user.service
test-execute/exec-user-nfsnobody.service test-execute/exec-user-nfsnobody.service
test-execute/exec-workingdirectory.service test-execute/exec-workingdirectory.service
test-execute/exec-umask-0177.service test-execute/exec-umask-0177.service
test-execute/exec-umask-default.service test-execute/exec-umask-default.service
test-execute/exec-privatenetwork-yes.service test-execute/exec-privatenetwork-yes.service
test-execute/exec-environmentfile.service test-execute/exec-environmentfile.service
test-execute/exec-oomscoreadjust-positive.service test-execute/exec-oomscoreadjust-positive.service
test-execute/exec-oomscoreadjust-negative.service test-execute/exec-oomscoreadjust-negative.service
test-execute/exec-ioschedulingclass-best-effort.service test-execute/exec-ioschedulingclass-best-effort.service
test-execute/exec-ioschedulingclass-idle.service test-execute/exec-ioschedulingclass-idle.service
test-execute/exec-ioschedulingclass-none.service test-execute/exec-ioschedulingclass-none.service
test-execute/exec-ioschedulingclass-realtime.service test-execute/exec-ioschedulingclass-realtime.service
test-execute/exec-capabilityboundingset-invert.service test-execute/exec-capabilityboundingset-invert.service
test-execute/exec-capabilityboundingset-merge.service test-execute/exec-capabilityboundingset-merge.service
test-execute/exec-capabilityboundingset-reset.service test-execute/exec-capabilityboundingset-reset.service
test-execute/exec-capabilityboundingset-simple.service test-execute/exec-capabilityboundingset-simple.service
test-execute/exec-capabilityambientset.service test-execute/exec-capabilityambientset.service
test-execute/exec-capabilityambientset-nfsnobody.service test-execute/exec-capabilityambientset-nfsnobody.service
test-execute/exec-capabilityambientset-merge.service test-execute/exec-capabilityambientset-merge.service
test-execute/exec-capabilityambientset-merge-nfsnobody.service test-execute/exec-capabilityambientset-merge-nfsnobody.service
test-execute/exec-runtimedirectory.service test-execute/exec-runtimedirectory.service
test-execute/exec-runtimedirectory-mode.service test-execute/exec-runtimedirectory-mode.service
test-execute/exec-runtimedirectory-owner.service test-execute/exec-runtimedirectory-owner.service
test-execute/exec-runtimedirectory-owner-nfsnobody.service test-execute/exec-runtimedirectory-owner-nfsnobody.service
test-execute/exec-restrict-namespaces-no.service test-execute/exec-restrict-namespaces-no.service
test-execute/exec-restrict-namespaces-yes.service test-execute/exec-restrict-namespaces-yes.service
test-execute/exec-restrict-namespaces-mnt.service test-execute/exec-restrict-namespaces-mnt.service
test-execute/exec-restrict-namespaces-mnt-blacklist.service test-execute/exec-restrict-namespaces-mnt-blacklist.service
test-execute/exec-read-only-path-succeed.service test-execute/exec-read-only-path-succeed.service
test-execute/exec-privatedevices-yes-capability-sys-rawio.service test-execute/exec-privatedevices-yes-capability-sys-rawio.service
test-execute/exec-privatedevices-no-capability-sys-rawio.service test-execute/exec-privatedevices-no-capability-sys-rawio.service
bus-policy/hello.conf bus-policy/hello.conf
bus-policy/methods.conf bus-policy/methods.conf
bus-policy/ownerships.conf bus-policy/ownerships.conf
bus-policy/signals.conf bus-policy/signals.conf
bus-policy/check-own-rules.conf bus-policy/check-own-rules.conf
bus-policy/many-rules.conf bus-policy/many-rules.conf
bus-policy/test.conf bus-policy/test.conf
hwdb/10-bad.hwdb hwdb/10-bad.hwdb
journal-data/journal-1.txt journal-data/journal-1.txt
journal-data/journal-2.txt journal-data/journal-2.txt
'''.split() '''.split()
if conf.get('ENABLE_RESOLVED', 0) == 1 if conf.get('ENABLE_RESOLVED', 0) == 1
test_data_files += ''' test_data_files += '''
test-resolve/_openpgpkey.fedoraproject.org.pkts test-resolve/_openpgpkey.fedoraproject.org.pkts
test-resolve/fedoraproject.org.pkts test-resolve/fedoraproject.org.pkts
test-resolve/gandi.net.pkts test-resolve/gandi.net.pkts
test-resolve/google.com.pkts test-resolve/google.com.pkts
test-resolve/root.pkts test-resolve/root.pkts
test-resolve/sw1a1aa-sw1a2aa-sw1a2ab-sw1a2ac.find.me.uk.pkts test-resolve/sw1a1aa-sw1a2aa-sw1a2ab-sw1a2ac.find.me.uk.pkts
test-resolve/teamits.com.pkts test-resolve/teamits.com.pkts
test-resolve/zbyszek@fedoraproject.org.pkts test-resolve/zbyszek@fedoraproject.org.pkts
test-resolve/_443._tcp.fedoraproject.org.pkts test-resolve/_443._tcp.fedoraproject.org.pkts
test-resolve/kyhwana.org.pkts test-resolve/kyhwana.org.pkts
test-resolve/fake-caa.pkts test-resolve/fake-caa.pkts
'''.split() '''.split()
endif endif
if install_tests if install_tests
foreach file : test_data_files foreach file : test_data_files
subdir = file.split('/')[0] subdir = file.split('/')[0]
if subdir == file if subdir == file
subdir = '' subdir = ''
endif endif
install_data(file, install_data(file,
install_dir : testsdir + '/testdata/' + subdir) install_dir : testsdir + '/testdata/' + subdir)
endforeach endforeach
endif endif

View File

@ -1,5 +1,3 @@
# -*- mode: meson -*-
enable_tmpfiles = conf.get('ENABLE_TMPFILES', 0) == 1 enable_tmpfiles = conf.get('ENABLE_TMPFILES', 0) == 1
tmpfiles = [['home.conf', ''], tmpfiles = [['home.conf', ''],
@ -14,31 +12,32 @@ tmpfiles = [['home.conf', ''],
] ]
foreach pair : tmpfiles foreach pair : tmpfiles
if not enable_tmpfiles if not enable_tmpfiles
# do nothing # do nothing
elif pair[1] == '' or conf.get(pair[1], 0) == 1 elif pair[1] == '' or conf.get(pair[1], 0) == 1
install_data(pair[0], install_dir : tmpfilesdir) install_data(pair[0], install_dir : tmpfilesdir)
else else
message('Not installing tmpfiles.d/@0@ because @1@ is @2@'.format( message('Not installing tmpfiles.d/@0@ because @1@ is @2@'
pair[0], pair[1], conf.get(pair[1], 0))) .format(pair[0], pair[1], conf.get(pair[1], 0)))
endif endif
endforeach endforeach
m4_files = ['etc.conf', m4_files = ['etc.conf',
'systemd.conf'] 'systemd.conf']
foreach file : m4_files foreach file : m4_files
custom_target( custom_target(
'tmpfiles.d/' + file, 'tmpfiles.d/' + file,
input : file + '.m4', input : file + '.m4',
output: file, output: file,
command : [m4, '-P'] + m4_defines + ['@INPUT@'], command : [m4, '-P'] + m4_defines + ['@INPUT@'],
capture : true, capture : true,
install : enable_tmpfiles, install : enable_tmpfiles,
install_dir : tmpfilesdir) install_dir : tmpfilesdir)
endforeach endforeach
if enable_tmpfiles if enable_tmpfiles
meson.add_install_script('sh', '-c', meson.add_install_script(
mkdir_p.format(join_paths(sysconfdir, 'tmpfiles.d'))) 'sh', '-c',
mkdir_p.format(join_paths(sysconfdir, 'tmpfiles.d')))
endif endif

View File

@ -1,313 +1,312 @@
# -*- mode: meson -*-
units = [ units = [
['basic.target', ''], ['basic.target', ''],
['bluetooth.target', ''], ['bluetooth.target', ''],
['cryptsetup-pre.target', 'HAVE_LIBCRYPTSETUP'], ['cryptsetup-pre.target', 'HAVE_LIBCRYPTSETUP'],
['cryptsetup.target', 'HAVE_LIBCRYPTSETUP', ['cryptsetup.target', 'HAVE_LIBCRYPTSETUP',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['dev-hugepages.mount', '', ['dev-hugepages.mount', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['dev-mqueue.mount', '', ['dev-mqueue.mount', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['emergency.target', ''], ['emergency.target', ''],
['exit.target', ''], ['exit.target', ''],
['final.target', ''], ['final.target', ''],
['getty.target', '', ['getty.target', '',
'multi-user.target.wants/'], 'multi-user.target.wants/'],
['graphical.target', '', ['graphical.target', '',
'runlevel5.target default.target'], 'runlevel5.target default.target'],
['halt.target', ''], ['halt.target', ''],
['hibernate.target', 'ENABLE_HIBERNATE'], ['hibernate.target', 'ENABLE_HIBERNATE'],
['hybrid-sleep.target', 'ENABLE_HIBERNATE'], ['hybrid-sleep.target', 'ENABLE_HIBERNATE'],
['initrd-fs.target', ''], ['initrd-fs.target', ''],
['initrd-root-device.target', ''], ['initrd-root-device.target', ''],
['initrd-root-fs.target', ''], ['initrd-root-fs.target', ''],
['initrd-switch-root.target', ''], ['initrd-switch-root.target', ''],
['initrd.target', ''], ['initrd.target', ''],
['kexec.target', ''], ['kexec.target', ''],
['ldconfig.service', 'ENABLE_LDCONFIG', ['ldconfig.service', 'ENABLE_LDCONFIG',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['local-fs-pre.target', ''], ['local-fs-pre.target', ''],
['local-fs.target', ''], ['local-fs.target', ''],
['machine.slice', 'ENABLE_MACHINED'], ['machine.slice', 'ENABLE_MACHINED'],
['machines.target', 'ENABLE_MACHINED', ['machines.target', 'ENABLE_MACHINED',
join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')],
['multi-user.target', '', ['multi-user.target', '',
'runlevel2.target runlevel3.target runlevel4.target'], 'runlevel2.target runlevel3.target runlevel4.target'],
['network-online.target', ''], ['network-online.target', ''],
['network-pre.target', ''], ['network-pre.target', ''],
['network.target', ''], ['network.target', ''],
['nss-lookup.target', ''], ['nss-lookup.target', ''],
['nss-user-lookup.target', ''], ['nss-user-lookup.target', ''],
['paths.target', ''], ['paths.target', ''],
['poweroff.target', '', ['poweroff.target', '',
'runlevel0.target'], 'runlevel0.target'],
['printer.target', ''], ['printer.target', ''],
['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT', ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'], ['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'],
['reboot.target', '', ['reboot.target', '',
'runlevel6.target ctrl-alt-del.target'], 'runlevel6.target ctrl-alt-del.target'],
['remote-fs-pre.target', ''], ['remote-fs-pre.target', ''],
['remote-fs.target', '', ['remote-fs.target', '',
join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')],
['rescue.target', '', ['rescue.target', '',
'runlevel1.target'], 'runlevel1.target'],
['rpcbind.target', ''], ['rpcbind.target', ''],
['shutdown.target', ''], ['shutdown.target', ''],
['sigpwr.target', ''], ['sigpwr.target', ''],
['sleep.target', ''], ['sleep.target', ''],
['slices.target', ''], ['slices.target', ''],
['smartcard.target', ''], ['smartcard.target', ''],
['sockets.target', ''], ['sockets.target', ''],
['sound.target', ''], ['sound.target', ''],
['suspend.target', ''], ['suspend.target', ''],
['swap.target', ''], ['swap.target', ''],
['sys-fs-fuse-connections.mount', '', ['sys-fs-fuse-connections.mount', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['sys-kernel-config.mount', '', ['sys-kernel-config.mount', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['sys-kernel-debug.mount', '', ['sys-kernel-debug.mount', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['sysinit.target', ''], ['sysinit.target', ''],
['syslog.socket', ''], ['syslog.socket', ''],
['system-update.target', ''], ['system-update.target', ''],
['system.slice', ''], ['system.slice', ''],
['systemd-ask-password-console.path', '', ['systemd-ask-password-console.path', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-ask-password-wall.path', '', ['systemd-ask-password-wall.path', '',
'multi-user.target.wants/'], 'multi-user.target.wants/'],
['systemd-coredump.socket', 'ENABLE_COREDUMP', ['systemd-coredump.socket', 'ENABLE_COREDUMP',
'sockets.target.wants/'], 'sockets.target.wants/'],
['systemd-initctl.socket', '', ['systemd-initctl.socket', '',
'sockets.target.wants/'], 'sockets.target.wants/'],
['systemd-journal-gatewayd.socket', ''], ['systemd-journal-gatewayd.socket', ''],
['systemd-journal-remote.socket', ''], ['systemd-journal-remote.socket', ''],
['systemd-journald-audit.socket', '', ['systemd-journald-audit.socket', '',
'sockets.target.wants/'], 'sockets.target.wants/'],
['systemd-journald-dev-log.socket', '', ['systemd-journald-dev-log.socket', '',
'sockets.target.wants/'], 'sockets.target.wants/'],
['systemd-journald.socket', '', ['systemd-journald.socket', '',
'sockets.target.wants/'], 'sockets.target.wants/'],
['systemd-networkd.socket', '', ['systemd-networkd.socket', '',
join_paths(pkgsysconfdir, 'system/sockets.target.wants/')], join_paths(pkgsysconfdir, 'system/sockets.target.wants/')],
['systemd-rfkill.socket', 'ENABLE_RFKILL'], ['systemd-rfkill.socket', 'ENABLE_RFKILL'],
['systemd-tmpfiles-clean.timer', '', ['systemd-tmpfiles-clean.timer', '',
'timers.target.wants/'], 'timers.target.wants/'],
['systemd-udevd-control.socket', '', ['systemd-udevd-control.socket', '',
'sockets.target.wants/'], 'sockets.target.wants/'],
['systemd-udevd-kernel.socket', '', ['systemd-udevd-kernel.socket', '',
'sockets.target.wants/'], 'sockets.target.wants/'],
['time-sync.target', ''], ['time-sync.target', ''],
['timers.target', ''], ['timers.target', ''],
['umount.target', ''], ['umount.target', ''],
['user.slice', ''], ['user.slice', ''],
['var-lib-machines.mount', '', ['var-lib-machines.mount', '',
'local-fs.target.wants/'], 'local-fs.target.wants/'],
] ]
in_units = [ in_units = [
['debug-shell.service', ''], ['debug-shell.service', ''],
['emergency.service', ''], ['emergency.service', ''],
['halt-local.service', 'HAVE_SYSV_COMPAT'], ['halt-local.service', 'HAVE_SYSV_COMPAT'],
['initrd-cleanup.service', ''], ['initrd-cleanup.service', ''],
['initrd-parse-etc.service', ''], ['initrd-parse-etc.service', ''],
['initrd-switch-root.service', ''], ['initrd-switch-root.service', ''],
['initrd-udevadm-cleanup-db.service', ''], ['initrd-udevadm-cleanup-db.service', ''],
['kmod-static-nodes.service', 'HAVE_KMOD ENABLE_TMPFILES', ['kmod-static-nodes.service', 'HAVE_KMOD ENABLE_TMPFILES',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['quotaon.service', 'ENABLE_QUOTACHECK'], ['quotaon.service', 'ENABLE_QUOTACHECK'],
['rc-local.service', 'HAVE_SYSV_COMPAT'], ['rc-local.service', 'HAVE_SYSV_COMPAT'],
['rescue.service', ''], ['rescue.service', ''],
['system-update-cleanup.service', ''], ['system-update-cleanup.service', ''],
['systemd-ask-password-console.service', ''], ['systemd-ask-password-console.service', ''],
['systemd-ask-password-wall.service', ''], ['systemd-ask-password-wall.service', ''],
['systemd-backlight@.service', 'ENABLE_BACKLIGHT'], ['systemd-backlight@.service', 'ENABLE_BACKLIGHT'],
['systemd-binfmt.service', 'ENABLE_BINFMT', ['systemd-binfmt.service', 'ENABLE_BINFMT',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-coredump@.service', 'ENABLE_COREDUMP'], ['systemd-coredump@.service', 'ENABLE_COREDUMP'],
['systemd-exit.service', ''], ['systemd-exit.service', ''],
['systemd-firstboot.service', 'ENABLE_FIRSTBOOT', ['systemd-firstboot.service', 'ENABLE_FIRSTBOOT',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-fsck-root.service', ''], ['systemd-fsck-root.service', ''],
['systemd-fsck@.service', ''], ['systemd-fsck@.service', ''],
['systemd-halt.service', ''], ['systemd-halt.service', ''],
['systemd-hibernate-resume@.service', 'ENABLE_HIBERNATE'], ['systemd-hibernate-resume@.service', 'ENABLE_HIBERNATE'],
['systemd-hibernate.service', 'ENABLE_HIBERNATE'], ['systemd-hibernate.service', 'ENABLE_HIBERNATE'],
['systemd-hybrid-sleep.service', 'ENABLE_HIBERNATE'], ['systemd-hybrid-sleep.service', 'ENABLE_HIBERNATE'],
['systemd-hostnamed.service', 'ENABLE_HOSTNAMED', ['systemd-hostnamed.service', 'ENABLE_HOSTNAMED',
'dbus-org.freedesktop.hostname1.service'], 'dbus-org.freedesktop.hostname1.service'],
['systemd-hwdb-update.service', 'ENABLE_HWDB', ['systemd-hwdb-update.service', 'ENABLE_HWDB',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-importd.service', 'ENABLE_IMPORTD', ['systemd-importd.service', 'ENABLE_IMPORTD',
'dbus-org.freedesktop.import1.service'], 'dbus-org.freedesktop.import1.service'],
['systemd-initctl.service', ''], ['systemd-initctl.service', ''],
['systemd-journal-catalog-update.service', '', ['systemd-journal-catalog-update.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-journal-flush.service', '', ['systemd-journal-flush.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-journal-gatewayd.service', 'ENABLE_REMOTE HAVE_MICROHTTPD'], ['systemd-journal-gatewayd.service', 'ENABLE_REMOTE HAVE_MICROHTTPD'],
['systemd-journal-remote.service', 'ENABLE_REMOTE HAVE_MICROHTTPD'], ['systemd-journal-remote.service', 'ENABLE_REMOTE HAVE_MICROHTTPD'],
['systemd-journal-upload.service', 'ENABLE_REMOTE HAVE_LIBCURL'], ['systemd-journal-upload.service', 'ENABLE_REMOTE HAVE_LIBCURL'],
['systemd-journald.service', '', ['systemd-journald.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-kexec.service', ''], ['systemd-kexec.service', ''],
['systemd-localed.service', 'ENABLE_LOCALED', ['systemd-localed.service', 'ENABLE_LOCALED',
'dbus-org.freedesktop.locale1.service'], 'dbus-org.freedesktop.locale1.service'],
['systemd-logind.service', 'ENABLE_LOGIND', ['systemd-logind.service', 'ENABLE_LOGIND',
'multi-user.target.wants/ dbus-org.freedesktop.login1.service'], 'multi-user.target.wants/ dbus-org.freedesktop.login1.service'],
['systemd-machine-id-commit.service', '', ['systemd-machine-id-commit.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-machined.service', 'ENABLE_MACHINED', ['systemd-machined.service', 'ENABLE_MACHINED',
'dbus-org.freedesktop.machine1.service'], 'dbus-org.freedesktop.machine1.service'],
['systemd-modules-load.service', 'HAVE_KMOD', ['systemd-modules-load.service', 'HAVE_KMOD',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-networkd-wait-online.service', 'ENABLE_NETWORKD', ['systemd-networkd-wait-online.service', 'ENABLE_NETWORKD',
join_paths(pkgsysconfdir, 'system/network-online.target.wants/')], join_paths(pkgsysconfdir, 'system/network-online.target.wants/')],
['systemd-nspawn@.service', ''], ['systemd-nspawn@.service', ''],
['systemd-poweroff.service', ''], ['systemd-poweroff.service', ''],
['systemd-quotacheck.service', 'ENABLE_QUOTACHECK'], ['systemd-quotacheck.service', 'ENABLE_QUOTACHECK'],
['systemd-random-seed.service', 'ENABLE_RANDOMSEED', ['systemd-random-seed.service', 'ENABLE_RANDOMSEED',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-reboot.service', ''], ['systemd-reboot.service', ''],
['systemd-remount-fs.service', '', ['systemd-remount-fs.service', '',
'local-fs.target.wants/'], 'local-fs.target.wants/'],
['systemd-rfkill.service', 'ENABLE_RFKILL'], ['systemd-rfkill.service', 'ENABLE_RFKILL'],
['systemd-suspend.service', ''], ['systemd-suspend.service', ''],
['systemd-sysctl.service', '', ['systemd-sysctl.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-sysusers.service', 'ENABLE_SYSUSERS', ['systemd-sysusers.service', 'ENABLE_SYSUSERS',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-timedated.service', 'ENABLE_TIMEDATED', ['systemd-timedated.service', 'ENABLE_TIMEDATED',
'dbus-org.freedesktop.timedate1.service'], 'dbus-org.freedesktop.timedate1.service'],
['systemd-timesyncd.service', 'ENABLE_TIMESYNCD', ['systemd-timesyncd.service', 'ENABLE_TIMESYNCD',
join_paths(pkgsysconfdir, 'system/sysinit.target.wants/')], join_paths(pkgsysconfdir, 'system/sysinit.target.wants/')],
['systemd-tmpfiles-clean.service', 'ENABLE_TMPFILES'], ['systemd-tmpfiles-clean.service', 'ENABLE_TMPFILES'],
['systemd-tmpfiles-setup-dev.service', 'ENABLE_TMPFILES', ['systemd-tmpfiles-setup-dev.service', 'ENABLE_TMPFILES',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-tmpfiles-setup.service', 'ENABLE_TMPFILES', ['systemd-tmpfiles-setup.service', 'ENABLE_TMPFILES',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-udev-settle.service', ''], ['systemd-udev-settle.service', ''],
['systemd-udev-trigger.service', '', ['systemd-udev-trigger.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-udevd.service', '', ['systemd-udevd.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-update-done.service', '', ['systemd-update-done.service', '',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-update-utmp-runlevel.service', 'HAVE_UTMP HAVE_SYSV_COMPAT', ['systemd-update-utmp-runlevel.service', 'HAVE_UTMP HAVE_SYSV_COMPAT',
'multi-user.target.wants/ graphical.target.wants/ rescue.target.wants/'], 'multi-user.target.wants/ graphical.target.wants/ rescue.target.wants/'],
['systemd-update-utmp.service', 'HAVE_UTMP', ['systemd-update-utmp.service', 'HAVE_UTMP',
'sysinit.target.wants/'], 'sysinit.target.wants/'],
['systemd-user-sessions.service', '', ['systemd-user-sessions.service', '',
'multi-user.target.wants/'], 'multi-user.target.wants/'],
['systemd-vconsole-setup.service', 'ENABLE_VCONSOLE'], ['systemd-vconsole-setup.service', 'ENABLE_VCONSOLE'],
['systemd-volatile-root.service', ''], ['systemd-volatile-root.service', ''],
] ]
m4_units = [ m4_units = [
['getty@.service', '', ['getty@.service', '',
'autovt@.service ' + 'autovt@.service ' +
join_paths(pkgsysconfdir, 'system/getty.target.wants/getty@tty1.service')], join_paths(pkgsysconfdir, 'system/getty.target.wants/getty@tty1.service')],
['serial-getty@.service', ''], ['serial-getty@.service', ''],
['tmp.mount', '', ['tmp.mount', '',
'local-fs.target.wants/'], 'local-fs.target.wants/'],
] ]
m4_in_units = [ m4_in_units = [
['console-getty.service', ''], ['console-getty.service', ''],
['container-getty@.service', ''], ['container-getty@.service', ''],
['systemd-networkd.service', 'ENABLE_NETWORKD', ['systemd-networkd.service', 'ENABLE_NETWORKD',
'dbus-org.freedesktop.network1.service ' + 'dbus-org.freedesktop.network1.service ' +
join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')],
['systemd-resolved.service', 'ENABLE_RESOLVED', ['systemd-resolved.service', 'ENABLE_RESOLVED',
'dbus-org.freedesktop.resolve1.service ' + 'dbus-org.freedesktop.resolve1.service ' +
join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')],
['user@.service', ''], ['user@.service', ''],
] ]
foreach tuple : m4_in_units foreach tuple : m4_in_units
file = tuple[0] file = tuple[0]
gen = configure_file( gen = configure_file(
input : file + '.m4.in', input : file + '.m4.in',
output : file + '.m4', output : file + '.m4',
configuration : substs) configuration : substs)
m4_units += [[file, tuple.get(1, ''), tuple.get(2, ''), gen]] m4_units += [[file, tuple.get(1, ''), tuple.get(2, ''), gen]]
endforeach endforeach
foreach tuple : in_units foreach tuple : in_units
file = tuple[0] file = tuple[0]
# we do this here because install_data does not accept custom_target output # we do this here because install_data does not accept custom_target output
conds = tuple[1].split(' ') conds = tuple[1].split(' ')
install = ((conds.get(0, '') == '' or conf.get(conds[0], 0) == 1) and install = ((conds.get(0, '') == '' or conf.get(conds[0], 0) == 1) and
(conds.get(1, '') == '' or conf.get(conds[1], 0) == 1)) (conds.get(1, '') == '' or conf.get(conds[1], 0) == 1))
gen1 = configure_file( gen1 = configure_file(
input : file + '.in', input : file + '.in',
output : file + '.tmp', output : file + '.tmp',
configuration : substs) configuration : substs)
gen2 = custom_target( gen2 = custom_target(
file, file,
input : gen1, input : gen1,
output : file, output : file,
command : [sed, '/^## /d', '@INPUT@'], command : [sed, '/^## /d', '@INPUT@'],
capture : true, capture : true,
install : install, install : install,
install_dir : systemunitdir) install_dir : systemunitdir)
if install and tuple.length() > 2 if install and tuple.length() > 2
foreach target : tuple[2].split() foreach target : tuple[2].split()
meson.add_install_script('meson-add-wants.sh', systemunitdir, target, file) meson.add_install_script('meson-add-wants.sh', systemunitdir, target, file)
endforeach endforeach
endif endif
endforeach endforeach
foreach tuple : m4_units foreach tuple : m4_units
file = tuple[0] file = tuple[0]
input = tuple.get(3, file + '.m4') input = tuple.get(3, file + '.m4')
# we do this here because install_data does not accept custom_target output # we do this here because install_data does not accept custom_target output
conds = tuple[1].split(' ') conds = tuple[1].split(' ')
install = ((conds.get(0, '') == '' or conf.get(conds[0], 0) == 1) and install = ((conds.get(0, '') == '' or conf.get(conds[0], 0) == 1) and
(conds.get(1, '') == '' or conf.get(conds[1], 0) == 1)) (conds.get(1, '') == '' or conf.get(conds[1], 0) == 1))
custom_target( custom_target(
file, file,
input : input, input : input,
output: file, output: file,
command : [m4, '-P'] + m4_defines + ['@INPUT@'], command : [m4, '-P'] + m4_defines + ['@INPUT@'],
capture : true, capture : true,
install : install, install : install,
install_dir : systemunitdir) install_dir : systemunitdir)
if tuple.length() > 2 and install if tuple.length() > 2 and install
foreach target : tuple[2].split() foreach target : tuple[2].split()
meson.add_install_script('meson-add-wants.sh', systemunitdir, target, file) meson.add_install_script('meson-add-wants.sh', systemunitdir, target, file)
endforeach endforeach
endif endif
endforeach endforeach
foreach tuple : units foreach tuple : units
file = tuple[0] file = tuple[0]
input = tuple.get(3, file) input = tuple.get(3, file)
conds = tuple[1].split(' ') conds = tuple[1].split(' ')
install = ((conds.get(0, '') == '' or conf.get(conds[0], 0) == 1) and install = ((conds.get(0, '') == '' or conf.get(conds[0], 0) == 1) and
(conds.get(1, '') == '' or conf.get(conds[1], 0) == 1)) (conds.get(1, '') == '' or conf.get(conds[1], 0) == 1))
if install if install
install_data(input, install_data(input,
install_dir : systemunitdir) install_dir : systemunitdir)
if tuple.length() > 2 if tuple.length() > 2
foreach target : tuple[2].split() foreach target : tuple[2].split()
meson.add_install_script('meson-add-wants.sh', systemunitdir, target, file) meson.add_install_script(
endforeach 'meson-add-wants.sh', systemunitdir, target, file)
endif endforeach
endif endif
endif
endforeach endforeach
############################################################ ############################################################
@ -319,11 +318,12 @@ meson.add_install_script(meson_make_symlink,
join_paths(dbussystemservicedir, 'org.freedesktop.systemd1.service'), join_paths(dbussystemservicedir, 'org.freedesktop.systemd1.service'),
join_paths(dbussessionservicedir, 'org.freedesktop.systemd1.service')) join_paths(dbussessionservicedir, 'org.freedesktop.systemd1.service'))
if conf.get('HAVE_SYSV_COMPAT', 0) == 1 if conf.get('HAVE_SYSV_COMPAT', 0) == 1
foreach i : [1, 2, 3, 4, 5] foreach i : [1, 2, 3, 4, 5]
meson.add_install_script('sh', '-c', meson.add_install_script(
mkdir_p 'sh', '-c',
.format(join_paths(systemunitdir, 'runlevel@0@.target.wants'.format(i)))) mkdir_p
endforeach .format(join_paths(systemunitdir, 'runlevel@0@.target.wants'.format(i))))
endforeach
endif endif
subdir('user') subdir('user')

View File

@ -1,36 +1,33 @@
# -*- mode: meson -*-
units = [ units = [
'basic.target', 'basic.target',
'bluetooth.target', 'bluetooth.target',
'default.target', 'default.target',
'exit.target', 'exit.target',
'graphical-session-pre.target', 'graphical-session-pre.target',
'graphical-session.target', 'graphical-session.target',
'paths.target', 'paths.target',
'printer.target', 'printer.target',
'shutdown.target', 'shutdown.target',
'smartcard.target', 'smartcard.target',
'sockets.target', 'sockets.target',
'sound.target', 'sound.target',
'timers.target', 'timers.target',
] ]
foreach file : units foreach file : units
install_data(file, install_data(file,
install_dir : userunitdir) install_dir : userunitdir)
endforeach endforeach
in_units = [ in_units = [
'systemd-exit.service', 'systemd-exit.service',
] ]
foreach file : in_units foreach file : in_units
gen = configure_file( gen = configure_file(
input : file + '.in', input : file + '.in',
output : file, output : file,
configuration : substs) configuration : substs)
install_data(gen, install_data(gen,
install_dir : userunitdir) install_dir : userunitdir)
endforeach endforeach