diff options
author | Daniel Jacobowitz <dan@codesourcery.com> | 2006-05-02 13:50:58 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@gcc.gnu.org> | 2006-05-02 13:50:58 +0000 |
commit | 84309a323ed55544a39c7ecd2fbb1ab299e772de (patch) | |
tree | f23351771cf715ee6f0233edcf65b398a3a1d775 /contrib/texi2pod.pl | |
parent | 7aa20a86fe7c312b1f537310d17f37b8803ea762 (diff) | |
download | gcc-84309a323ed55544a39c7ecd2fbb1ab299e772de.zip gcc-84309a323ed55544a39c7ecd2fbb1ab299e772de.tar.gz gcc-84309a323ed55544a39c7ecd2fbb1ab299e772de.tar.bz2 |
* texi2pod.pl: Handle -I.
From-SVN: r113462
Diffstat (limited to 'contrib/texi2pod.pl')
-rwxr-xr-x | contrib/texi2pod.pl | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/contrib/texi2pod.pl b/contrib/texi2pod.pl index 9696a12..57d1d5b 100755 --- a/contrib/texi2pod.pl +++ b/contrib/texi2pod.pl @@ -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; }; |