]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
meson: create various symlinks
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 10 Apr 2017 03:55:50 +0000 (23:55 -0400)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 24 Apr 2017 01:47:27 +0000 (21:47 -0400)
v2:
- remove bashisms

meson.build
tools/meson-make-symlink.sh [new file with mode: 0644]
units/meson.build

index a5b57d8e057d6b4f07993ad2b18ec94b136cdf24..a56476a71dee52a526119c056f6a9c1c08de09a7 100644 (file)
@@ -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 (file)
index 0000000..87f1986
--- /dev/null
@@ -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
index 957153c0b5c2328673471d0074439de29253a00e..b051c5d3cc8e2526f48170b81b1c0fd8c4320ee0 100644 (file)
@@ -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',