]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
build: use --runstatedir instead of --localstatedir
authorAndreas Henriksson <andreas@fatal.se>
Thu, 27 Jul 2017 14:00:42 +0000 (16:00 +0200)
committerKarel Zak <kzak@redhat.com>
Mon, 31 Jul 2017 13:24:46 +0000 (15:24 +0200)
The util-linux code was previously aligned to use @localstatedir@ and
the util-linux build system was set to override the default to use /run.

Current GNU Coding Standards introduced the @runstatedir@ variable
for this purpose. Lets use that instead.

The GNU default for @runstatedir@ is ${localstatedir}/run so util-linux
still override the default to be /run to preserve the status quo from
before. The only difference is that you'll now pass --runstatedir to
override the location on the command line instead of --localstatedir.

(FWIW, Debhelper in compat 11 will automatically start passing
--runstatedir=/run to all autotools configured builds. It already
passes --localstatedir=/var (to avoid it ending up with the GNU default
/usr/local/var) which breaks the util-linux build system code that
tries to default it to /run. This change will thus allow util-linux
and debhelper to work better together and avoid the need for a
package-specific override.)

Relevant historic commits:
 * commit 07a16b9d1e5a48550a0d19abb9a900853433ffa2
   "build-sys: change --localstatedir to /run"
 * commit 80c51185d50f00a2701f9379f10fc48a0f885dfc
   "uuidd: use run configured state directory"
 * commit 01c5b787947aeaffc7e56000827e3edefa357c59
   "agetty: use configured run state directory"

[kzak@redhat.com: - add $runstatedir fallback for autoconf < 2.70
                  - check for unmodified $localstatedir]

CC: Sami Kerola <kerolasa@iki.fi>
Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Karel Zak <kzak@redhat.com>
Makefile.am
configure.ac
include/pathnames.h
libuuid/src/uuidd.h
misc-utils/test_uuidd.c
misc-utils/uuidd.8.in
misc-utils/uuidd.rc.in
misc-utils/uuidd.socket.in

index 54c85e16f841e8493e9ad27a8a2e760c6d164503..e7657afe91c95fcd3536472a706a4db1c72b0b19 100644 (file)
@@ -2,7 +2,7 @@ AM_CPPFLAGS = \
        -include config.h \
        -I$(top_srcdir)/include \
        -DLOCALEDIR=\"$(localedir)\" \
-       -D_PATH_LOCALSTATEDIR=\"${localstatedir}\"
+       -D_PATH_RUNSTATEDIR=\"${runstatedir}\"
 AM_CFLAGS = -fsigned-char $(WARN_CFLAGS)
 AM_LDFLAGS =
 
@@ -119,7 +119,7 @@ edit_cmd = sed \
         -e 's|@sbindir[@]|$(sbindir)|g' \
         -e 's|@bindir[@]|$(bindir)|g' \
         -e 's|@includedir[@]|$(includedir)|g' \
-        -e 's|@localstatedir[@]|$(localstatedir)|g' \
+        -e 's|@runstatedir[@]|$(runstatedir)|g' \
         -e 's|@usrlib_execdir[@]|$(usrlib_execdir)|g' \
         -e 's|@usrbin_execdir[@]|$(usrbin_execdir)|g' \
         -e 's|@usrsbin_execdir[@]|$(usrsbin_execdir)|g' \
index dc71faa00a4d57f1f14e8ac2356714ca8b74c73d..b204ec11e8ce59ae2ae21584f7c34bd15771360a 100644 (file)
@@ -72,13 +72,17 @@ AS_CASE([$exec_prefix:$prefix],
   ]
 )
 
