Fix autoconf variable substitution in init scripts.
authorBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 9 Aug 2011 23:49:18 +0000 (16:49 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 19 Aug 2011 23:26:14 +0000 (16:26 -0700)
Change the variable substitution in the init script templates
according to the method described in the Autoconf manual;
Chapter 4.7.2: Installation Directory Variables.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
configure
configure.ac
etc/init.d/.gitignore
etc/init.d/Makefile.am
etc/init.d/Makefile.in
etc/init.d/zfs.arch.in
etc/init.d/zfs.fedora.in
etc/init.d/zfs.gentoo.in
etc/init.d/zfs.lsb.in
etc/init.d/zfs.lunar.in
etc/init.d/zfs.redhat.in

index 8640242..d97d1ca 100755 (executable)
--- a/configure
+++ b/configure
@@ -20744,7 +20744,7 @@ fi
 $as_echo "$enable_debug" >&6; }
 
 
-ac_config_files="$ac_config_files Makefile dracut/Makefile dracut/90zfs/Makefile udev/Makefile udev/rules.d/Makefile etc/Makefile etc/init.d/Makefile etc/init.d/zfs.arch etc/init.d/zfs.gentoo etc/init.d/zfs.lunar etc/init.d/zfs.fedora etc/init.d/zfs.lsb etc/init.d/zfs.redhat etc/zfs/Makefile man/Makefile man/man8/Makefile lib/Makefile lib/libspl/Makefile lib/libspl/asm-generic/Makefile lib/libspl/asm-i386/Makefile lib/libspl/asm-x86_64/Makefile lib/libspl/include/Makefile lib/libspl/include/ia32/Makefile lib/libspl/include/ia32/sys/Makefile lib/libspl/include/rpc/Makefile lib/libspl/include/sys/Makefile lib/libspl/include/sys/sysevent/Makefile lib/libspl/include/sys/dktp/Makefile lib/libspl/include/util/Makefile lib/libavl/Makefile lib/libefi/Makefile lib/libnvpair/Makefile lib/libunicode/Makefile lib/libuutil/Makefile lib/libzpool/Makefile lib/libzfs/Makefile lib/libshare/Makefile cmd/Makefile cmd/zdb/Makefile cmd/zfs/Makefile cmd/zinject/Makefile cmd/zpool/Makefile cmd/ztest/Makefile cmd/zpios/Makefile cmd/mount_zfs/Makefile cmd/zpool_layout/Makefile cmd/zvol_id/Makefile cmd/zpool_id/Makefile cmd/sas_switch_id/Makefile module/Makefile module/avl/Makefile module/nvpair/Makefile module/unicode/Makefile module/zcommon/Makefile module/zfs/Makefile module/zpios/Makefile include/Makefile include/linux/Makefile include/sys/Makefile include/sys/fs/Makefile include/sys/fm/Makefile include/sys/fm/fs/Makefile scripts/Makefile scripts/zpios-profile/Makefile scripts/zpios-test/Makefile scripts/zpool-config/Makefile scripts/zpool-layout/Makefile scripts/common.sh zfs.spec zfs-modules.spec zfs-script-config.sh"
+ac_config_files="$ac_config_files Makefile dracut/Makefile dracut/90zfs/Makefile udev/Makefile udev/rules.d/Makefile etc/Makefile etc/init.d/Makefile etc/zfs/Makefile man/Makefile man/man8/Makefile lib/Makefile lib/libspl/Makefile lib/libspl/asm-generic/Makefile lib/libspl/asm-i386/Makefile lib/libspl/asm-x86_64/Makefile lib/libspl/include/Makefile lib/libspl/include/ia32/Makefile lib/libspl/include/ia32/sys/Makefile lib/libspl/include/rpc/Makefile lib/libspl/include/sys/Makefile lib/libspl/include/sys/sysevent/Makefile lib/libspl/include/sys/dktp/Makefile lib/libspl/include/util/Makefile lib/libavl/Makefile lib/libefi/Makefile lib/libnvpair/Makefile lib/libunicode/Makefile lib/libuutil/Makefile lib/libzpool/Makefile lib/libzfs/Makefile lib/libshare/Makefile cmd/Makefile cmd/zdb/Makefile cmd/zfs/Makefile cmd/zinject/Makefile cmd/zpool/Makefile cmd/ztest/Makefile cmd/zpios/Makefile cmd/mount_zfs/Makefile cmd/zpool_layout/Makefile cmd/zvol_id/Makefile cmd/zpool_id/Makefile cmd/sas_switch_id/Makefile module/Makefile module/avl/Makefile module/nvpair/Makefile module/unicode/Makefile module/zcommon/Makefile module/zfs/Makefile module/zpios/Makefile include/Makefile include/linux/Makefile include/sys/Makefile include/sys/fs/Makefile include/sys/fm/Makefile include/sys/fm/fs/Makefile scripts/Makefile scripts/zpios-profile/Makefile scripts/zpios-test/Makefile scripts/zpool-config/Makefile scripts/zpool-layout/Makefile scripts/common.sh zfs.spec zfs-modules.spec zfs-script-config.sh"
 
 
 cat >confcache <<\_ACEOF
     "udev/rules.d/Makefile") CONFIG_FILES="$CONFIG_FILES udev/rules.d/Makefile" ;;
     "etc/Makefile") CONFIG_FILES="$CONFIG_FILES etc/Makefile" ;;
     "etc/init.d/Makefile") CONFIG_FILES="$CONFIG_FILES etc/init.d/Makefile" ;;
