]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
pkgconfig: avoid double slash with split-usr configuration
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 5 Mar 2019 15:46:52 +0000 (16:46 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 5 Mar 2019 17:49:28 +0000 (18:49 +0100)
By defining rootprefix= we avoid a double slash in $systemdsystemunitdir and
other variables. This fixes a regression introduced in
1c2c7c6cb3d92315624f3711114e86b0acfbce63 where the variables using rootprefix=/
would start with a double slash. This should be interpreted the same, but is
certainly ugly.

The rootprefix variable was added to systemd.pc in
1c2c7c6cb3d92315624f3711114e86b0acfbce63, so there is no question of backwards
compatiblity. If people try to "override" the prefix and specify
--define-variable=rootprefix=/, they will get a double slash, which should be
OK, and is the same as --define-variable=rootprefix=/something/, which also
results in a double slash somewhere in the strings.

meson.build
src/core/systemd.pc.in

index f2b975abc5555a8d2a986ad3c31e62007841e6e5..23a606fb90aaf2cbc543c9daac6f9e932354dd87 100644 (file)
@@ -66,6 +66,7 @@ rootprefix_default = split_usr ? '/' : '/usr'
 if rootprefixdir == ''
         rootprefixdir = rootprefix_default
 endif
+rootprefixdir_noslash = rootprefixdir == '/' ? '' : rootprefixdir
 
 sysvinit_path = get_option('sysvinit-path')
 sysvrcnd_path = get_option('sysvrcnd-path')
@@ -76,7 +77,7 @@ conf.set10('BUMP_PROC_SYS_FS_FILE_MAX', get_option('bump-proc-sys-fs-file-max'))
 conf.set10('BUMP_PROC_SYS_FS_NR_OPEN',  get_option('bump-proc-sys-fs-nr-open'))
 conf.set('HIGH_RLIMIT_NOFILE',          512*1024)
 
-# join_paths ignore the preceding arguments if an absolute component is
+# join_paths ignores the preceding arguments if an absolute component is
 # encountered, so this should canonicalize various paths when they are
 # absolute or relative.
 prefixdir = get_option('prefix')
@@ -235,6 +236,7 @@ conf.set_quoted('MEMORY_ACCOUNTING_DEFAULT_YES_NO',           memory_accounting_
 
 substs.set('prefix',                                          prefixdir)
 substs.set('rootprefix',                                      rootprefixdir)
+substs.set('rootprefix_noslash',                              rootprefixdir_noslash)
 substs.set('exec_prefix',                                     prefixdir)
 substs.set('libdir',                                          libdir)
 substs.set('rootlibdir',                                      rootlibdir)
index f6a9d30ab5280158fd7514f19b8b05c1803f157a..5d1ddd7620c9666e751bbb0b11360d602a3095b9 100644 (file)
@@ -8,7 +8,7 @@
 #  (at your option) any later version.
 
 prefix=@prefix@
-rootprefix=@rootprefix@
+rootprefix=@rootprefix_noslash@
 sysconfdir=@sysconfdir@
 systemdutildir=${rootprefix}/lib/systemd
 systemdsystemunitdir=${rootprefix}/lib/systemd/system