summaryrefslogtreecommitdiff
path: root/tmpfiles.d/meson.build
blob: 4d94e3743ff48f64d753553f7d272c53a7a8e912 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# SPDX-License-Identifier: LGPL-2.1-or-later

enable_tmpfiles = conf.get('ENABLE_TMPFILES') == 1

files = [['README',               ''],
         ['home.conf',            ''],
         ['journal-nocow.conf',   ''],
         ['portables.conf',       'ENABLE_PORTABLED'],
         ['systemd-network.conf', 'ENABLE_NETWORKD'],
         ['systemd-nologin.conf', 'HAVE_PAM'],
         ['systemd-nspawn.conf',  'ENABLE_MACHINED'],
         ['systemd-pstore.conf',  'ENABLE_PSTORE'],
         ['systemd-resolve.conf', 'ENABLE_RESOLVE'],
         ['systemd-tmp.conf',     ''],
         ['tmp.conf',             ''],
         ['x11.conf',             ''],
         ['provision.conf',       ''],
         ['credstore.conf',       ''],
        ]

foreach pair : files
        if not enable_tmpfiles
                # do nothing
        elif pair[1] == '' or conf.get(pair[1]) == 1
                install_data(pair[0], install_dir : tmpfilesdir)
        else
                message('Not installing tmpfiles.d/@0@ because @1@ is @2@'
                        .format(pair[0], pair[1], conf.get(pair[1], 0)))
        endif
endforeach

in_files = [['etc.conf',                      ''],
            ['legacy.conf',                   'HAVE_SYSV_COMPAT'],
            ['static-nodes-permissions.conf', ''],
            ['systemd.conf',                  ''],
            ['var.conf',                      ''],
           ]

foreach pair : in_files
        if not enable_tmpfiles
                # do nothing
        elif pair[1] == '' or conf.get(pair[1]) == 1
                custom_target(
                        pair[0],
                        input : pair[0] + '.in',
                        output: pair[0],
                        command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
                        install : enable_tmpfiles,
                        install_dir : tmpfilesdir)
        else
                message('Not installing tmpfiles.d/@0@ because @1@ is @2@'
                        .format(pair[0], pair[1], conf.get(pair[1], 0)))
        endif
endforeach

if enable_tmpfiles and install_sysconfdir
        meson.add_install_script(
                'sh', '-c', mkdir_p.format(sysconfdir / 'tmpfiles.d'))
endif