summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-04-09 23:55:50 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-04-23 21:47:27 -0400
commit7b76fce1a5d2590524f713586d2b38dca5224ef0 (patch)
treecfd657e1adde9738643a82591db47ee549b2337b
parent94e75a54097b32252ef86e9253a288db7529f1ea (diff)
meson: create various symlinks
v2: - remove bashisms
-rw-r--r--meson.build8
-rw-r--r--tools/meson-make-symlink.sh11
-rw-r--r--units/meson.build6
3 files changed, 25 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index a5b57d8e05..a56476a71d 100644
--- a/meson.build
+++ b/meson.build
@@ -385,6 +385,7 @@ stat = find_program('stat')
git = find_program('git', required : false)
etags = find_program('etags', required : false)
+meson_make_symlink = meson.source_root() + '/tools/meson-make-symlink.sh'
mkdir_p = 'mkdir -p $DESTDIR/@0@'
# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
@@ -1127,6 +1128,10 @@ if conf.get('ENABLE_ENVIRONMENT_D', 0) == 1
install_dir : userenvgeneratordir,
include_directories : includes,
link_with : [libshared])
+
+ meson.add_install_script(meson_make_symlink,
+ sysconfdir + '/environment',
+ environmentdir + '/99-environment.conf')
endif
if conf.get('ENABLE_HIBERNATE', 0) == 1
@@ -1705,6 +1710,9 @@ executable('systemd-mount',
link_with : [libshared],
install : true)
+meson.add_install_script(meson_make_symlink,
+ 'systemd-mount', bindir + '/systemd-umount')
+
executable('systemd-run',
'src/run/run.c',
include_directories : includes,
diff --git a/tools/meson-make-symlink.sh b/tools/meson-make-symlink.sh
new file mode 100644
index 0000000000..87f198694c
--- /dev/null
+++ b/tools/meson-make-symlink.sh
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+# this is needed mostly because $DESTDIR is provided as a variable,
+# and we need to create the target directory...
+
+mkdir -vp "$(dirname "${DESTDIR}$2")"
+if [ "$(dirname $1)" = . ]; then
+ ln -vfs -T "$1" "${DESTDIR}$2"
+else
+ ln -vfs -T --relative "${DESTDIR}$1" "${DESTDIR}$2"
+fi
diff --git a/units/meson.build b/units/meson.build
index 957153c0b5..b051c5d3cc 100644
--- a/units/meson.build
+++ b/units/meson.build
@@ -307,6 +307,12 @@ foreach tuple : m4_in_units
endif
endforeach
+meson.add_install_script(meson_make_symlink,
+ pkgsysconfdir + '/user',
+ sysconfdir + '/xdg/systemd/user')
+meson.add_install_script(meson_make_symlink,
+ dbussystemservicedir + '/org.freedesktop.systemd1.service',
+ dbussessionservicedir + '/org.freedesktop.systemd1.service')
if conf.get('HAVE_SYSV_COMPAT', 0) == 1
foreach i : [1, 2, 3, 4, 5]
meson.add_install_script('sh', '-c',