1 # SPDX-License-Identifier: LGPL-2.1+
3 libcore_shared_sources = '''
129 load_fragment_gperf_gperf = custom_target(
130 'load-fragment-gperf.gperf',
131 input : 'load-fragment-gperf.gperf.m4',
132 output: 'load-fragment-gperf.gperf',
133 command : [meson_apply_m4, config_h, '@INPUT@'],
136 load_fragment_gperf_c = custom_target(
137 'load-fragment-gperf.c',
138 input : load_fragment_gperf_gperf,
139 output : 'load-fragment-gperf.c',
140 command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
142 awkscript = 'load-fragment-gperf-nulstr.awk'
143 load_fragment_gperf_nulstr_c = custom_target(
144 'load-fragment-gperf-nulstr.c',
145 input : [awkscript, load_fragment_gperf_gperf],
146 output : 'load-fragment-gperf-nulstr.c',
147 command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
150 # A convenience library to share code with other binaries:
151 # systemd-shutdown, systemd-remount-fs, systemd-machine-id-setup, …
152 libcore_shared = static_library(
154 libcore_shared_sources,
155 include_directories : includes,
156 dependencies : [versiondep,
159 libcore = static_library(
162 load_fragment_gperf_c,
163 load_fragment_gperf_nulstr_c,
164 include_directories : includes,
165 link_whole : libcore_shared,
166 dependencies : [versiondep,
177 systemd_sources = files('main.c')
179 in_files = [['macros.systemd', rpmmacrosdir],
180 ['system.conf', pkgsysconfdir],
181 ['systemd.pc', pkgconfigdatadir],
182 ['triggers.systemd', '']]
184 foreach item : in_files
189 input : file + '.in',
191 configuration : substs,
192 install_dir : dir == 'no' ? '' : dir)
195 install_data('org.freedesktop.systemd1.conf',
196 install_dir : dbuspolicydir)
197 install_data('org.freedesktop.systemd1.service',
198 install_dir : dbussystemservicedir)
200 policy = configure_file(
201 input : 'org.freedesktop.systemd1.policy.in',
202 output : 'org.freedesktop.systemd1.policy',
203 configuration : substs)
205 install_dir : polkitpolicydir)
207 install_data('user.conf',
208 install_dir : pkgsysconfdir)
210 meson.add_install_script('sh', '-c', mkdir_p.format(systemshutdowndir))
211 meson.add_install_script('sh', '-c', mkdir_p.format(systemsleepdir))
212 meson.add_install_script('sh', '-c', mkdir_p.format(systemgeneratordir))
213 meson.add_install_script('sh', '-c', mkdir_p.format(usergeneratordir))
215 meson.add_install_script('sh', '-c',
216 mkdir_p.format(join_paths(pkgsysconfdir, 'system/multi-user.target.wants')))
217 meson.add_install_script('sh', '-c',
218 mkdir_p.format(join_paths(pkgsysconfdir, 'system/getty.target.wants')))
219 meson.add_install_script('sh', '-c',
220 mkdir_p.format(join_paths(pkgsysconfdir, 'user')))
221 meson.add_install_script('sh', '-c',
222 mkdir_p.format(join_paths(sysconfdir, 'xdg/systemd')))