]> git.eshelyaron.com Git - emacs.git/commitdiff
Don’t require chown/chgrp for game installation
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 24 Mar 2017 15:09:25 +0000 (10:09 -0500)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 24 Mar 2017 15:09:54 +0000 (10:09 -0500)
Problem reported by Joseph Mingrone in:
http://lists.gnu.org/archive/html/emacs-devel/2017-03/msg00622.html
* lib-src/Makefile.in (exp_archlibdir): Don’t fail if chown or
chgrp fails with update-game-score and the game directory.
Instead, expect the installer to fix this up afterwards.

lib-src/Makefile.in

index b2cd66c0498c55fc902efac7320310e1bb6add19..086d0dc9efc241e528606b41b8239c698bb2c344 100644 (file)
@@ -266,7 +266,9 @@ need-blessmail: blessmail
 maybe-blessmail: $(BLESSMAIL_TARGET)
 
 ## Install the internal utilities.  Until they are installed, we can
-## just run them directly from lib-src.
+## just run them directly from lib-src.  When installing, do not give
+## up if chown or chgrp fails, as the package responsible for
+## installing Emacs can fix this problem later.
 $(DESTDIR)${archlibdir}: all
        @echo
        @echo "Installing utilities run internally by Emacs."
@@ -283,15 +285,19 @@ $(DESTDIR)${archlibdir}: all
        touch "$(DESTDIR)${gamedir}/snake-scores" \
              "$(DESTDIR)${gamedir}/tetris-scores"
     ifneq (,$(gameuser))
-       chown ${gameuser} "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}"
-       chmod u+s,go-r "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}"
-       chown ${gameuser} "$(DESTDIR)${gamedir}"
-       chmod u=rwx,g=rx,o=rx "$(DESTDIR)${gamedir}"
+       -chown ${gameuser} \
+          "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}" \
+          "$(DESTDIR)${gamedir}" && \
+        chmod u+s,go-r \
+          "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}" && \
+        chmod u=rwx,g=rx,o=rx "$(DESTDIR)${gamedir}"
     else
-       chgrp ${gamegroup} "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}"
-       chmod g+s,o-r "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}"
-       chgrp ${gamegroup} "$(DESTDIR)${gamedir}"
-       chmod u=rwx,g=rwx,o=rx "$(DESTDIR)${gamedir}"
+       -chgrp ${gamegroup} \
+          "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}" && \
+          "$(DESTDIR)${gamedir}" && \
+        chmod g+s,o-r \
+          "$(DESTDIR)${archlibdir}/update-game-score${EXEEXT}" && \
+        chmod u=rwx,g=rwx,o=rx "$(DESTDIR)${gamedir}"
     endif
   endif
        exp_archlibdir=`cd "$(DESTDIR)${archlibdir}" && /bin/pwd` && \