mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-04-21 05:21:37 -07:00
Fixes related to /usr/include path on multiarch systems
* lisp/ffap.el (ffap-c-path): * lisp/man.el (Man-header-file-path): Handle multiarch. Fixes: debbugs:10702
This commit is contained in:
parent
40ace058dc
commit
ac2eceeee1
3 changed files with 34 additions and 3 deletions
|
|
@ -1,3 +1,8 @@
|
|||
2012-02-22 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* ffap.el (ffap-c-path):
|
||||
* man.el (Man-header-file-path): Handle multiarch. (Bug#10702)
|
||||
|
||||
2012-02-22 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* custom.el (load-theme): Doc fix.
|
||||
|
|
|
|||
19
lisp/ffap.el
19
lisp/ffap.el
|
|
@ -850,9 +850,24 @@ URL, or nil. If nil, search the alist for further matches.")
|
|||
(and (not (string-match "\\.el\\'" name))
|
||||
(ffap-locate-file name '(".el") load-path)))
|
||||
|
||||
;; FIXME this duplicates the logic of Man-header-file-path.
|
||||
;; There should be a single central variable or function for this.
|
||||
;; See also (bug#10702):
|
||||
;; cc-search-directories, semantic-c-dependency-system-include-path,
|
||||
;; semantic-gcc-setup
|
||||
(defvar ffap-c-path
|
||||
;; Need smarter defaults here! Suggestions welcome.
|
||||
'("/usr/include" "/usr/local/include"))
|
||||
(let ((arch (with-temp-buffer
|
||||
(when (eq 0 (ignore-errors
|
||||
(call-process "gcc" nil '(t nil) nil
|
||||
"-print-multiarch")))
|
||||
(goto-char (point-min))
|
||||
(buffer-substring (point) (line-end-position)))))
|
||||
(base '("/usr/include" "/usr/local/include")))
|
||||
(if (zerop (length arch))
|
||||
base
|
||||
(append base (list (expand-file-name arch "/usr/include")))))
|
||||
"List of directories to search for include files.")
|
||||
|
||||
(defun ffap-c-mode (name)
|
||||
(ffap-locate-file name t ffap-c-path))
|
||||
|
||||
|
|
|
|||
13
lisp/man.el
13
lisp/man.el
|
|
@ -215,9 +215,20 @@ the associated section number."
|
|||
(string :tag "Real Section")))
|
||||
:group 'man)
|
||||
|
||||
;; FIXME see comments at ffap-c-path.
|
||||
(defcustom Man-header-file-path
|
||||
'("/usr/include" "/usr/local/include")
|
||||
(let ((arch (with-temp-buffer
|
||||
(when (eq 0 (ignore-errors
|
||||
(call-process "gcc" nil '(t nil) nil
|
||||
"-print-multiarch")))
|
||||
(goto-char (point-min))
|
||||
(buffer-substring (point) (line-end-position)))))
|
||||
(base '("/usr/include" "/usr/local/include")))
|
||||
(if (zerop (length arch))
|
||||
base
|
||||
(append base (list (expand-file-name arch "/usr/include")))))
|
||||
"C Header file search path used in Man."
|
||||
:version "24.1" ; add multiarch
|
||||
:type '(repeat string)
|
||||
:group 'man)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue