[patch] more fullpath TAGS patches (emacs/cperl-mode.el + emacs/ptags)
Stas Bekman [Thu, 28 Aug 2003 16:10:48 +0000 (09:10 -0700)]
Message-ID: <3F4E8BF8.1090800@stason.org>

p4raw-id: //depot/perl@21171

emacs/cperl-mode.el
emacs/ptags

index 4bf1eab..26cc9f9 100644 (file)
 ;;;                            Now works for else/continue/sub blocks
 ;;;  (`cperl-short-docs'):     Minor edits; make messages fit 80-column screen
 
+;;;; After 4.37:
+;;;  `cperl-add-tags-recurse-noxs-fullpath'
+;;;    added (for -batch mode);
+
 ;;; Code:
 
 \f
@@ -6868,13 +6872,21 @@ Delay of auto-help controlled by `cperl-lazy-help-time'."
        ret))))
 
 (defun cperl-add-tags-recurse-noxs ()
-  "Add to TAGS data for Perl and XSUB files in the current directory and kids.
-Use as
+  "Add to TAGS data for Perl (skipping XSUBs) in the current directory 
+and kids. Use as
   emacs -batch -q -no-site-file -l emacs/cperl-mode.el \
-        -f cperl-add-tags-recurse
+        -f cperl-add-tags-recurse-noxs
 "
   (cperl-write-tags nil nil t t nil t))
 
+(defun cperl-add-tags-recurse-noxs-fullpath ()
+  "Add to TAGS data for Perl (skipping XSUBs) in the current directory 
+and kids, using fullpath, so TAGS is relocatable. Use as
+  emacs -batch -q -no-site-file -l emacs/cperl-mode.el \
+        -f cperl-add-tags-recurse-noxs-fullpath
+"
+  (cperl-write-tags nil nil t t nil t ""))
+
 (defun cperl-add-tags-recurse ()
   "Add to TAGS file data for Perl files in the current directory and kids.
 Use as
index 08a20ce..8039153 100755 (executable)
@@ -27,10 +27,12 @@ if test ! -z "$OS2_SHELL"; then alias find=gnufind; fi
 case "$1" in
   fullpath)
     cwd=`pwd`
+    cperl_add_tags='cperl-add-tags-recurse-noxs-fullpath'
     echo "Building TAGS with full paths"
   ;;
   *)
-  cwd='.'
+    cperl_add_tags='cperl-add-tags-recurse-noxs'
+    cwd='.'
     echo "Building TAGS with relative paths"
 esac
 
@@ -167,7 +169,7 @@ fi
 # This should work with newer Emaxen
 
 cp TAGS.tmp TAGS
-if $emacs -batch -q -no-site-file -l emacs/cperl-mode.elc -f cperl-add-tags-recurse-noxs ; then
+if $emacs -batch -q -no-site-file -l emacs/cperl-mode.elc -f $cperl_add_tags ; then
     mv TAGS TAGS.tmp
 fi