]> git.eshelyaron.com Git - emacs.git/commitdiff
(set_installuser): New.
authorGlenn Morris <rgm@gnu.org>
Thu, 21 Feb 2008 09:04:29 +0000 (09:04 +0000)
committerGlenn Morris <rgm@gnu.org>
Thu, 21 Feb 2008 09:04:29 +0000 (09:04 +0000)
(install-arch-indep): Use set_installuser to avoid duplicate code.

ChangeLog
Makefile.in

index df7e99cf069ba2b208545df598c07c9c5d637fa2..787cfd7c81a0a57abe40ada1f4b6f4869642dbec 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2008-02-21  Glenn Morris  <rgm@gnu.org>
 
+       * Makefile.in (set_installuser): New.
+       (install-arch-indep): Use set_installuser to avoid duplicate code.
+
        * README.unicode: Split into admin/notes/unicode,font-backend and
        remove.
 
index 8adddf4df5a61a1591079fedbcdc71a638b2bfe2..721883e9943e568bb0880346b54fab661c47a60e 100644 (file)
@@ -414,6 +414,13 @@ install-arch-dep: mkdir
                        && cat > /dev/null))) || exit 1; \
        fi
 
+## http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg01672.html
+## Needs to be the user running install, so configure can't set it.
+set_installuser=for installuser in $${LOGNAME} $${USERNAME} $${USER} \
+         `id -un 2> /dev/null`; do \
+         [ -n "$${installuser}" ] && break ; \
+       done
+
 ### Install the files that are machine-independent.
 ### Most of them come straight from the distribution;
 ### the exception is the DOC-* files, which are copied
@@ -431,11 +438,6 @@ install-arch-dep: mkdir
 ## Note that the Makefiles in the etc directory are potentially useful
 ## in an installed Emacs, so should not be excluded.
 
-## installuser:
-## http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg01672.html
-## Nuisance because i) it needs to be the user running install, so
-## configure can't set it; ii) can't (?) use the result of rule
-## commands to set make variables.
 install-arch-indep: mkdir info install-etc
        -set ${COPYDESTS} ; \
        unset CDPATH; \
@@ -449,10 +451,7 @@ install-arch-indep: mkdir info install-etc
        mkdir ${COPYDESTS} ; \
        chmod ugo+rx ${COPYDESTS} ; \
        unset CDPATH; \
-       for installuser in $${LOGNAME} $${USERNAME} $${USER} \
-         `id -un 2> /dev/null`; do \
-         [ -n "$${installuser}" ] && break ; \
-       done ; \
+       $(set_installuser); \
        for dir in ${COPYDIR} ; do \
          dest=$$1 ; shift ; \
          [ -d $${dir} ] \
@@ -510,10 +509,7 @@ install-arch-indep: mkdir info install-etc
           (cd ./etc; tar -chf - $${docfile}) \
             |(cd $(DESTDIR)${docdir}; umask 022; tar -xvf - && cat > /dev/null) || exit 1; \
           (cd $(DESTDIR)$(docdir); \
-           for installuser in $${LOGNAME} $${USERNAME} $${USER} \
-             `id -un 2> /dev/null`; do \
-              [ -n "$${installuser}" ] && break ; \
-           done ; \
+           $(set_installuser); \
            chown $${installuser} DOC*; chmod a+r DOC*; \
            if test "`echo DOC-*`" != "DOC-*"; then rm -f DOC; fi); \
        else true; fi
@@ -527,10 +523,7 @@ install-arch-indep: mkdir info install-etc
           (cd lisp; tar -chf - *.el *.elc) \
             |(cd $(DESTDIR)${lispdir}; umask 022; tar -xvf - && cat > /dev/null) || exit 1; \
           (cd $(DESTDIR)${lispdir}; \
-           for installuser in $${LOGNAME} $${USERNAME} $${USER} \
-             `id -un 2> /dev/null`; do \
-              [ -n "$${installuser}" ] && break ; \
-           done ; \
+           $(set_installuser); \
            find . -exec chown $${installuser} {} ';') ; \
        else true; fi
        -unset CDPATH; \