summaryrefslogtreecommitdiff
path: root/Makefile.in
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2024-07-16 09:19:31 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2024-07-16 15:37:23 -0700
commit7cda30602fcaeecd0072d980a99156812fc7f086 (patch)
treed03d43988320eb5f294bb27d0221e7f89fa41150 /Makefile.in
parenta826296cff6ac1c636db83ff66199c60b69cdeb3 (diff)
Check for more ‘find’ failures and port ‘find’
* Makefile.in (install-eln), configure.ac (emacs_cv_find_delete): * make-dist: Use ‘find ... -exec CMD {} +’ rather than ‘find ... -exec CMD {} \;’ so that if CMD fails, ‘find’ fails too. * Makefile.in (install-eln): Port to ‘find’ implementations that behave differently from GNU ‘find’ when given an argument that contains ‘{}’ within a longer string. POSIX allows this behavior.
Diffstat (limited to 'Makefile.in')
-rw-r--r--Makefile.in10
1 files changed, 8 insertions, 2 deletions
diff --git a/Makefile.in b/Makefile.in
index 2ab8cf0ecc5..ade7d258a4c 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -915,8 +915,14 @@ install-etc:
install-eln: lisp
ifeq ($(HAVE_NATIVE_COMP),yes)
umask 022 ; \
- find native-lisp -type d -exec $(MKDIR_P) '$(ELN_DESTDIR){}' \; ; \
- find native-lisp -type f -exec ${INSTALL_ELN} '{}' '$(ELN_DESTDIR){}' \;
+ find native-lisp -exec sh -c \
+ 'for f in "$$@"; do \
+ if test -d "$$f"; then \
+ $(MKDIR_P) '\''$(ELN_DESTDIR)'\''"$$f" || exit; \
+ else \
+ $(INSTALL_ELN) "$$f" '\''$(ELN_DESTDIR)'\''"$$f"; \
+ fi || exit; \
+ done' - {} +
endif
### Build Emacs and install it, stripping binaries while installing them.