-AS_CASE([$prefix:$localstatedir],
-  [NONE:'${prefix}/var' | /usr:'${prefix}/var'],
-    [localstatedir=/run
-     AC_MSG_NOTICE([  --localstatedir defaults to /run])
-    ]
+
+# default for old versions without $runstatedir
+AS_IF([test x"$runstatedir" = x], [runstatedir='${localstatedir}/run'])
+
+# our default if $localstatedir unchanged
+AS_CASE([$localstatedir:$runstatedir],
+ [NONE:'${localstatedir}/run' | /var:'${localstatedir}/run' | NONE:'/run' ],
+   [runstatedir=/run; AC_MSG_NOTICE([  --runstatedir defaults to /run])]
 )
-AC_SUBST([localstatedir])
+
+AC_SUBST([runstatedir])
 
 
 # The original default values of {bin,sbin,lib}dir
@@ -2282,7 +2286,7 @@ AC_MSG_RESULT([
        prefix:            ${prefix}
        exec prefix:       ${exec_prefix}
 
-       localstatedir:     ${localstatedir}
+       runstatedir:       ${runstatedir}
        bindir:            ${bindir}
        sbindir:           ${sbindir}
        libdir:            ${libdir}
index 8af386457aceb93c5569684b22a9f144c35263ce..747382daeb3cee361de0bdafd66c195204efbf69 100644 (file)
@@ -71,7 +71,7 @@
 #define _PATH_ISSUE            "/etc/issue"
 #define _PATH_OS_RELEASE_ETC   "/etc/os-release"
 #define _PATH_OS_RELEASE_USR   "/usr/lib/os-release"
-#define _PATH_NUMLOCK_ON       _PATH_LOCALSTATEDIR "/numlock-on"
+#define _PATH_NUMLOCK_ON       _PATH_RUNSTATEDIR "/numlock-on"
 #define _PATH_LOGINDEFS                "/etc/login.defs"
 
 /* misc paths */
index 2f709680bb2f7cb7252396b77f2e7e16d95decd8..e55c86f2f314460a177e661739fa2da6a0c30b75 100644 (file)
@@ -35,7 +35,7 @@
 #ifndef _UUID_UUIDD_H
 #define _UUID_UUIDD_H
 
-#define UUIDD_DIR              _PATH_LOCALSTATEDIR "/uuidd"
+#define UUIDD_DIR              _PATH_RUNSTATEDIR "/uuidd"
 #define UUIDD_SOCKET_PATH      UUIDD_DIR "/request"
 #define UUIDD_PIDFILE_PATH     UUIDD_DIR "/uuidd.pid"
 #define UUIDD_PATH             "/usr/sbin/uuidd"
index 7bbd3a9483bb1c53ae7766b63d50c08fc6daf395..de5ae3ab2060dcb4a6e19d7c82ea8f32caae4215 100644 (file)
  *
  *     uuidd --debug --no-fork --no-pid --socket /run/uuidd/request
  *
- * if the $localstatedir (as defined by build-system) is /run. If you want
+ * if the $runstatedir (as defined by build-system) is /run. If you want
  * to overwrite the built-in default then use:
  *
- *     make uuidd uuidgen localstatedir=/var
+ *     make uuidd uuidgen runstatedir=/var/run
  */
 #include <pthread.h>
 #include <stdio.h>
index e2558256488a6fd2ecc365fc3af18bea9160603e..0a5cf471bcb21b8f217882fa1605d54cf048e22e 100644 (file)
@@ -37,7 +37,7 @@ Do not create a pid file.
 .TP
 .BR \-p , " \-\-pid " \fIpath\fR
 Specify the pathname where the pid file should be written.  By default,
-the pid file is written to @localstatedir@/uuidd/uuidd.pid.
+the pid file is written to @runstatedir@/uuidd/uuidd.pid.
 .TP
 .BR \-q , " \-\-quiet "
 Suppress some failure messages.
@@ -54,7 +54,7 @@ a configure option.
 .TP
 .BR \-s , " \-\-socket " \fIpath\fR
 Make uuidd use this pathname for the unix-domain socket.  By default, the
-pathname used is @localstatedir@/uuidd/request.  This option is primarily
+pathname used is @runstatedir@/uuidd/request.  This option is primarily
 for debugging purposes, since the pathname is hard-coded in the libuuid
 library.
 .TP
index 26273e5c5727f55eb46b894da586c483b9f113c9..7943945622faa14e4971ccd4f2b74d4b789e1fcb 100644 (file)
@@ -17,7 +17,7 @@ PATH=/bin:/usr/bin:/sbin:/usr/sbin
 DAEMON=/usr/sbin/uuidd
 UUIDD_USER=uuidd
 UUIDD_GROUP=uuidd
-UUIDD_DIR=@localstatedir@/uuidd
+UUIDD_DIR=@runstatedir@/uuidd
 PIDFILE=$UUIDD_DIR/uuidd.pid
 
 test -x $DAEMON || exit 0
index d8be72fd695040d46cedd51f7e4d18f0bbea551e..8ddcac26f21a1c12a9749ff9963e2333d7c2085e 100644 (file)
@@ -2,7 +2,7 @@
 Description=UUID daemon activation socket
 
 [Socket]
-ListenStream=@localstatedir@/uuidd/request
+ListenStream=@runstatedir@/uuidd/request
 
 [Install]
 WantedBy=sockets.target