diff options
-rw-r--r-- | ChangeLog | 13 | ||||
-rw-r--r-- | Makefile.am | 4 | ||||
-rw-r--r-- | Makefile.in | 20 | ||||
-rw-r--r-- | THANKS | 1 | ||||
-rw-r--r-- | doc/Makefile.in | 22 | ||||
-rw-r--r-- | lib/Automake/Makefile.in | 26 | ||||
-rw-r--r-- | lib/Makefile.in | 26 | ||||
-rw-r--r-- | lib/am/Makefile.in | 16 | ||||
-rw-r--r-- | lib/am/data.am | 12 | ||||
-rw-r--r-- | lib/am/distdir.am | 6 | ||||
-rw-r--r-- | lib/am/install.am | 15 | ||||
-rw-r--r-- | lib/am/java.am | 12 | ||||
-rw-r--r-- | lib/am/libs.am | 16 | ||||
-rw-r--r-- | lib/am/lisp.am | 16 | ||||
-rw-r--r-- | lib/am/ltlib.am | 20 | ||||
-rw-r--r-- | lib/am/mans.am | 14 | ||||
-rw-r--r-- | lib/am/progs.am | 20 | ||||
-rw-r--r-- | lib/am/python.am | 16 | ||||
-rw-r--r-- | lib/am/scripts.am | 14 | ||||
-rw-r--r-- | lib/am/texinfos.am | 20 | ||||
-rw-r--r-- | m4/Makefile.in | 16 | ||||
-rw-r--r-- | tests/Makefile.am | 1 | ||||
-rw-r--r-- | tests/Makefile.in | 1 | ||||
-rwxr-xr-x | tests/instspc.test | 113 |
24 files changed, 299 insertions, 141 deletions
@@ -1,5 +1,18 @@ 2004-01-28 Alexandre Duret-Lutz <adl@gnu.org> + * Makefile.am (maintainer-check): Check for unquoted $(DESTDIR) uses. + * lib/am/data.am, lib/am/distdir.am, lib/am/java.am, lib/am/libs.am, + lib/am/lisp.am, lib/am/ltlib.am, lib/am/mans.am, lib/am/progs.am, + lib/am/python.am, lib/am/scripts.am, lib/am/texinfos.am: Quote + installation paths in install, uninstall, and installcheck rules, + as well as in am__installdirs variables. This is for the sake + of paths containing spaces. + * lib/am/install.am (installdirs-am, installdirs): Do not try + to create "" directories. + * test/instspc.test: New file. + * test/Makefile.am (TESTS): Add instspc.test. + Report from James Amundson. + * doc/automake.texi (Not Enough, Third-Party Makefiles): New nodes. (Extending): Make it a subsection of Not Enough. diff --git a/Makefile.am b/Makefile.am index 534e5b110..f344e8cc3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -252,6 +252,10 @@ maintainer-check: automake aclocal @if test `grep -E '^[^#]*@[A-Za-z_0-9]+@' automake | wc -l` -ne 0; then \ echo "Unresolved @...@ substitution in automake" 1>&2; \ exit 1; \ + fi; \ + if grep -E "[^\'\"]\\\$$\(DESTDIR" $(srcdir)/lib/am/*.am; then \ + echo 'Suspicious unquoted DESTDIR uses.' 1>&2 ; \ + exit 1; \ fi diff --git a/Makefile.in b/Makefile.in index da6b828a6..be28b29d2 100644 --- a/Makefile.in +++ b/Makefile.in @@ -52,7 +52,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/lib/mkinstalldirs CONFIG_CLEAN_FILES = -am__installdirs = $(DESTDIR)$(bindir) +am__installdirs = "$(DESTDIR)$(bindir)" binSCRIPT_INSTALL = $(INSTALL_SCRIPT) SCRIPTS = $(bin_SCRIPTS) SOURCES = @@ -206,13 +206,13 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) install-binSCRIPTS: $(bin_SCRIPTS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(bindir) + test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" @list='$(bin_SCRIPTS)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ if test -f $$d$$p; then \ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " $(binSCRIPT_INSTALL) $$d$$p $(DESTDIR)$(bindir)/$$f"; \ - $(binSCRIPT_INSTALL) $$d$$p $(DESTDIR)$(bindir)/$$f; \ + echo " $(binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \ + $(binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \ else :; fi; \ done @@ -220,8 +220,8 @@ uninstall-binSCRIPTS: @$(NORMAL_UNINSTALL) @list='$(bin_SCRIPTS)'; for p in $$list; do \ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " rm -f $(DESTDIR)$(bindir)/$$f"; \ - rm -f $(DESTDIR)$(bindir)/$$f; \ + echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ + rm -f "$(DESTDIR)$(bindir)/$$f"; \ done uninstall-info-am: @@ -486,7 +486,9 @@ check: check-recursive all-am: Makefile $(SCRIPTS) installdirs: installdirs-recursive installdirs-am: - $(mkdir_p) $(DESTDIR)$(bindir) + for dir in "$(DESTDIR)$(bindir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive @@ -741,6 +743,10 @@ maintainer-check: automake aclocal @if test `grep -E '^[^#]*@[A-Za-z_0-9]+@' automake | wc -l` -ne 0; then \ echo "Unresolved @...@ substitution in automake" 1>&2; \ exit 1; \ + fi; \ + if grep -E "[^\'\"]\\\$$\(DESTDIR" $(srcdir)/lib/am/*.am; then \ + echo 'Suspicious unquoted DESTDIR uses.' 1>&2 ; \ + exit 1; \ fi cvs-dist: maintainer-check @@ -88,6 +88,7 @@ Henrik Frystyk Nielsen frystyk@w3.org Ian Lance Taylor ian@cygnus.com Imacat imacat@mail.imacat.idv.tw Inoue inoue@ainet.or.jp +James Amundson amundson@users.sourceforge.net James Henstridge james@daa.com.au James R. Van Zandt jrv@vanzandt.mv.com James Youngman jay@gnu.org diff --git a/doc/Makefile.in b/doc/Makefile.in index c8daa4dc8..6dd570b46 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -64,7 +64,7 @@ TEXI2PDF = $(TEXI2DVI) --pdf --batch MAKEINFOHTML = $(MAKEINFO) --html AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) DVIPS = dvips -am__installdirs = $(DESTDIR)$(infodir) +am__installdirs = "$(DESTDIR)$(infodir)" ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -247,8 +247,8 @@ uninstall-info-am: list='$(INFO_DEPS)'; \ for file in $$list; do \ relfile=`echo "$$file" | sed 's|^.*/||'`; \ - echo " install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile"; \ - install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile; \ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \ + install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \ done; \ else :; fi @$(NORMAL_UNINSTALL) @@ -256,7 +256,7 @@ uninstall-info-am: for file in $$list; do \ relfile=`echo "$$file" | sed 's|^.*/||'`; \ relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \ - (if cd $(DESTDIR)$(infodir); then \ + (if cd "$(DESTDIR)$(infodir)"; then \ echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \ rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \ else :; fi); \ @@ -372,7 +372,9 @@ check-am: all-am check: check-am all-am: Makefile $(INFO_DEPS) installdirs: - $(mkdir_p) $(DESTDIR)$(infodir) + for dir in "$(DESTDIR)$(infodir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done install: install-am install-exec: install-exec-am install-data: install-data-am @@ -425,7 +427,7 @@ install-info: install-info-am install-info-am: $(INFO_DEPS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(infodir) + test -z "$(infodir)" || $(mkdir_p) "$(DESTDIR)$(infodir)" @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ list='$(INFO_DEPS)'; \ for file in $$list; do \ @@ -438,8 +440,8 @@ install-info-am: $(INFO_DEPS) $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \ if test -f $$ifile; then \ relfile=`echo "$$ifile" | sed 's|^.*/||'`; \ - echo " $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile"; \ - $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile; \ + echo " $(INSTALL_DATA) '$$ifile' '$(DESTDIR)$(infodir)/$$relfile'"; \ + $(INSTALL_DATA) "$$ifile" "$(DESTDIR)$(infodir)/$$relfile"; \ else : ; fi; \ done; \ done @@ -449,8 +451,8 @@ install-info-am: $(INFO_DEPS) list='$(INFO_DEPS)'; \ for file in $$list; do \ relfile=`echo "$$file" | sed 's|^.*/||'`; \ - echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile";\ - install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile || :;\ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\ + install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\ done; \ else : ; fi install-man: diff --git a/lib/Automake/Makefile.in b/lib/Automake/Makefile.in index f179f0334..a353d3728 100644 --- a/lib/Automake/Makefile.in +++ b/lib/Automake/Makefile.in @@ -63,7 +63,7 @@ am__vpath_adj = case $$p in \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -am__installdirs = $(DESTDIR)$(perllibdir) $(DESTDIR)$(perllibdir) +am__installdirs = "$(DESTDIR)$(perllibdir)" "$(DESTDIR)$(perllibdir)" dist_perllibDATA_INSTALL = $(INSTALL_DATA) nodist_perllibDATA_INSTALL = $(INSTALL_DATA) DATA = $(dist_perllib_DATA) $(nodist_perllib_DATA) @@ -207,37 +207,37 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps) uninstall-info-am: install-dist_perllibDATA: $(dist_perllib_DATA) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(perllibdir) + test -z "$(perllibdir)" || $(mkdir_p) "$(DESTDIR)$(perllibdir)" @list='$(dist_perllib_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ - echo " $(dist_perllibDATA_INSTALL) $$d$$p $(DESTDIR)$(perllibdir)/$$f"; \ - $(dist_perllibDATA_INSTALL) $$d$$p $(DESTDIR)$(perllibdir)/$$f; \ + echo " $(dist_perllibDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(perllibdir)/$$f'"; \ + $(dist_perllibDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(perllibdir)/$$f"; \ done uninstall-dist_perllibDATA: @$(NORMAL_UNINSTALL) @list='$(dist_perllib_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ - echo " rm -f $(DESTDIR)$(perllibdir)/$$f"; \ - rm -f $(DESTDIR)$(perllibdir)/$$f; \ + echo " rm -f '$(DESTDIR)$(perllibdir)/$$f'"; \ + rm -f "$(DESTDIR)$(perllibdir)/$$f"; \ done install-nodist_perllibDATA: $(nodist_perllib_DATA) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(perllibdir) + test -z "$(perllibdir)" || $(mkdir_p) "$(DESTDIR)$(perllibdir)" @list='$(nodist_perllib_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ - echo " $(nodist_perllibDATA_INSTALL) $$d$$p $(DESTDIR)$(perllibdir)/$$f"; \ - $(nodist_perllibDATA_INSTALL) $$d$$p $(DESTDIR)$(perllibdir)/$$f; \ + echo " $(nodist_perllibDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(perllibdir)/$$f'"; \ + $(nodist_perllibDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(perllibdir)/$$f"; \ done uninstall-nodist_perllibDATA: @$(NORMAL_UNINSTALL) @list='$(nodist_perllib_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ - echo " rm -f $(DESTDIR)$(perllibdir)/$$f"; \ - rm -f $(DESTDIR)$(perllibdir)/$$f; \ + echo " rm -f '$(DESTDIR)$(perllibdir)/$$f'"; \ + rm -f "$(DESTDIR)$(perllibdir)/$$f"; \ done # This directory's subdirectories are mostly independent; you can cd @@ -401,7 +401,9 @@ check: check-recursive all-am: Makefile $(DATA) installdirs: installdirs-recursive installdirs-am: - $(mkdir_p) $(DESTDIR)$(perllibdir) $(DESTDIR)$(perllibdir) + for dir in "$(DESTDIR)$(perllibdir)" "$(DESTDIR)$(perllibdir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive diff --git a/lib/Makefile.in b/lib/Makefile.in index 56d0e1446..4bb886c0c 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -66,7 +66,7 @@ am__vpath_adj = case $$p in \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -am__installdirs = $(DESTDIR)$(pkgvdatadir) $(DESTDIR)$(scriptdir) +am__installdirs = "$(DESTDIR)$(pkgvdatadir)" "$(DESTDIR)$(scriptdir)" dist_pkgvdataDATA_INSTALL = $(INSTALL_DATA) dist_scriptDATA_INSTALL = $(INSTALL_DATA) DATA = $(dist_pkgvdata_DATA) $(dist_script_DATA) @@ -183,37 +183,37 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps) uninstall-info-am: install-dist_pkgvdataDATA: $(dist_pkgvdata_DATA) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(pkgvdatadir) + test -z "$(pkgvdatadir)" || $(mkdir_p) "$(DESTDIR)$(pkgvdatadir)" @list='$(dist_pkgvdata_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ - echo " $(dist_pkgvdataDATA_INSTALL) $$d$$p $(DESTDIR)$(pkgvdatadir)/$$f"; \ - $(dist_pkgvdataDATA_INSTALL) $$d$$p $(DESTDIR)$(pkgvdatadir)/$$f; \ + echo " $(dist_pkgvdataDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgvdatadir)/$$f'"; \ + $(dist_pkgvdataDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgvdatadir)/$$f"; \ done uninstall-dist_pkgvdataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_pkgvdata_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ - echo " rm -f $(DESTDIR)$(pkgvdatadir)/$$f"; \ - rm -f $(DESTDIR)$(pkgvdatadir)/$$f; \ + echo " rm -f '$(DESTDIR)$(pkgvdatadir)/$$f'"; \ + rm -f "$(DESTDIR)$(pkgvdatadir)/$$f"; \ done install-dist_scriptDATA: $(dist_script_DATA) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(scriptdir) + test -z "$(scriptdir)" || $(mkdir_p) "$(DESTDIR)$(scriptdir)" @list='$(dist_script_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ - echo " $(dist_scriptDATA_INSTALL) $$d$$p $(DESTDIR)$(scriptdir)/$$f"; \ - $(dist_scriptDATA_INSTALL) $$d$$p $(DESTDIR)$(scriptdir)/$$f; \ + echo " $(dist_scriptDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(scriptdir)/$$f'"; \ + $(dist_scriptDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(scriptdir)/$$f"; \ done uninstall-dist_scriptDATA: @$(NORMAL_UNINSTALL) @list='$(dist_script_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ - echo " rm -f $(DESTDIR)$(scriptdir)/$$f"; \ - rm -f $(DESTDIR)$(scriptdir)/$$f; \ + echo " rm -f '$(DESTDIR)$(scriptdir)/$$f'"; \ + rm -f "$(DESTDIR)$(scriptdir)/$$f"; \ done # This directory's subdirectories are mostly independent; you can cd @@ -377,7 +377,9 @@ check: check-recursive all-am: Makefile $(DATA) installdirs: installdirs-recursive installdirs-am: - $(mkdir_p) $(DESTDIR)$(pkgvdatadir) $(DESTDIR)$(scriptdir) + for dir in "$(DESTDIR)$(pkgvdatadir)" "$(DESTDIR)$(scriptdir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive diff --git a/lib/am/Makefile.in b/lib/am/Makefile.in index 6d545df66..44948c4da 100644 --- a/lib/am/Makefile.in +++ b/lib/am/Makefile.in @@ -57,7 +57,7 @@ am__vpath_adj = case $$p in \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -am__installdirs = $(DESTDIR)$(amdir) +am__installdirs = "$(DESTDIR)$(amdir)" dist_amDATA_INSTALL = $(INSTALL_DATA) DATA = $(dist_am_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -202,20 +202,20 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps) uninstall-info-am: install-dist_amDATA: $(dist_am_DATA) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(amdir) + test -z "$(amdir)" || $(mkdir_p) "$(DESTDIR)$(amdir)" @list='$(dist_am_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ - echo " $(dist_amDATA_INSTALL) $$d$$p $(DESTDIR)$(amdir)/$$f"; \ - $(dist_amDATA_INSTALL) $$d$$p $(DESTDIR)$(amdir)/$$f; \ + echo " $(dist_amDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(amdir)/$$f'"; \ + $(dist_amDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(amdir)/$$f"; \ done uninstall-dist_amDATA: @$(NORMAL_UNINSTALL) @list='$(dist_am_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ - echo " rm -f $(DESTDIR)$(amdir)/$$f"; \ - rm -f $(DESTDIR)$(amdir)/$$f; \ + echo " rm -f '$(DESTDIR)$(amdir)/$$f'"; \ + rm -f "$(DESTDIR)$(amdir)/$$f"; \ done tags: TAGS TAGS: @@ -255,7 +255,9 @@ check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: - $(mkdir_p) $(DESTDIR)$(amdir) + for dir in "$(DESTDIR)$(amdir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done install: install-am install-exec: install-exec-am install-data: install-data-am diff --git a/lib/am/data.am b/lib/am/data.am index 2ff1e644c..45a928c4b 100644 --- a/lib/am/data.am +++ b/lib/am/data.am @@ -26,14 +26,14 @@ endif %?INSTALL% ## ------------ ## if %?INSTALL% -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?BASE?%DIR%%PRIMARY%_INSTALL = $(INSTALL_%ONE_PRIMARY%) ?!BASE?%DIR%%PRIMARY%_INSTALL = $(install_sh_DATA) ?EXEC?.PHONY install-exec-am: install-%DIR%%PRIMARY% ?!EXEC?.PHONY install-data-am: install-%DIR%%PRIMARY% install-%DIR%%PRIMARY%: $(%DIR%_%PRIMARY%) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(%NDIR%dir) + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)" ?!BASE? @$(am__vpath_adj_setup) \ ## Funny invocation because Makefile variable can be empty, leading to ## a syntax error in sh. @@ -46,8 +46,8 @@ install-%DIR%%PRIMARY%: $(%DIR%_%PRIMARY%) ## new dir variable or use a nobase_ target for the latter case. ?BASE? f=$(am__strip_dir) \ ?!BASE? $(am__vpath_adj) \ - echo " $(%DIR%%PRIMARY%_INSTALL) $$d$$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ - $(%DIR%%PRIMARY%_INSTALL) $$d$$p $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " $(%DIR%%PRIMARY%_INSTALL) '$$d$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + $(%DIR%%PRIMARY%_INSTALL) "$$d$$p" "$(DESTDIR)$(%NDIR%dir)/$$f"; \ done endif %?INSTALL% @@ -65,8 +65,8 @@ uninstall-%DIR%%PRIMARY%: ?BASE? @list='$(%DIR%_%PRIMARY%)'; for p in $$list; do \ ?BASE? f=$(am__strip_dir) \ ?!BASE? $(am__vpath_adj) \ - echo " rm -f $(DESTDIR)$(%NDIR%dir)/$$f"; \ - rm -f $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " rm -f '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$$f"; \ done endif %?INSTALL% diff --git a/lib/am/distdir.am b/lib/am/distdir.am index 0671a4843..71ee77692 100644 --- a/lib/am/distdir.am +++ b/lib/am/distdir.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. +## Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -324,8 +324,8 @@ distcheck: dist ## Undo the write access. chmod a-w $(distdir) ## Compute the absolute path of `_inst'. Strip any leading DOS drive -## to allow DESTDIR installations. Otherwise $(DESTDIR)$(prefix) would -## expand to c:/temp/am-dc-5668/c:/src/package/package-1.0/_inst. +## to allow DESTDIR installations. Otherwise "$(DESTDIR)$(prefix)" would +## expand to "c:/temp/am-dc-5668/c:/src/package/package-1.0/_inst". dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ ## We will attemp a DESTDIR install in $dc_destdir. We don't ## create this directory under $dc_install_base, because it would diff --git a/lib/am/install.am b/lib/am/install.am index d91421672..487ff28a7 100644 --- a/lib/am/install.am +++ b/lib/am/install.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. +## Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -20,17 +20,26 @@ ## installdirs -- Creating the installdirs. ## ## ----------------------------------------- ## +## The reason we loop over %am__installdirs% (instead of simply running +## `$(mkdir_p) %am__installdirs%') is that directories variable such as +## `"$(DESTDIR)$(mydir)"' can potentially expand to `""' if `$(mydir)' +## is conditionally defined. BTW, those directories are quoted in +## order to support installation paths with spaces. if %?SUBDIRS% .PHONY: installdirs installdirs-am RECURSIVE_TARGETS += installdirs-recursive installdirs: installdirs-recursive installdirs-am:%installdirs-local% -?am__installdirs? $(mkdir_p) %am__installdirs% +?am__installdirs? for dir in %am__installdirs%; do \ +?am__installdirs? test -z "$$dir" || $(mkdir_p) "$$dir"; \ +?am__installdirs? done else !%?SUBDIRS% .PHONY: installdirs installdirs:%installdirs-local% -?am__installdirs? $(mkdir_p) %am__installdirs% +?am__installdirs? for dir in %am__installdirs%; do \ +?am__installdirs? test -z "$$dir" || $(mkdir_p) "$$dir"; \ +?am__installdirs? done endif !%?SUBDIRS% diff --git a/lib/am/java.am b/lib/am/java.am index 04b6ec89f..723df3c23 100644 --- a/lib/am/java.am +++ b/lib/am/java.am @@ -39,18 +39,18 @@ class%DIR%.stamp: $(%DIR%_JAVA) ## ------------ ## if %?INSTALL% -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?EXEC?.PHONY install-exec-am: install-%DIR%JAVA ?!EXEC?.PHONY install-data-am: install-%DIR%JAVA install-%DIR%JAVA: class%DIR%.stamp @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(%NDIR%dir) + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)" ## A single .java file can be compiled into multiple .class files. So ## we just install all the .class files that got built into this ## directory. This is not optimal, but will have to do for now. for p in *.class; do \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(%NDIR%dir)/$$p"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(%NDIR%dir)/$$p; \ + echo " $(INSTALL_DATA) '$$p' '$(DESTDIR)$(%NDIR%dir)/$$p'"; \ + $(INSTALL_DATA) "$$p" "$(DESTDIR)$(%NDIR%dir)/$$p"; \ done endif %?INSTALL% @@ -64,8 +64,8 @@ if %?INSTALL% uninstall-%DIR%JAVA: @$(NORMAL_UNINSTALL) @for p in *.class; do \ - echo " rm -f $(DESTDIR)$(%NDIR%dir)/$$p"; \ - rm -f $(DESTDIR)$(%NDIR%dir)/$$p; \ + echo " rm -f '$(DESTDIR)$(%NDIR%dir)/$$p'"; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$$p"; \ done endif %?INSTALL% diff --git a/lib/am/libs.am b/lib/am/libs.am index 9d61e0a5b..a51b037ef 100644 --- a/lib/am/libs.am +++ b/lib/am/libs.am @@ -37,14 +37,14 @@ endif %?FIRST% ## ------------ ## if %?INSTALL% -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?BASE?%DIR%LIBRARIES_INSTALL = $(INSTALL_DATA) ?!BASE?%DIR%LIBRARIES_INSTALL = $(install_sh_DATA) ?EXEC?.PHONY install-exec-am: install-%DIR%LIBRARIES ?!EXEC?.PHONY install-data-am: install-%DIR%LIBRARIES install-%DIR%LIBRARIES: $(%DIR%_LIBRARIES) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(%NDIR%dir) + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)" ## Funny invocation because Makefile variable can be empty, leading to ## a syntax error in sh. @list='$(%DIR%_LIBRARIES)'; for p in $$list; do \ @@ -54,8 +54,8 @@ install-%DIR%LIBRARIES: $(%DIR%_LIBRARIES) ## not '$(DESTDIR)$(%NDIR%dir)/python/foo.yo'. ?BASE? f=$(am__strip_dir) \ ?!BASE? f=$$p; \ - echo " $(%DIR%LIBRARIES_INSTALL) $$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ - $(%DIR%LIBRARIES_INSTALL) $$p $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " $(%DIR%LIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + $(%DIR%LIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(%NDIR%dir)/$$f"; \ else :; fi; \ done ## We do two loops here so that $(POST_INSTALL) can be empty. If we @@ -68,8 +68,8 @@ install-%DIR%LIBRARIES: $(%DIR%_LIBRARIES) if test -f $$p; then \ ?BASE? p=$(am__strip_dir) \ ## Must ranlib after installing because mod time changes. - echo " $(RANLIB) $(DESTDIR)$(%NDIR%dir)/$$p"; \ - $(RANLIB) $(DESTDIR)$(%NDIR%dir)/$$p; \ + echo " $(RANLIB) '$(DESTDIR)$(%NDIR%dir)/$$p'"; \ + $(RANLIB) "$(DESTDIR)$(%NDIR%dir)/$$p"; \ else :; fi; \ done endif %?INSTALL% @@ -85,8 +85,8 @@ uninstall-%DIR%LIBRARIES: @$(NORMAL_UNINSTALL) @list='$(%DIR%_LIBRARIES)'; for p in $$list; do \ ?BASE? p=$(am__strip_dir) \ - echo " rm -f $(DESTDIR)$(%NDIR%dir)/$$p"; \ - rm -f $(DESTDIR)$(%NDIR%dir)/$$p; \ + echo " rm -f '$(DESTDIR)$(%NDIR%dir)/$$p'"; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$$p"; \ done endif %?INSTALL% diff --git a/lib/am/lisp.am b/lib/am/lisp.am index 492e2904f..392ae6ced 100644 --- a/lib/am/lisp.am +++ b/lib/am/lisp.am @@ -54,7 +54,7 @@ elc-stamp: $(am__ELFILES) ## ------------ ## if %?INSTALL% -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?BASE?%DIR%LISP_INSTALL = $(INSTALL_DATA) ?!BASE?%DIR%LISP_INSTALL = $(install_sh_DATA) ?EXEC?.PHONY install-exec-am: install-%DIR%LISP @@ -63,7 +63,7 @@ install-%DIR%LISP: $(%DIR%_LISP) $(ELCFILES) @$(NORMAL_INSTALL) ## Do not install anything if EMACS was not found. @if test "$(EMACS)" != no; then \ - $(mkdir_p) $(DESTDIR)$(%NDIR%dir); \ + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)"; \ ?!BASE? $(am__vpath_adj_setup) \ ## Funny invocation because Makefile variable can be empty, leading to ## a syntax error in sh. @@ -72,12 +72,12 @@ install-%DIR%LISP: $(%DIR%_LISP) $(ELCFILES) if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ ?BASE? f=$(am__strip_dir) \ ?!BASE? $(am__vpath_adj) \ - echo " $(%DIR%LISP_INSTALL) $$d$$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ - $(%DIR%LISP_INSTALL) $$d$$p $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " $(%DIR%LISP_INSTALL) '$$d$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + $(%DIR%LISP_INSTALL) "$$d$$p" "$(DESTDIR)$(%NDIR%dir)/$$f"; \ ## Only install .elc file if it exists. if test -f $${p}c; then \ - echo " $(%DIR%LISP_INSTALL) $${p}c $(DESTDIR)$(%NDIR%dir)/$${f}c"; \ - $(%DIR%LISP_INSTALL) $${p}c $(DESTDIR)$(%NDIR%dir)/$${f}c; \ + echo " $(%DIR%LISP_INSTALL) '$${p}c' '$(DESTDIR)$(%NDIR%dir)/$${f}c'"; \ + $(%DIR%LISP_INSTALL) "$${p}c" "$(DESTDIR)$(%NDIR%dir)/$${f}c"; \ else : ; fi; \ done; \ else : ; fi @@ -98,8 +98,8 @@ uninstall-%DIR%LISP: list='$(%DIR%_LISP)'; for p in $$list; do \ ?BASE? f=$(am__strip_dir) \ ?!BASE? $(am__vpath_adj) \ - echo " rm -f $(DESTDIR)$(%NDIR%dir)/$$f $(DESTDIR)$(%NDIR%dir)/$${f}c"; \ - rm -f $(DESTDIR)$(%NDIR%dir)/$$f $(DESTDIR)$(%NDIR%dir)/$${f}c; \ + echo " rm -f '$(DESTDIR)$(%NDIR%dir)/$$f' '$(DESTDIR)$(%NDIR%dir)/$${f}c'"; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$$f" "$(DESTDIR)$(%NDIR%dir)/$${f}c"; \ done; \ else : ; fi endif %?INSTALL% diff --git a/lib/am/ltlib.am b/lib/am/ltlib.am index 2dd4ce6a2..0f6cc490c 100644 --- a/lib/am/ltlib.am +++ b/lib/am/ltlib.am @@ -26,14 +26,14 @@ endif %?INSTALL% ## ------------ ## if %?INSTALL% -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?BASE?%DIR%LTLIBRARIES_INSTALL = $(INSTALL) ?!BASE?%DIR%LTLIBRARIES_INSTALL = $(install_sh) -c ?EXEC?.PHONY install-exec-am: install-%DIR%LTLIBRARIES ?!EXEC?.PHONY install-data-am: install-%DIR%LTLIBRARIES install-%DIR%LTLIBRARIES: $(%DIR%_LTLIBRARIES) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(%NDIR%dir) + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)" ## Funny invocation because Makefile variable can be empty, leading to ## a syntax error in sh. @list='$(%DIR%_LTLIBRARIES)'; for p in $$list; do \ @@ -47,10 +47,10 @@ install-%DIR%LTLIBRARIES: $(%DIR%_LTLIBRARIES) ## if the program doesn't have a name that libtool expects. ## Use INSTALL and not INSTALL_DATA because libtool knows the right ## permissions to use. -?LIBTOOL? echo " $(LIBTOOL) --mode=install $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ -?LIBTOOL? $(LIBTOOL) --mode=install $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(%NDIR%dir)/$$f; \ -?!LIBTOOL? echo " $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ -?!LIBTOOL? $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(%NDIR%dir)/$$f; \ +?LIBTOOL? echo " $(LIBTOOL) --mode=install $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ +?LIBTOOL? $(LIBTOOL) --mode=install $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(%NDIR%dir)/$$f"; \ +?!LIBTOOL? echo " $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ +?!LIBTOOL? $(%DIR%LTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(%NDIR%dir)/$$f"; \ else :; fi; \ done endif %?INSTALL% @@ -66,10 +66,10 @@ uninstall-%DIR%LTLIBRARIES: @$(NORMAL_UNINSTALL) @set -x; list='$(%DIR%_LTLIBRARIES)'; for p in $$list; do \ ?BASE? p=$(am__strip_dir) \ -?LIBTOOL? echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(%NDIR%dir)/$$p"; \ -?LIBTOOL? $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(%NDIR%dir)/$$p; \ -?!LIBTOOL? echo " rm -f $(DESTDIR)$(%NDIR%dir)/$$p"; \ -?!LIBTOOL? rm -f $(DESTDIR)$(%NDIR%dir)/$$p; \ +?LIBTOOL? echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(%NDIR%dir)/$$p'"; \ +?LIBTOOL? $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(%NDIR%dir)/$$p"; \ +?!LIBTOOL? echo " rm -f '$(DESTDIR)$(%NDIR%dir)/$$p'"; \ +?!LIBTOOL? rm -f "$(DESTDIR)$(%NDIR%dir)/$$p"; \ done endif %?INSTALL% diff --git a/lib/am/mans.am b/lib/am/mans.am index b0ab625b1..08db24e0a 100644 --- a/lib/am/mans.am +++ b/lib/am/mans.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1998, 2001, 2003 Free Software Foundation, Inc. +## Copyright (C) 1998, 2001, 2003, 2004 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -27,11 +27,11 @@ man%SECTION%dir = $(mandir)/man%SECTION% .PHONY: install-man ?INSTALL-MAN?install-data-am: install-man -?INSTALL-MAN?am__installdirs += $(DESTDIR)$(man%SECTION%dir) +?INSTALL-MAN?am__installdirs += "$(DESTDIR)$(man%SECTION%dir)" .PHONY install-man: install-man%SECTION% install-man%SECTION%: $(man%SECTION%_MANS) $(man_MANS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(man%SECTION%dir) + test -z "$(man%SECTION%dir)" || $(mkdir_p) "$(DESTDIR)$(man%SECTION%dir)" @list='$(man%SECTION%_MANS) $(dist_man%SECTION%_MANS) $(nodist_man%SECTION%_MANS)'; \ ## Extract all items from man_MANS that should go in this section. ## This must be done dynamically to support conditionals. @@ -57,8 +57,8 @@ install-man%SECTION%: $(man%SECTION%_MANS) $(man_MANS) inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed -e 's/^.*\///'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man%SECTION%dir)/$$inst"; \ - $(INSTALL_DATA) $$file $(DESTDIR)$(man%SECTION%dir)/$$inst; \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man%SECTION%dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man%SECTION%dir)/$$inst"; \ done @@ -94,6 +94,6 @@ uninstall-man%SECTION%: inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed -e 's/^.*\///'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " rm -f $(DESTDIR)$(man%SECTION%dir)/$$inst"; \ - rm -f $(DESTDIR)$(man%SECTION%dir)/$$inst; \ + echo " rm -f '$(DESTDIR)$(man%SECTION%dir)/$$inst'"; \ + rm -f "$(DESTDIR)$(man%SECTION%dir)/$$inst"; \ done diff --git a/lib/am/progs.am b/lib/am/progs.am index 50cbd1b6c..dc3c9b02e 100644 --- a/lib/am/progs.am +++ b/lib/am/progs.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2003 +## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2003, 2004 ## Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify @@ -23,14 +23,14 @@ ## ------------ ## if %?INSTALL% -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?BASE?%DIR%PROGRAMS_INSTALL = $(INSTALL_PROGRAM) ?!BASE?%DIR%PROGRAMS_INSTALL = $(install_sh_PROGRAM) ?EXEC?.PHONY install-exec-am: install-%DIR%PROGRAMS ?!EXEC?.PHONY install-data-am: install-%DIR%PROGRAMS install-%DIR%PROGRAMS: $(%DIR%_PROGRAMS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(%NDIR%dir) + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)" ## Funny invocation because Makefile variable can be empty, leading to ## a syntax error in sh. @list='$(%DIR%_PROGRAMS)'; for p in $$list; do \ @@ -51,10 +51,10 @@ install-%DIR%PROGRAMS: $(%DIR%_PROGRAMS) ## Note that we explicitly set the libtool mode. This avoids any ## lossage if the install program doesn't have a name that libtool ## expects. -?LIBTOOL? echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(%DIR%PROGRAMS_INSTALL) $$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ -?LIBTOOL? $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(%DIR%PROGRAMS_INSTALL) $$p $(DESTDIR)$(%NDIR%dir)/$$f || exit 1; \ -?!LIBTOOL? echo " $(INSTALL_PROGRAM_ENV) $(%DIR%PROGRAMS_INSTALL) $$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ -?!LIBTOOL? $(INSTALL_PROGRAM_ENV) $(%DIR%PROGRAMS_INSTALL) $$p $(DESTDIR)$(%NDIR%dir)/$$f || exit 1; \ +?LIBTOOL? echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(%DIR%PROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ +?LIBTOOL? $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(%DIR%PROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(%NDIR%dir)/$$f" || exit 1; \ +?!LIBTOOL? echo " $(INSTALL_PROGRAM_ENV) $(%DIR%PROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ +?!LIBTOOL? $(INSTALL_PROGRAM_ENV) $(%DIR%PROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(%NDIR%dir)/$$f" || exit 1; \ else :; fi; \ done endif %?INSTALL% @@ -73,8 +73,8 @@ uninstall-%DIR%PROGRAMS: f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ ## Prepend the directory part if nobase_ is used. ?!BASE? f=`echo "$$p" | sed 's|[^/]*$$||'`"$$f"; \ - echo " rm -f $(DESTDIR)$(%NDIR%dir)/$$f"; \ - rm -f $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " rm -f '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$$f"; \ done endif %?INSTALL% @@ -120,7 +120,7 @@ installcheck-%DIR%PROGRAMS: $(%DIR%_PROGRAMS) ## Insert the directory back if nobase_ is used. ?!BASE? f=`echo "$$p" | sed 's|[^/]*$$||'`"$$f"; \ for opt in --help --version; do \ - if $(DESTDIR)$(%NDIR%dir)/$$f $$opt > c$${pid}_.out 2> c$${pid}_.err \ + if "$(DESTDIR)$(%NDIR%dir)/$$f" $$opt > c$${pid}_.out 2> c$${pid}_.err \ && test -n "`cat c$${pid}_.out`" \ && test -z "`cat c$${pid}_.err`"; then :; \ else echo "$$f does not support $$opt" 1>&2; bad=1; fi; \ diff --git a/lib/am/python.am b/lib/am/python.am index 9af7f7e16..6a7ae4cab 100644 --- a/lib/am/python.am +++ b/lib/am/python.am @@ -25,14 +25,14 @@ endif %?INSTALL% ## ------------ ## if %?INSTALL% -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?BASE?%DIR%PYTHON_INSTALL = $(INSTALL_DATA) ?!BASE?%DIR%PYTHON_INSTALL = $(install_sh_DATA) ?EXEC?.PHONY install-exec-am: install-%DIR%PYTHON ?!EXEC?.PHONY install-data-am: install-%DIR%PYTHON install-%DIR%PYTHON: $(%DIR%_PYTHON) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(%NDIR%dir) + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)" ?!BASE? @$(am__vpath_adj_setup) \ ?!BASE? list='$(%DIR%_PYTHON)'; dlist=''; for p in $$list; do\ ?BASE? @list='$(%DIR%_PYTHON)'; dlist=''; for p in $$list; do\ @@ -46,14 +46,14 @@ install-%DIR%PYTHON: $(%DIR%_PYTHON) ?!BASE? $(am__vpath_adj) \ dlist="$$dlist $$f"; \ ## Don't perform translation, since script name is important. - echo " $(%DIR%PYTHON_INSTALL) $$b$$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ - $(%DIR%PYTHON_INSTALL) $$b$$p $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " $(%DIR%PYTHON_INSTALL) '$$b$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + $(%DIR%PYTHON_INSTALL) "$$b$$p" "$(DESTDIR)$(%NDIR%dir)/$$f"; \ else :; fi; \ done; \ ## Byte-compile must be done at install time, since file times are ## encoded in the actual files. test -z "$$dlist" || \ - PYTHON=$(PYTHON) $(py_compile) --basedir $(DESTDIR)$(%NDIR%dir) $$dlist + PYTHON=$(PYTHON) $(py_compile) --basedir "$(DESTDIR)$(%NDIR%dir)" $$dlist endif %?INSTALL% @@ -70,11 +70,11 @@ uninstall-%DIR%PYTHON: ?BASE? @list='$(%DIR%_PYTHON)'; dlist=''; for p in $$list; do\ ?BASE? f=$(am__strip_dir) \ ?!BASE? $(am__vpath_adj) \ - rm -f $(DESTDIR)$(%NDIR%dir)/$$f; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$$f"; \ ## This is to remove the .pyc and .pyo byte compiled versions (a bit ## of a hack). - rm -f $(DESTDIR)$(%NDIR%dir)/$${d}c; \ - rm -f $(DESTDIR)$(%NDIR%dir)/$${d}o; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$${f}c"; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$${f}o"; \ done endif %?INSTALL% diff --git a/lib/am/scripts.am b/lib/am/scripts.am index 74e327b1f..374f990df 100644 --- a/lib/am/scripts.am +++ b/lib/am/scripts.am @@ -29,14 +29,14 @@ endif %?INSTALL% if %?INSTALL% ## if doesn't work properly for Automake variables yet. -am__installdirs += $(DESTDIR)$(%NDIR%dir) +am__installdirs += "$(DESTDIR)$(%NDIR%dir)" ?BASE?%DIR%SCRIPT_INSTALL = $(INSTALL_SCRIPT) ?!BASE?%DIR%SCRIPT_INSTALL = $(install_sh_SCRIPT) ?EXEC?.PHONY install-exec-am: install-%DIR%SCRIPTS ?!EXEC?.PHONY install-data-am: install-%DIR%SCRIPTS install-%DIR%SCRIPTS: $(%DIR%_SCRIPTS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(%NDIR%dir) + test -z "$(%NDIR%dir)" || $(mkdir_p) "$(DESTDIR)$(%NDIR%dir)" ?!BASE? @$(am__vpath_adj_setup) \ ## Funny invocation because Makefile variable can be empty, leading to ## a syntax error in sh. @@ -54,8 +54,8 @@ install-%DIR%SCRIPTS: $(%DIR%_SCRIPTS) f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ ## Prepend the directory part if nobase_ is used. ?!BASE? f=`echo "$$p" | sed 's|[^/]*$$||'`"$$f"; \ - echo " $(%DIR%SCRIPT_INSTALL) $$d$$p $(DESTDIR)$(%NDIR%dir)/$$f"; \ - $(%DIR%SCRIPT_INSTALL) $$d$$p $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " $(%DIR%SCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + $(%DIR%SCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(%NDIR%dir)/$$f"; \ else :; fi; \ done endif %?INSTALL% @@ -77,8 +77,8 @@ uninstall-%DIR%SCRIPTS: f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ ## Prepend the directory part if nobase_ is used. ?!BASE? f=`echo "$$p" | sed 's|[^/]*$$||'`"$$f"; \ - echo " rm -f $(DESTDIR)$(%NDIR%dir)/$$f"; \ - rm -f $(DESTDIR)$(%NDIR%dir)/$$f; \ + echo " rm -f '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ + rm -f "$(DESTDIR)$(%NDIR%dir)/$$f"; \ done endif %?INSTALL% @@ -110,7 +110,7 @@ installcheck-%DIR%SCRIPTS: $(%DIR%_SCRIPTS) ## Insert the directory back if nobase_ is used. ?!BASE? f=`echo "$$p" | sed 's|[^/]*$$||'`"$$f"; \ for opt in --help --version; do \ - if $(DESTDIR)$(%NDIR%dir)/$$f $$opt > c$${pid}_.out 2> c$${pid}_.err \ + if "$(DESTDIR)$(%NDIR%dir)/$$f" $$opt > c$${pid}_.out 2> c$${pid}_.err \ && test -n "`cat c$${pid}_.out`" \ && test -z "`cat c$${pid}_.err`"; then :; \ else echo "$$f does not support $$opt" 1>&2; bad=1; fi; \ diff --git a/lib/am/texinfos.am b/lib/am/texinfos.am index bc02a66e0..916949f96 100644 --- a/lib/am/texinfos.am +++ b/lib/am/texinfos.am @@ -1,6 +1,6 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 +## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 ## Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify @@ -107,7 +107,7 @@ endif ! %?LOCAL-TEXIS% ## is hard coded. if %?INSTALL-INFO% if %?LOCAL-TEXIS% -am__installdirs += $(DESTDIR)$(infodir) +am__installdirs += "$(DESTDIR)$(infodir)" install-data-am: install-info-am endif %?LOCAL-TEXIS% endif %?INSTALL-INFO% @@ -123,7 +123,7 @@ endif !%?SUBDIRS% if %?LOCAL-TEXIS% install-info-am: $(INFO_DEPS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(infodir) + test -z "$(infodir)" || $(mkdir_p) "$(DESTDIR)$(infodir)" @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ list='$(INFO_DEPS)'; \ for file in $$list; do \ @@ -147,8 +147,8 @@ install-info-am: $(INFO_DEPS) if test -f $$ifile; then \ ## Strip directory relfile=`echo "$$ifile" | sed 's|^.*/||'`; \ - echo " $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile"; \ - $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile; \ + echo " $(INSTALL_DATA) '$$ifile' '$(DESTDIR)$(infodir)/$$relfile'"; \ + $(INSTALL_DATA) "$$ifile" "$(DESTDIR)$(infodir)/$$relfile"; \ else : ; fi; \ done; \ done @@ -174,10 +174,10 @@ install-info-am: $(INFO_DEPS) ## instance if you don't have a dir file, install-info will fail. I ## think instead it should create a new dir file for you. This bug ## causes the `make distcheck' target to fail reliably. - echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile";\ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\ ## Use `|| :' here because Sun make passes -e to sh; if install-info ## fails then we'd fail if we used `;'. - install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile || :;\ + install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\ done; \ else : ; fi else ! %?LOCAL-TEXIS% @@ -207,8 +207,8 @@ uninstall-info-am: relfile=`echo "$$file" | sed 's|^.*/||'`; \ ## install-info needs the actual info file. We use the installed one, ## rather than relying on one still being in srcdir or builddir. - echo " install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile"; \ - install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile; \ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \ + install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \ done; \ else :; fi @$(NORMAL_UNINSTALL) @@ -217,7 +217,7 @@ uninstall-info-am: relfile=`echo "$$file" | sed 's|^.*/||'`; \ ## DJGPP-style info files. See comment in install-info-am. relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \ - (if cd $(DESTDIR)$(infodir); then \ + (if cd "$(DESTDIR)$(infodir)"; then \ echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \ rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \ else :; fi); \ diff --git a/m4/Makefile.in b/m4/Makefile.in index cd3dfaac5..8eefad682 100644 --- a/m4/Makefile.in +++ b/m4/Makefile.in @@ -57,7 +57,7 @@ am__vpath_adj = case $$p in \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -am__installdirs = $(DESTDIR)$(m4datadir) +am__installdirs = "$(DESTDIR)$(m4datadir)" dist_m4dataDATA_INSTALL = $(INSTALL_DATA) DATA = $(dist_m4data_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -195,20 +195,20 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps) uninstall-info-am: install-dist_m4dataDATA: $(dist_m4data_DATA) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(m4datadir) + test -z "$(m4datadir)" || $(mkdir_p) "$(DESTDIR)$(m4datadir)" @list='$(dist_m4data_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ - echo " $(dist_m4dataDATA_INSTALL) $$d$$p $(DESTDIR)$(m4datadir)/$$f"; \ - $(dist_m4dataDATA_INSTALL) $$d$$p $(DESTDIR)$(m4datadir)/$$f; \ + echo " $(dist_m4dataDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(m4datadir)/$$f'"; \ + $(dist_m4dataDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(m4datadir)/$$f"; \ done uninstall-dist_m4dataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_m4data_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ - echo " rm -f $(DESTDIR)$(m4datadir)/$$f"; \ - rm -f $(DESTDIR)$(m4datadir)/$$f; \ + echo " rm -f '$(DESTDIR)$(m4datadir)/$$f'"; \ + rm -f "$(DESTDIR)$(m4datadir)/$$f"; \ done tags: TAGS TAGS: @@ -249,7 +249,9 @@ check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: - $(mkdir_p) $(DESTDIR)$(m4datadir) + for dir in "$(DESTDIR)$(m4datadir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done install: install-am install-exec: install-exec-am install-data: install-data-am diff --git a/tests/Makefile.am b/tests/Makefile.am index 683d8395b..572dedb5d 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -246,6 +246,7 @@ instexec.test \ insthook.test \ instman.test \ instman2.test \ +instspc.test \ interp.test \ interp2.test \ java.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index c76aaaa5d..7bf4df89f 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -360,6 +360,7 @@ instexec.test \ insthook.test \ instman.test \ instman2.test \ +instspc.test \ interp.test \ interp2.test \ java.test \ diff --git a/tests/instspc.test b/tests/instspc.test new file mode 100755 index 000000000..04e3d079d --- /dev/null +++ b/tests/instspc.test @@ -0,0 +1,113 @@ +#! /bin/sh +# Copyright (C) 2004 Free Software Foundation, Inc. +# +# This file is part of GNU Automake. +# +# GNU Automake is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# GNU Automake is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Automake; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +# Check that installation to directory with spaces succeed. +# Report from James Amundson. + +# This is mostly the same input as nobase.test, but we do not use +# libtool libraries, because Libtool does not preserve space in +# filenames (Issue observed with ltmain.sh (GNU libtool) 1.5a (1.1323 +# 2003/11/10 21:06:47)) + + +required='gcc' +. ./defs || exit 1 + +set -e + +# Make sure this system supports spaces in filenames. +mkdir 'a b' || exit 77 + +cat >> configure.in <<'EOF' +AC_PROG_CC +AC_PROG_RANLIB +AC_OUTPUT +EOF + +cat > Makefile.am << 'EOF' +foodir = $(prefix)/foo +fooexecdir = $(prefix)/foo + +foo_HEADERS = sub/base.h +nobase_foo_HEADERS = sub/nobase.h + +dist_foo_DATA = sub/base.dat +nobase_dist_foo_DATA = sub/nobase.dat + +dist_fooexec_SCRIPTS = sub/base.sh +nobase_dist_fooexec_SCRIPTS = sub/nobase.sh + +fooexec_PROGRAMS = sub/base +nobase_fooexec_PROGRAMS = sub/nobase +sub_base_SOURCES = source.c +sub_nobase_SOURCES = source.c + +fooexec_LIBRARIES = sub/libbase.a +nobase_fooexec_LIBRARIES = sub/libnobase.a +sub_libbase_a_SOURCES = source.c +sub_libnobase_a_SOURCES = source.c + +test-install-space: install + test -f "$(DESTDIR)/more space/foo/sub/nobase.h" + test ! -f "$(DESTDIR)/more space/foo/nobase.h" + test -f "$(DESTDIR)/more space/foo/base.h" + test -f "$(DESTDIR)/more space/foo/sub/nobase.dat" + test ! -f "$(DESTDIR)/more space/foo/nobase.dat" + test -f "$(DESTDIR)/more space/foo/base.dat" + test -f "$(DESTDIR)/more space/foo/sub/nobase.sh" + test ! -f "$(DESTDIR)/more space/foo/nobase.sh" + test -f "$(DESTDIR)/more space/foo/base.sh" + test -f "$(DESTDIR)/more space/foo/sub/nobase$(EXEEXT)" + test ! -f "$(DESTDIR)/more space/foo/nobase$(EXEEXT)" + test -f "$(DESTDIR)/more space/foo/base$(EXEEXT)" + test -f "$(DESTDIR)/more space/foo/sub/libnobase.a" + test ! -f "$(DESTDIR)/more space/foo/libnobase.a" + test -f "$(DESTDIR)/more space/foo/libbase.a" +EOF + +mkdir sub + +: > sub/base.h +: > sub/nobase.h +: > sub/base.dat +: > sub/nobase.dat +: > sub/base.sh +: > sub/nobase.sh + +cat >source.c <<'EOF' +int +main (int argc, char *argv[]) +{ + return 0; +} +EOF +cp source.c source2.c + +$ACLOCAL +$AUTOCONF +$AUTOMAKE -a + +mkdir build +cd build + +../configure --prefix '/more space' +$MAKE +dest=`pwd`/'with space'; +DESTDIR="$dest" $MAKE -e test-install-space |