]> git.eshelyaron.com Git - emacs.git/commit
Do not hardcode "/bin/sh" in compile. Bug#24338, Bug#29723
authorMichael Albinus <michael.albinus@gmx.de>
Sat, 9 Mar 2019 15:44:24 +0000 (16:44 +0100)
committerMichael Albinus <michael.albinus@gmx.de>
Sat, 9 Mar 2019 15:44:24 +0000 (16:44 +0100)
commit21f54feee8c83e2c5fd8eeb6741cbd479a7b19eb
tree3edf223c49dfedf09ec93804856954a9554a93cd
parentc37bdd00c7dcabaa3ca8405d9dc5122ed36f27e0
Do not hardcode "/bin/sh" in compile.  Bug#24338, Bug#29723

* doc/emacs/custom.texi (Connection Variables): New node.

* doc/emacs/emacs.texi (Top): Add entry for Connection Variables.

* doc/emacs/misc.texi (Single Shell): Mention default value for
remote buffers.

* doc/lispref/variables.texi (Connection Local Variables):
Describe `with-connection-local-variables' instead of
`with-connection-local-profiles'.

* doc/misc/tramp.texi (Remote processes): Refer to Emacs manual.
Mention default connection-local settings for `shell-file-name'
and `shell-command-switch'.

* etc/NEWS: Mention connection-local variables changes.

* lisp/files-x.el (hack-connection-local-variables):
Push connection-local variables to `file-local-variables-alist'.
(connection-local-criteria-for-default-directory): New defsubst.
(with-connection-local-variables): Rename from
`with-connection-local-profiles'.  Adapt implementation.

* lisp/files.el (hack-local-variables):
Call `hack-connection-local-variables'.

* lisp/shell.el (shell): Use `with-connection-local-variables'.

* lisp/subr.el (start-file-process-shell-command):
* lisp/progmodes/compile.el (compilation-start):
Use `with-connection-local-variables'.  Do not set "/bin/sh" for
remote buffers, trust settings of `shell-file-name'.  (Bug#24338),
(Bug#29723)

* lisp/net/ange-ftp.el (ange-ftp-compress, ange-ftp-uncompress):
Use `shell-command-switch'.

* lisp/net/tramp-adb.el (tramp-adb-connection-local-default-profile):
New defvar.  Add it to connection-local profiles after loading "shell".

* lisp/net/tramp-integration.el (tramp-compat): Require tramp-compat.
(tramp-compat-exec-path): Do not declare anymore.
(tramp-connection-local-safe-shell-file-names): New defvar.
(tramp-connection-local-default-profile): New defconst.  Activate
it after loading "shell".
(shell-file-name, shell-command-switch): Add safe-local-variable
property.

* lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp):
Add tramp-autoload cookie.

* test/lisp/files-x-tests.el (remote-shell-file-name):
Add safe-local-variable property to remote-* variables.
(tramp-connection-local-default-profile): Declare.
(files-x-test-with-connection-local-variables):
Rename from `files-x-test-with-connection-local-profiles'.  Adapt
implementation.

* test/lisp/net/tramp-tests.el
(tramp-test34-connection-local-variables): New test.
(tramp-test34-explicit-shell-file-name): Run it also for tramp-adb.
Bind connection-local-{profile,criteria}-alist.  Use tramp-adb
specific `shell-file-name'.  Add safe-local-variable property to
`explicit-shell-file-name' and `explicit-sh-args'.
17 files changed:
doc/emacs/custom.texi
doc/emacs/emacs.texi
doc/emacs/misc.texi
doc/lispref/variables.texi
doc/misc/tramp.texi
etc/NEWS
lisp/files-x.el
lisp/files.el
lisp/net/ange-ftp.el
lisp/net/tramp-adb.el
lisp/net/tramp-integration.el
lisp/net/tramp-sh.el
lisp/progmodes/compile.el
lisp/shell.el
lisp/subr.el
test/lisp/files-x-tests.el
test/lisp/net/tramp-tests.el