OSDN Git Service

* texi2pod.pl: Handle -I.
authordrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 2 May 2006 13:50:58 +0000 (13:50 +0000)
committerdrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 2 May 2006 13:50:58 +0000 (13:50 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113462 138bc75d-0d04-0410-961f-82ee72b054a4

contrib/ChangeLog
contrib/texi2pod.pl

index 829bdea..57e9dd5 100644 (file)
@@ -1,3 +1,7 @@
+2006-04-17  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * texi2pod.pl: Handle -I.
+
 2006-02-28  Mark Mitchell  <mark@codesourcery.com>
 
        * gennews (files): Update for GCC 4.1.
index 9696a12..57d1d5b 100755 (executable)
@@ -36,6 +36,7 @@ $shift = "";
 $fnno = 1;
 $inf = "";
 $ibase = "";
+@ipath = ();
 
 while ($_ = shift) {
     if (/^-D(.*)$/) {
@@ -51,6 +52,13 @@ while ($_ = shift) {
        die "flags may only contain letters, digits, hyphens, dashes and underscores\n"
            unless $flag =~ /^[a-zA-Z0-9_-]+$/;
        $defs{$flag} = $value;
+    } elsif (/^-I(.*)$/) {
+       if ($1 ne "") {
+           $flag = $1;
+       } else {
+           $flag = shift;
+       }
+        push (@ipath, $flag);
     } elsif (/^-/) {
        usage();
     } else {
@@ -229,10 +237,12 @@ while(<$inf>) {
        $inf = gensym();
        $file = postprocess($1);
 
-       # Try cwd and $ibase.
-       open($inf, "<" . $file) 
-           or open($inf, "<" . $ibase . "/" . $file)
-               or die "cannot open $file or $ibase/$file: $!\n";
+       # Try cwd and $ibase, then explicit -I paths.
+       $done = 0;
+       foreach $path (".", $ibase, @ipath) {
+           open($inf, "<" . $path . "/" . $file) and ($done = 1, last);
+       }
+       die "cannot find $file" if !$done;
        next;
     };