• Paul Eggert's avatar
    Use ‘echo’ safely with ‘\’ or leading ‘-’ · 29dfca23
    Paul Eggert authored
    POSIX says that ‘echo FOO’ produces implementation-defined output
    if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
    behavior in that case.
    * Makefile.in (removenullpaths): Remove.
    (epaths-force): Rewrite to avoid the need for ‘echo’.
    (install-etc): Be clearer about escaping the shell metacharacters
    ‘\’ and ‘$’.
    * Makefile.in (install-arch-indep, install-etcdoc):
    * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
    * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
    * configure.ac, lib-src/rcs2log, make-dist:
    * src/Makefile.in (lisp.mk):
    Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
    For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
    if $foo can contain arbitrary characters.
    * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
    * doc/lispref/two-volume.make (vol1.pdf):
    * test/etags/make-src/Makefile (web ftp publish):
    Use ‘printf’ rather than ‘echo -e’.
    29dfca23
mapconv 4.78 KB