summaryrefslogtreecommitdiff
path: root/tmpfiles.d/meson.build
blob: a41dd3e454c7966a5676c6fa47ea4439c0b8a808 (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
60
61
62
# SPDX-License-Identifier: LGPL-2.1-or-later

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

tmpfiles = [['home.conf',            ''],
            ['journal-nocow.conf',   ''],
            ['systemd-nologin.conf', 'HAVE_PAM'],
            ['systemd-nspawn.conf',  'ENABLE_MACHINED'],
            ['systemd-tmp.conf',     ''],
            ['portables.conf',       'ENABLE_PORTABLED'],
            ['systemd-pstore.conf',  'ENABLE_PSTORE'],
            ['tmp.conf',             ''],
            ['x11.conf',             ''],
            ['legacy.conf',          'HAVE_SYSV_COMPAT'],
           ]

foreach pair : tmpfiles
        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 = ['static-nodes-permissions.conf']

foreach file : in_files
        gen = configure_file(
                input : file + '.in',
                output : file,
                configuration : substs)
        if enable_tmpfiles
                install_data(gen,
                             install_dir : tmpfilesdir)
        endif
endforeach

m4_files = ['etc.conf',
            'systemd.conf',
            'var.conf']

foreach file : m4_files
        if enable_tmpfiles
                custom_target(
                        'tmpfiles.d_' + file,
                         input : file + '.m4',
                         output: file,
                         command : [meson_apply_m4, config_h, '@INPUT@'],
                         capture : true,
                         install : true,
                         install_dir : tmpfilesdir)
        endif
endforeach

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