summaryrefslogtreecommitdiff
path: root/lisp/progmodes/cmacexp.el
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2005-05-06 12:32:16 +0000
committerEli Zaretskii <eliz@gnu.org>2005-05-06 12:32:16 +0000
commitab3290cb98831e2a9b62bc94c7f46a531e12a867 (patch)
tree00d2373504bd8548ae8e66901103cba142d94fef /lisp/progmodes/cmacexp.el
parent6ff95f1d3bf4fa0827d3d3eca3711a73e5f43c99 (diff)
downloademacs-ab3290cb98831e2a9b62bc94c7f46a531e12a867.tar.gz
(c-macro-preprocessor): Use locate-file to look for the preprocessor
with exec-suffixes. If not found in standard places, look in exec-path. Remove most of the tests that used system-type.
Diffstat (limited to 'lisp/progmodes/cmacexp.el')
-rw-r--r--lisp/progmodes/cmacexp.el21
1 files changed, 13 insertions, 8 deletions
diff --git a/lisp/progmodes/cmacexp.el b/lisp/progmodes/cmacexp.el
index 28d988961a6..65eea658d4e 100644
--- a/lisp/progmodes/cmacexp.el
+++ b/lisp/progmodes/cmacexp.el
@@ -108,18 +108,23 @@
:group 'c-macro)
(defcustom c-macro-preprocessor
- ;; Cannot rely on standard directory on MS-DOS to find CPP. In
- ;; fact, cannot rely on having cpp.exe, either, in latest GCC
- ;; versions.
- (cond ((eq system-type 'ms-dos) "gcc -E -C -o - -")
- ;; Solaris has it in an unusual place.
+ (cond ;; Solaris has it in an unusual place.
((and (string-match "^[^-]*-[^-]*-\\(solaris\\|sunos5\\)"
system-configuration)
(file-exists-p "/opt/SUNWspro/SC3.0.1/bin/acomp"))
"/opt/SUNWspro/SC3.0.1/bin/acomp -C -E")
- ((file-exists-p "/usr/ccs/lib/cpp") "/usr/ccs/lib/cpp -C")
- ((memq system-type '(darwin berkeley-unix)) "gcc -E -C -")
- (t "/lib/cpp -C"))
+ ((locate-file "/usr/ccs/lib/cpp"
+ '("/") exec-suffixes 'file-executable-p)
+ "/usr/ccs/lib/cpp -C")
+ ((locate-file "/lib/cpp"
+ '("/") exec-suffixes 'file-executable-p)
+ "/lib/cpp -C")
+ ;; On some systems, we cannot rely on standard directories to
+ ;; find CPP. In fact, we cannot rely on having cpp, either,
+ ;; in some GCC versions.
+ ((locate-file "cpp" exec-path exec-suffixes 'file-executable-p)
+ "cpp -C")
+ (t "gcc -E -C -o - -"))
"The preprocessor used by the cmacexp package.
If you change this, be sure to preserve the `-C' (don't strip comments)