diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2011-01-10 12:56:22 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2011-01-10 12:56:22 +0000 |
commit | 8fe63ef3d9d533a512619bbea97a7d868437e2c2 (patch) | |
tree | 4857a3ad71032609ec2f5ca3e2e9b450867086a6 /Master/bin/x86_64-linux/extractres | |
parent | ae3abcea86067a9cdb6a426102b6eed17a2526c9 (diff) |
linked scripts
git-svn-id: svn://tug.org/texlive/trunk@21008 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/bin/x86_64-linux/extractres')
-rwxr-xr-x | Master/bin/x86_64-linux/extractres | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/Master/bin/x86_64-linux/extractres b/Master/bin/x86_64-linux/extractres deleted file mode 100755 index c54056461a2..00000000000 --- a/Master/bin/x86_64-linux/extractres +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env perl -# extractres: extract resources from PostScript file -# -# Copyright (C) Angus J. C. Duggan 1991-1995 -# See file LICENSE for details. - -$prog = ($0 =~ s=.*/==); - -%resources = (); # list of resources included -%merge = (); # list of resources extracted this time -%extn = ("font", ".pfa", "file", ".ps", "procset", ".ps", # resource extns - "pattern", ".pat", "form", ".frm", "encoding", ".enc"); -%type = ("%%BeginFile:", "file", "%%BeginProcSet:", "procset", - "%%BeginFont:", "font"); # resource types - -while (@ARGV) { - $_ = shift; - if (/^-m(erge)?$/) { $merge = 1; } - elsif (/^-/) { - print STDERR "Usage: $prog [-merge] [file]\n"; - exit 1; - } else { - unshift(@ARGV, $_); - last; - } -} - -if (defined($ENV{TMPDIR})) { # set body file name - $body = "$ENV{TMPDIR}/body$$.ps"; -} else { - $body = "body$$.ps"; -} - -open(BODY, $body) && die "Temporary file $body already exists"; -open(BODY, ">$body") || die "Can't write file $body"; - -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; -} - -$output = STDOUT; # start writing header out -while (<>) { - if (/^%%BeginResource:/ || /^%%BeginFont:/ || /^%%BeginProcSet:/) { - local($comment, @res) = split(/\s+/); # look at resource type - local($type) = defined($type{$comment}) ? $type{$comment} : shift(@res); - local($name) = &filename(@res, $extn{$type}); # make file name - $saveout = $output; - if (!$resources{$name}) { - print "%%IncludeResource: $type ", join(" ", @res), "\n"; - if (!open(RES, $name)) { - open(RES, ">$name") || die "Can't write file $name"; - $resources{$name} = $name; - $merge{$name} = $merge; - $output = RES; - } else { # resource already exists - close(RES); - undef $output; - } - } elsif ($merge{$name}) { - open(RES, ">>$name") || die "Can't append to file $name"; - $output = RES; - } else { # resource already included - undef $output; - } - } elsif (/^%%EndResource/ || /^%%EndFont/ || /^%%EndProcSet/) { - if (defined $output) { - print $output $_; - close($output); - } - $output = $saveout; - next; - } elsif ((/^%%EndProlog/ || /^%%BeginSetup/ || /^%%Page:/)) { - $output = BODY; - } - print $output $_ - if defined $output; -} - -close(BODY); # close body output file - -open(BODY, $body); # reopen body for input -while (<BODY>) { # print it all - print $_; -} -close(BODY); - -unlink($body); # dispose of body file - |