summaryrefslogtreecommitdiff
path: root/Master/bin/amd64-freebsd/fixpspps
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2009-08-22 16:21:04 +0000
committerNorbert Preining <preining@logic.at>2009-08-22 16:21:04 +0000
commitc51c2f0f20b6d7c131d0a493c70b25efecdf8b3b (patch)
tree765dd630a611b52046f2dac347e5bf2e93f09900 /Master/bin/amd64-freebsd/fixpspps
parent92897b92887926a64e837672f5925247b8fc802a (diff)
add amd64-freebsd binaries built on FreeBSD 7.2 (Norbert)
git-svn-id: svn://tug.org/texlive/trunk@14816 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/bin/amd64-freebsd/fixpspps')
-rwxr-xr-xMaster/bin/amd64-freebsd/fixpspps58
1 files changed, 58 insertions, 0 deletions
diff --git a/Master/bin/amd64-freebsd/fixpspps b/Master/bin/amd64-freebsd/fixpspps
new file mode 100755
index 00000000000..77bba66d6b7
--- /dev/null
+++ b/Master/bin/amd64-freebsd/fixpspps
@@ -0,0 +1,58 @@
+#!/usr/bin/env perl
+# mangle PostScript produced by PSPrint to make it almost conforming
+#
+# Copyright (C) Angus J. C. Duggan 1991-1995
+# See file LICENSE for details.
+
+$header = 1; $ignore = 0;
+$verbose = 0;
+@body = ();
+%fonts = (); $font = "";
+$inchar = 0; @char = ();
+
+while (<>) {
+ if (/^\@end$/) {
+ $ignore = 1;
+ } elsif (/^[0-9]+ \@bop0$/) {
+ $ignore = 0;
+ $header = 1;
+ } elsif ($header) {
+ if (/^\/([a-z.0-9]+) \@newfont$/) {
+ if (! defined($fonts{$1})) {
+ $fonts{$1} = 1;
+ print;
+ } elsif ($verbose) {
+ print STDERR "$font already defined\n";
+ }
+ } elsif (/^([a-z.0-9]+) sf$/) {
+ $font = $1;
+ print;
+ } elsif (/^\[</) {
+ $inchar = 1;
+ push (@char, $_);
+ } elsif ($inchar) {
+ push (@char, $_);
+ if (/.*\] ([0-9]+) dc$/) {
+ if (! defined($fonts{$font,$1})) {
+ $fonts{$font,$1} = 1;
+ print (@char);
+ } elsif ($verbose) {
+ print STDERR "$font character $1 already defined\n";
+ }
+ $inchar = 0;
+ @char = ();
+ }
+ } elsif (/^([0-9]+) \@bop1$/) {
+ $header = 0;
+ push (@body, "%%Page: ? $1\n");
+ push (@body, $_);
+ } else {
+ print;
+ }
+ } elsif (! $ignore) {
+ push (@body, $_);
+ }
+}
+print (@body);
+print ("\@end\n");
+