]> code.delx.au - gnu-emacs/blobdiff - lisp/cedet/cedet-global.el
Update copyright year to 2016
[gnu-emacs] / lisp / cedet / cedet-global.el
index 494c41b0efee7ea6e2e3a69ad9b595b9f5115b94..def023d3837ad866b3504251f3e76ae0681b73c3 100644 (file)
@@ -1,6 +1,6 @@
 ;;; cedet-global.el --- GNU Global support for CEDET.
 
-;; Copyright (C) 2008-2014 Free Software Foundation, Inc.
+;; Copyright (C) 2008-2016 Free Software Foundation, Inc.
 
 ;; Author: Eric M. Ludlam <eric@siege-engine.com>
 ;; Package: cedet
@@ -36,7 +36,7 @@
 
 (defcustom cedet-global-gtags-command "gtags"
   "Command name for the GNU Global gtags executable.
-GTAGS is used to create the tags table queried by the 'global' command."
+GTAGS is used to create the tags table queried by the `global' command."
   :type 'string
   :group 'cedet)
 
@@ -97,14 +97,15 @@ SCOPE is the scope of the search, such as 'project or 'subdirs."
     ;; Check for warnings.
     (with-current-buffer b
       (goto-char (point-min))
-      (when (re-search-forward "Error\\|Warning" nil t)
+      (when (re-search-forward "Error\\|Warning\\|invalid" nil t)
        (error "Output:\n%S" (buffer-string))))
 
     b))
 
 (defun cedet-gnu-global-expand-filename (filename)
   "Expand the FILENAME with GNU Global.
-Return a fully qualified filename."
+Return a list of absolute filenames or nil if none found.
+Signal an error if Gnu global not available."
   (interactive "sFile: ")
   (let ((ans (with-current-buffer (cedet-gnu-global-call (list "-Pa" filename))
               (goto-char (point-min))
@@ -186,12 +187,14 @@ If a database already exists, then just update it."
   (let ((root (cedet-gnu-global-root dir)))
     (if root (setq dir root))
     (let ((default-directory dir))
-      (cedet-gnu-global-gtags-call
-       (when root
-        '("-u");; Incremental update flag.
-        ))
-      )
-    ))
+      (if root
+          ;; Incremental update. This can be either "gtags -i" or
+          ;; "global -u"; the gtags manpage says it's better to use
+          ;; "global -u".
+         (cedet-gnu-global-call (list "-u"))
+       (cedet-gnu-global-gtags-call nil)
+       )
+      )))
 
 (provide 'cedet-global)