Mercurial > emacs
changeset 53749:fef39a2085e4
(executable-command-find-posix-p):
New. Check if find handles arguments Posix-style.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Thu, 29 Jan 2004 17:53:17 +0000 |
parents | c7884bc3f88f |
children | 4deb14fde58c |
files | lisp/progmodes/executable.el |
diffstat | 1 files changed, 25 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/progmodes/executable.el Thu Jan 29 17:22:15 2004 +0000 +++ b/lisp/progmodes/executable.el Thu Jan 29 17:53:17 2004 +0000 @@ -141,6 +141,31 @@ (defvaralias 'executable-binary-suffixes 'exec-suffixes) ;;;###autoload +(defun executable-command-find-posix-p (&optional program) + "Check if PROGRAM handles arguments Posix-style. +If PROGRAM is non-nil, use that instead of "find"." + ;; Pick file to search from location we know + (let* ((dir (car load-path)) + (file (find-if + (lambda (x) + ;; Filter directories . and .. + (not (string-match "^\\.\\.?$" x))) + (directory-files dir)))) + (with-temp-buffer + (call-process (or program "find") + nil + (current-buffer) + nil + dir + "-name" + file + "-maxdepth" + "1") + (goto-char (point-min)) + (if (search-forward file nil t) + t)))) + +;;;###autoload (defun executable-find (command) "Search for COMMAND in `exec-path' and return the absolute file name. Return nil if COMMAND is not found anywhere in `exec-path'."