summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--hwdb/meson.build3
-rw-r--r--meson.build15
-rw-r--r--network/meson.build3
-rw-r--r--src/core/meson.build14
-rw-r--r--src/kernel-install/meson.build3
-rw-r--r--src/udev/meson.build3
-rw-r--r--sysctl.d/meson.build3
-rw-r--r--tmpfiles.d/meson.build5
-rw-r--r--units/meson.build8
9 files changed, 57 insertions, 0 deletions
diff --git a/hwdb/meson.build b/hwdb/meson.build
index 4c13a2e7a9..bffac3bae6 100644
--- a/hwdb/meson.build
+++ b/hwdb/meson.build
@@ -22,4 +22,7 @@ hwdb_files = files('''
if conf.get('ENABLE_HWDB', 0) == 1
install_data(hwdb_files,
install_dir : udevhwdbdir)
+
+ meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/udev/hwdb.d'))
endif
diff --git a/meson.build b/meson.build
index e2e28438b7..a5b57d8e05 100644
--- a/meson.build
+++ b/meson.build
@@ -385,6 +385,8 @@ stat = find_program('stat')
git = find_program('git', required : false)
etags = find_program('etags', required : false)
+mkdir_p = 'mkdir -p $DESTDIR/@0@'
+
# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
# /usr/sbin, /sbin, and fall back to the default from middle column.
progs = [['telinit', '/lib/sysvinit/telinit'],
@@ -1530,6 +1532,11 @@ if conf.get('ENABLE_BINFMT', 0) == 1
link_with : [libshared],
install : true,
install_dir : rootlibexecdir)
+
+ meson.add_install_script('sh', '-c',
+ mkdir_p.format(binfmtdir))
+ meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/binfmt.d'))
endif
if conf.get('ENABLE_VCONSOLE', 0) == 1
@@ -1821,6 +1828,11 @@ if conf.get('HAVE_KMOD', 0) == 1
dependencies : [libkmod],
install : true,
install_dir : rootlibexecdir)
+
+ meson.add_install_script('sh', '-c',
+ mkdir_p.format(modulesloaddir))
+ meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/modules-load.d'))
endif
executable('systemd-nspawn',
@@ -1941,6 +1953,9 @@ install_data('README',
'src/libsystemd/sd-bus/GVARIANT-SERIALIZATION',
install_dir : docdir)
+meson.add_install_script('sh', '-c', mkdir_p.format(systemdstatedir))
+meson.add_install_script('sh', '-c', 'touch $DESTDIR@0@'.format(prefixdir))
+
############################################################
if git.found() and etags.found()
diff --git a/network/meson.build b/network/meson.build
index b578159b03..d2eb89ad4d 100644
--- a/network/meson.build
+++ b/network/meson.build
@@ -6,4 +6,7 @@ if conf.get('ENABLE_NETWORKD', 0) == 1
'80-container-vz.network',
'99-default.link',
install_dir : networkdir)
+
+ meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/systemd/network'))
endif
diff --git a/src/core/meson.build b/src/core/meson.build
index f6d3e7fb00..bf4e2dbed9 100644
--- a/src/core/meson.build
+++ b/src/core/meson.build
@@ -220,3 +220,17 @@ custom_target(
install_data('system.conf',
'user.conf',
install_dir : pkgsysconfdir)
+
+meson.add_install_script('sh', '-c', mkdir_p.format(systemshutdowndir))
+meson.add_install_script('sh', '-c', mkdir_p.format(systemsleepdir))
+meson.add_install_script('sh', '-c', mkdir_p.format(systemgeneratordir))
+meson.add_install_script('sh', '-c', mkdir_p.format(usergeneratordir))
+
+meson.add_install_script('sh', '-c',
+ mkdir_p.format(pkgsysconfdir + '/system/multi-user.target.wants'))
+meson.add_install_script('sh', '-c',
+ mkdir_p.format(pkgsysconfdir + '/system/getty.target.wants'))
+meson.add_install_script('sh', '-c',
+ mkdir_p.format(pkgsysconfdir + '/user'))
+meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/xdg/systemd'))
diff --git a/src/kernel-install/meson.build b/src/kernel-install/meson.build
index 517cd69c0e..4ecea20f89 100644
--- a/src/kernel-install/meson.build
+++ b/src/kernel-install/meson.build
@@ -8,3 +8,6 @@ install_data('50-depmod.install',
'90-loaderentry.install',
install_mode : 'rwxr-xr-x',
install_dir : kernelinstalldir)
+
+meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/kernel/install.d'))
diff --git a/src/udev/meson.build b/src/udev/meson.build
index 6edec7dabc..f3c68a9d45 100644
--- a/src/udev/meson.build
+++ b/src/udev/meson.build
@@ -163,3 +163,6 @@ udev_pc = configure_file(
configuration : substs)
install_data(udev_pc,
install_dir : pkgconfigdatadir)
+
+meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/udev/rules.d'))
diff --git a/sysctl.d/meson.build b/sysctl.d/meson.build
index a8cf868a9b..cdd95f857a 100644
--- a/sysctl.d/meson.build
+++ b/sysctl.d/meson.build
@@ -18,3 +18,6 @@ foreach file : in_files
install_data(gen,
install_dir : sysctldir)
endforeach
+
+meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/sysctl.d'))
diff --git a/tmpfiles.d/meson.build b/tmpfiles.d/meson.build
index cba5e1781d..36a053bc0e 100644
--- a/tmpfiles.d/meson.build
+++ b/tmpfiles.d/meson.build
@@ -37,3 +37,8 @@ foreach file : m4_files
install : enable_tmpfiles,
install_dir : tmpfilesdir)
endforeach
+
+if enable_tmpfiles
+ meson.add_install_script('sh', '-c',
+ mkdir_p.format(sysconfdir + '/tmpfiles.d'))
+endif
diff --git a/units/meson.build b/units/meson.build
index 3dfb9853f6..957153c0b5 100644
--- a/units/meson.build
+++ b/units/meson.build
@@ -307,4 +307,12 @@ foreach tuple : m4_in_units
endif
endforeach
+if conf.get('HAVE_SYSV_COMPAT', 0) == 1
+ foreach i : [1, 2, 3, 4, 5]
+ meson.add_install_script('sh', '-c',
+ mkdir_p
+ .format(systemunitdir + '/runlevel@0@.target.wants'.format(i)))
+ endforeach
+endif
+
subdir('user')