]> git.ipfire.org Git - thirdparty/autoconf.git/commitdiff
AC_INIT: add --runstatedir option to configure
authorEric Blake <eblake@redhat.com>
Thu, 12 Sep 2013 21:11:29 +0000 (15:11 -0600)
committerEric Blake <eblake@redhat.com>
Sat, 14 Sep 2013 12:28:34 +0000 (06:28 -0600)
http://lwn.net/Articles/436012/ documents that many distros
are now preferring to use /run rather than /var/run for
storage of pid files and other per-process temporary files
that must not be cleaned out during arbitrary TMPDIR sweeps.
As such, the GNU Coding Standards were recently changed to
recommend a new configure option to make it easy to choose
this directory at configure time.  This patch adds support
for the option to all configure scripts built by autoconf.

* general.m4 (_AC_INIT_PARSE_ARGS): Add new directory option.
(_AC_INIT_HELP): Document it.
* doc/autoconf.texi (Installation Directory Variables): Document
new option.
(Site Defaults): Mention typical use within a distro.
* NEWS: Mention the addition.

Signed-off-by: Eric Blake <eblake@redhat.com>
NEWS
doc/autoconf.texi
lib/autoconf/general.m4

diff --git a/NEWS b/NEWS
index de9d9154e5be462553b94243b1b95c4b71a1e810..7003c44783b34d92105a3faf9574b9d56f6ab40d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,11 @@ GNU Autoconf NEWS - User visible changes.
 
 * Noteworthy changes in release ?.? (????-??-??) [?]
 
+** Configure scripts now support a '--runstatedir' option, which
+   defaults to '${localstatedir}/run', and which can be used to place
+   per-process temporary runtime files (such as pid files) into '/run'
+   instead of '/var/run'.
+
 ** The use of the long-deprecated name 'configure.in' for the autoconf
    input file now elicits a warning in the 'obsolete' category.
 
index 26e7b1768c2bfcaa8bc9247b5e3c8220c20b7c9d..49320671d08b76d5ecca2e27ba69c317027bb394 100644 (file)
@@ -2826,7 +2826,18 @@ usually has a subdirectory per locale.
 
 @defvar localstatedir
 @ovindex localstatedir
-The directory for installing modifiable single-machine data.
+The directory for installing modifiable single-machine data.  Content in
+this directory typically survives a reboot.
+@end defvar
+
+@defvar runstatedir
+@ovindex runstatedir
+The directory for installing temporary modifiable single-machine data.
+Content in this directory survives as long as the process is running
+(such as pid files), as contrasted with @file{/tmp} that may be
+periodically cleaned.  Conversely, this directory is typically cleaned
+on a reboot.  By default, this is a subdirectory of
+@code{localstatedir}.
 @end defvar
 
 @defvar mandir
@@ -22606,6 +22617,7 @@ test "$prefix" = NONE && prefix=/usr/share/local/gnu
 test "$exec_prefix" = NONE && exec_prefix=/usr/local/gnu
 test "$sharedstatedir" = '$@{prefix@}/com' && sharedstatedir=/var
 test "$localstatedir" = '$@{prefix@}/var' && localstatedir=/var
+test "$runstatedir" = '$@{localstatedir@}/run' && runstatedir=/run
 
 # Give Autoconf 2.x generated configure scripts a shared default
 # cache file for feature test results, architecture-specific.
index 70b01685f268bba1b5c382679e8e8073728f37b4..1ce9922ede4976d619d1337da7657a0b5dbd3d33 100644 (file)
@@ -586,6 +586,7 @@ AC_SUBST([datadir],        ['${datarootdir}'])dnl
 AC_SUBST([sysconfdir],     ['${prefix}/etc'])dnl
 AC_SUBST([sharedstatedir], ['${prefix}/com'])dnl
 AC_SUBST([localstatedir],  ['${prefix}/var'])dnl
+AC_SUBST([runstatedir],    ['${localstatedir}/run'])dnl
 AC_SUBST([includedir],     ['${prefix}/include'])dnl
 AC_SUBST([oldincludedir],  ['/usr/include'])dnl
 AC_SUBST([docdir],         [m4_ifset([AC_PACKAGE_TARNAME],
@@ -812,6 +813,15 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
+  -runstatedir | --runstatedir | --runstatedi | --runstated \
+  | --runstate | --runstat | --runsta | --runst | --runs \
+  | --run | --ru | --r)
+    ac_prev=runstatedir ;;
+  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+  | --run=* | --ru=* | --r=*)
+    runstatedir=$ac_optarg ;;
+
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -921,7 +931,7 @@ fi
 for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
                datadir sysconfdir sharedstatedir localstatedir includedir \
                oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir
+               libdir localedir mandir runstatedir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1058,6 +1068,7 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
+  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]