-    "etc/init.d/zfs.arch") CONFIG_FILES="$CONFIG_FILES etc/init.d/zfs.arch" ;;
-    "etc/init.d/zfs.gentoo") CONFIG_FILES="$CONFIG_FILES etc/init.d/zfs.gentoo" ;;
-    "etc/init.d/zfs.lunar") CONFIG_FILES="$CONFIG_FILES etc/init.d/zfs.lunar" ;;
-    "etc/init.d/zfs.fedora") CONFIG_FILES="$CONFIG_FILES etc/init.d/zfs.fedora" ;;
-    "etc/init.d/zfs.lsb") CONFIG_FILES="$CONFIG_FILES etc/init.d/zfs.lsb" ;;
-    "etc/init.d/zfs.redhat") CONFIG_FILES="$CONFIG_FILES etc/init.d/zfs.redhat" ;;
     "etc/zfs/Makefile") CONFIG_FILES="$CONFIG_FILES etc/zfs/Makefile" ;;
     "man/Makefile") CONFIG_FILES="$CONFIG_FILES man/Makefile" ;;
     "man/man8/Makefile") CONFIG_FILES="$CONFIG_FILES man/man8/Makefile" ;;
index 8b0f1d5..c84d60d 100644 (file)
@@ -61,12 +61,6 @@ AC_CONFIG_FILES([
        udev/rules.d/Makefile
        etc/Makefile
        etc/init.d/Makefile
-       etc/init.d/zfs.arch
-       etc/init.d/zfs.gentoo
-       etc/init.d/zfs.lunar
-       etc/init.d/zfs.fedora
-       etc/init.d/zfs.lsb
-       etc/init.d/zfs.redhat
        etc/zfs/Makefile
        man/Makefile
        man/man8/Makefile
index 601a25a..73304bc 100644 (file)
@@ -1,6 +1 @@
-zfs.arch
-zfs.fedora
-zfs.gentoo
-zfs.lsb
-zfs.lunar
-zfs.redhat
+zfs
index 00bb268..94a2168 100644 (file)
@@ -1,5 +1,22 @@
-EXTRA_DIST = zfs.fedora zfs.gentoo zfs.lsb zfs.lunar zfs.redhat zfs.arch
+initdir = $(DEFAULT_INIT_DIR)
+init_SCRIPTS = zfs
 
-install-data-local:
-       @instdest=$(DESTDIR)$(DEFAULT_INIT_DIR)/zfs; \
-       $(INSTALL) -TD zfs.$(DEFAULT_INIT_SCRIPT) $$instdest
+EXTRA_DIST = \
+       $(top_srcdir)/etc/init.d/zfs.fedora.in \
+       $(top_srcdir)/etc/init.d/zfs.gentoo.in \
+       $(top_srcdir)/etc/init.d/zfs.lsb.in \
+       $(top_srcdir)/etc/init.d/zfs.lunar.in \
+       $(top_srcdir)/etc/init.d/zfs.redhat.in \
+       $(top_srcdir)/etc/init.d/zfs.arch.in
+
+$(init_SCRIPTS):
+       -$(SED) -e 's,@bindir\@,$(bindir),g' \
+               -e 's,@sbindir\@,$(sbindir),g' \
+               -e 's,@udevdir\@,$(udevdir),g' \
+               -e 's,@udevruledir\@,$(udevruledir),g' \
+               -e 's,@sysconfdir\@,$(sysconfdir),g' \
+               -e 's,@initdir\@,$(initdir),g' \
+               'zfs.$(DEFAULT_INIT_SCRIPT).in' >'$@'
+
+distclean-local::
+       -$(RM) $(init_SCRIPTS)
index 6ca2e27..32c73dc 100644 (file)
@@ -14,6 +14,7 @@
 # PARTICULAR PURPOSE.
 
 @SET_MAKE@
+
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
@@ -35,10 +36,7 @@ build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
 subdir = etc/init.d
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-       $(srcdir)/zfs.arch.in $(srcdir)/zfs.fedora.in \
-       $(srcdir)/zfs.gentoo.in $(srcdir)/zfs.lsb.in \
-       $(srcdir)/zfs.lunar.in $(srcdir)/zfs.redhat.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps =  \
        $(top_srcdir)/config/always-no-unused-but-set-variable.m4 \
@@ -88,9 +86,31 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/zfs_config.h
-CONFIG_CLEAN_FILES = zfs.arch zfs.gentoo zfs.lunar zfs.fedora zfs.lsb \
-       zfs.redhat
+CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(initdir)"
+SCRIPTS = $(init_SCRIPTS)
 AM_V_GEN = $(am__v_GEN_$(V))
 am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
 am__v_GEN_0 = @echo "  GEN   " $@;
@@ -270,7 +290,16 @@ top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 udevdir = @udevdir@
 udevruledir = @udevruledir@
-EXTRA_DIST = zfs.fedora zfs.gentoo zfs.lsb zfs.lunar zfs.redhat zfs.arch
+initdir = $(DEFAULT_INIT_DIR)
+init_SCRIPTS = zfs
+EXTRA_DIST = \
+       $(top_srcdir)/etc/init.d/zfs.fedora.in \
+       $(top_srcdir)/etc/init.d/zfs.gentoo.in \
+       $(top_srcdir)/etc/init.d/zfs.lsb.in \
+       $(top_srcdir)/etc/init.d/zfs.lunar.in \
+       $(top_srcdir)/etc/init.d/zfs.redhat.in \
+       $(top_srcdir)/etc/init.d/zfs.arch.in
+
 all: all-am
 
 .SUFFIXES:
@@ -304,18 +333,40 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(am__aclocal_m4_deps):
-zfs.arch: $(top_builddir)/config.status $(srcdir)/zfs.arch.in
-       cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-zfs.gentoo: $(top_builddir)/config.status $(srcdir)/zfs.gentoo.in
-       cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-zfs.lunar: $(top_builddir)/config.status $(srcdir)/zfs.lunar.in
-       cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-zfs.fedora: $(top_builddir)/config.status $(srcdir)/zfs.fedora.in
-       cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-zfs.lsb: $(top_builddir)/config.status $(srcdir)/zfs.lsb.in
-       cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-zfs.redhat: $(top_builddir)/config.status $(srcdir)/zfs.redhat.in
-       cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+install-initSCRIPTS: $(init_SCRIPTS)
+       @$(NORMAL_INSTALL)
+       test -z "$(initdir)" || $(MKDIR_P) "$(DESTDIR)$(initdir)"
+       @list='$(init_SCRIPTS)'; test -n "$(initdir)" || list=; \
+       for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+       done | \
+       sed -e 'p;s,.*/,,;n' \
+           -e 'h;s|.*|.|' \
+           -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+       $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+         { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+           if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+             if (++n[d] == $(am__install_max)) { \
+               print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+           else { print "f", d "/" $$4, $$1 } } \
+         END { for (d in files) print "f", d, files[d] }' | \
+       while read type dir files; do \
+            if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+            test -z "$$files" || { \
+              echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(initdir)$$dir'"; \
+              $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(initdir)$$dir" || exit $$?; \
+            } \
+       ; done
+
+uninstall-initSCRIPTS:
+       @$(NORMAL_UNINSTALL)
+       @list='$(init_SCRIPTS)'; test -n "$(initdir)" || exit 0; \
+       files=`for p in $$list; do echo "$$p"; done | \
+              sed -e 's,.*/,,;$(transform)'`; \
+       test -n "$$list" || exit 0; \
+       echo " ( cd '$(DESTDIR)$(initdir)' && rm -f" $$files ")"; \
+       cd "$(DESTDIR)$(initdir)" && rm -f $$files
 
 mostlyclean-libtool:
        -rm -f *.lo
@@ -361,8 +412,11 @@ distdir: $(DISTFILES)
        done
 check-am: all-am
 check: check-am
-all-am: Makefile
+all-am: Makefile $(SCRIPTS)
 installdirs:
+       for dir in "$(DESTDIR)$(initdir)"; do \
+         test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+       done
 install: install-am
 install-exec: install-exec-am
 install-data: install-data-am
@@ -394,7 +448,7 @@ clean-am: clean-generic clean-libtool mostlyclean-am
 
 distclean: distclean-am
        -rm -f Makefile
-distclean-am: clean-am distclean-generic
+distclean-am: clean-am distclean-generic distclean-local
 
 dvi: dvi-am
 
@@ -408,7 +462,7 @@ info: info-am
 
 info-am:
 
-install-data-am: install-data-local
+install-data-am: install-initSCRIPTS
 
 install-dvi: install-dvi-am
 
@@ -452,26 +506,35 @@ ps: ps-am
 
 ps-am:
 
-uninstall-am:
+uninstall-am: uninstall-initSCRIPTS
 
 .MAKE: install-am install-strip
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
-       distclean distclean-generic distclean-libtool distdir dvi \
-       dvi-am html html-am info info-am install install-am \
-       install-data install-data-am install-data-local install-dvi \
+       distclean distclean-generic distclean-libtool distclean-local \
+       distdir dvi dvi-am html html-am info info-am install \
+       install-am install-data install-data-am install-dvi \
        install-dvi-am install-exec install-exec-am install-html \
-       install-html-am install-info install-info-am install-man \
-       install-pdf install-pdf-am install-ps install-ps-am \
-       install-strip installcheck installcheck-am installdirs \
-       maintainer-clean maintainer-clean-generic mostlyclean \
-       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-       uninstall uninstall-am
-
-
-install-data-local:
-       @instdest=$(DESTDIR)$(DEFAULT_INIT_DIR)/zfs; \
-       $(INSTALL) -TD zfs.$(DEFAULT_INIT_SCRIPT) $$instdest
+       install-html-am install-info install-info-am \
+       install-initSCRIPTS install-man install-pdf install-pdf-am \
+       install-ps install-ps-am install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+       uninstall-initSCRIPTS
+
+
+$(init_SCRIPTS):
+       -$(SED) -e 's,@bindir\@,$(bindir),g' \
+               -e 's,@sbindir\@,$(sbindir),g' \
+               -e 's,@udevdir\@,$(udevdir),g' \
+               -e 's,@udevruledir\@,$(udevruledir),g' \
+               -e 's,@sysconfdir\@,$(sysconfdir),g' \
+               -e 's,@initdir\@,$(initdir),g' \
+               'zfs.$(DEFAULT_INIT_SCRIPT).in' >'$@'
+
+distclean-local::
+       -$(RM) $(init_SCRIPTS)
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index de2ea8a..9fa7cb4 100644 (file)
@@ -5,7 +5,7 @@
 
 ZFS="@sbindir@/zfs"
 ZPOOL="@sbindir@/zpool"
-ZPOOL_CACHE="@sysconfdir@/zfs/zpool.cache"
+ZPOOL_CACHE="@initdir@/zpool.cache"
 
 case "$1" in
   start)
index 04f2077..1583a10 100644 (file)
@@ -32,7 +32,7 @@ export PATH=/usr/local/sbin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin
 RETVAL=0
 ZFS="@sbindir@/zfs"
 ZPOOL="@sbindir@/zpool"
-ZPOOL_CACHE="@sysconfdir@/zfs/zpool.cache"
+ZPOOL_CACHE="@initdir@/zpool.cache"
 servicename=zfs
 LOCKFILE=/var/lock/subsys/$servicename
 
index 767aba8..31a539c 100644 (file)
@@ -13,7 +13,7 @@ depend()
 
 ZFS="@sbindir@/zfs"
 ZPOOL="@sbindir@/zpool"
-ZPOOL_CACHE="@sysconfdir@/zfs/zpool.cache"
+ZPOOL_CACHE="@initdir@/zpool.cache"
 ZFS_MODULE=zfs
 
 checksystem() {
index c781f05..675effe 100644 (file)
@@ -33,7 +33,7 @@ RETVAL=0
 LOCKFILE=/var/lock/zfs
 ZFS="@sbindir@/zfs"
 ZPOOL="@sbindir@/zpool"
-ZPOOL_CACHE="@sysconfdir@/zfs/zpool.cache"
+ZPOOL_CACHE="@initdir@/zpool.cache"
 
 [ -x $ZPOOL ] || exit 1
 [ -x $ZFS ] || exit 2
index 97384dc..22df3d2 100644 (file)
@@ -12,7 +12,7 @@
 
 ZFS="@sbindir@/zfs"
 ZPOOL="@sbindir@/zpool"
-ZPOOL_CACHE="@sysconfdir@/zfs/zpool.cache"
+ZPOOL_CACHE="@initdir@/zpool.cache"
 
 case $1 in
   start)  echo "$1ing ZFS filesystems"
index ae797c1..2b48e95 100644 (file)
@@ -32,7 +32,7 @@ export PATH=/usr/local/sbin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin
 RETVAL=0
 ZFS="@sbindir@/zfs"
 ZPOOL="@sbindir@/zpool"
-ZPOOL_CACHE="@sysconfdir@/zfs/zpool.cache"
+ZPOOL_CACHE="@initdir@/zpool.cache"
 servicename=zfs
 LOCKFILE=/var/lock/subsys/$servicename