diff options
author | Karl Berry <karl@freefriends.org> | 2008-03-17 18:55:09 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2008-03-17 18:55:09 +0000 |
commit | 5ee0c2361d162f53b1a2bac57ecac0f5ff90987d (patch) | |
tree | fdd6a748c4260c965f1818ab29f7b46064a8c4d1 /Master/bin/i386-freebsd/includeres | |
parent | 3f2344e0d00d9525f29da5bc0cc5c32e8abfa7e9 (diff) |
restore i386-freebsd
git-svn-id: svn://tug.org/texlive/trunk@6992 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/bin/i386-freebsd/includeres')
-rwxr-xr-x | Master/bin/i386-freebsd/includeres | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/Master/bin/i386-freebsd/includeres b/Master/bin/i386-freebsd/includeres new file mode 100755 index 00000000000..4547357cd93 --- /dev/null +++ b/Master/bin/i386-freebsd/includeres @@ -0,0 +1,46 @@ +#!/usr/bin/env perl +# includeres: include resources in PostScript file +# +# Copyright (C) Angus J. C. Duggan 1991-1995 +# See file LICENSE for details. + +$prog = ($0 =~ s=.*/==); + +%extn = ("font", ".pfa", "file", ".ps", "procset", ".ps", # resource extns + "pattern", ".pat", "form", ".frm", "encoding", ".enc"); +%type = ("%%BeginFile:", "file", "%%BeginProcSet:", "procset", + "%%BeginFont:", "font"); # resource types + +sub filename { # make filename for resource in @_ + local($name); + foreach (@_) { # sanitise name + s/[!()\$\#*&\\\|\`\'\"\~\{\}\[\]\<\>\?]//g; + $name .= $_; + } + $name =~ s@.*/@@; # drop directories + die "Filename not found for resource ", join(" ", @_), "\n" + if $name =~ /^$/; + $name; +} + +while (<>) { + if (/^%%IncludeResource:/ || /^%%IncludeFont:/ || /^%%IncludeProcSet:/) { + local($comment, @res) = split(/\s+/); + local($type) = defined($type{$comment}) ? $type{$comment} : shift(@res); + local($name) = &filename(@res); + local($inc) = ""; # system include directory + if (open(RES, $name) || open(RES, "$name$extn{$type}") || + open(RES, "$inc/$name") || open(RES, "$inc/$name$extn{$type}")) { + while (<RES>) { + print $_; + } + close(RES); + } else { + print "%%IncludeResource: ", join(" ", $type, @res), "\n"; + print STDERR "Resource $name not found\n"; + } + } else { + print $_; + } +} + |