From 63f6de2319e769e12b29379025de08e3395edb31 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 28 Dec 2005 00:09:08 +0000 Subject: trunk git-svn-id: svn://tug.org/texlive/trunk@10 c570f23f-e606-0410-a88d-b1316a301751 --- Master/bin/powerpc-darwin/includeres | 46 ++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100755 Master/bin/powerpc-darwin/includeres (limited to 'Master/bin/powerpc-darwin/includeres') diff --git a/Master/bin/powerpc-darwin/includeres b/Master/bin/powerpc-darwin/includeres new file mode 100755 index 00000000000..4547357cd93 --- /dev/null +++ b/Master/bin/powerpc-darwin/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 () { + print $_; + } + close(RES); + } else { + print "%%IncludeResource: ", join(" ", $type, @res), "\n"; + print STDERR "Resource $name not found\n"; + } + } else { + print $_; + } +} + -- cgit v1.2.3