aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/postscript/tr2post
diff options
context:
space:
mode:
authorwkj <devnull@localhost>2004-05-17 02:24:15 +0000
committerwkj <devnull@localhost>2004-05-17 02:24:15 +0000
commite8fb1d3efb114d1859f14fda2b6681d99df1f48a (patch)
treea3b437370521c9eff6cab00dd77fd2d95a3dc090 /src/cmd/postscript/tr2post
parent8a3cbc157981485adc947c0477dc3e4907acc9a3 (diff)
downloadplan9port-e8fb1d3efb114d1859f14fda2b6681d99df1f48a.tar.gz
plan9port-e8fb1d3efb114d1859f14fda2b6681d99df1f48a.tar.bz2
plan9port-e8fb1d3efb114d1859f14fda2b6681d99df1f48a.zip
tr2post and aux/download; download is a shell script in $PLAN9/bin.
Diffstat (limited to 'src/cmd/postscript/tr2post')
-rw-r--r--src/cmd/postscript/tr2post/Bgetfield.c10
-rw-r--r--src/cmd/postscript/tr2post/chartab.c19
-rw-r--r--src/cmd/postscript/tr2post/conv.c4
-rw-r--r--src/cmd/postscript/tr2post/devcntl.c4
-rw-r--r--src/cmd/postscript/tr2post/draw.c6
-rw-r--r--src/cmd/postscript/tr2post/mkfile2
-rw-r--r--src/cmd/postscript/tr2post/pictures.c14
-rw-r--r--src/cmd/postscript/tr2post/ps_include.c9
-rw-r--r--src/cmd/postscript/tr2post/readDESC.c5
-rw-r--r--src/cmd/postscript/tr2post/tr2post.c20
-rw-r--r--src/cmd/postscript/tr2post/tr2post.h2
-rw-r--r--src/cmd/postscript/tr2post/utils.c9
12 files changed, 57 insertions, 47 deletions
diff --git a/src/cmd/postscript/tr2post/Bgetfield.c b/src/cmd/postscript/tr2post/Bgetfield.c
index 974fce62..fc0dfc13 100644
--- a/src/cmd/postscript/tr2post/Bgetfield.c
+++ b/src/cmd/postscript/tr2post/Bgetfield.c
@@ -4,6 +4,9 @@
#include "../common/common.h"
#include "tr2post.h"
+#undef isspace
+#define isspace risspace
+
int
isspace(Rune r)
{
@@ -11,9 +14,8 @@ isspace(Rune r)
}
int
-Bskipws(Biobufhdr *bp) {
+Bskipws(Biobuf *bp) {
int r;
- char c[UTFmax];
int sindex = 0;
/* skip over initial white space */
@@ -54,7 +56,7 @@ asc2dig(char c, int base) {
*/
int
-Bgetfield(Biobufhdr *bp, int type, void *thing, int size) {
+Bgetfield(Biobuf *bp, int type, void *thing, int size) {
int r;
Rune R;
char c[UTFmax];
@@ -65,6 +67,8 @@ Bgetfield(Biobufhdr *bp, int type, void *thing, int size) {
int dig;
unsigned int u = 0;
+ r = 0;
+
/* skip over initial white space */
if (Bskipws(bp) < 0)
return(-1);
diff --git a/src/cmd/postscript/tr2post/chartab.c b/src/cmd/postscript/tr2post/chartab.c
index 89bf0ff7..8b831d3a 100644
--- a/src/cmd/postscript/tr2post/chartab.c
+++ b/src/cmd/postscript/tr2post/chartab.c
@@ -120,17 +120,17 @@ findpfn(char *fontname, int insflg) {
return(-1);
}
-char postroffdirname[] = LIBDIR "/postscript/troff"; /* "/sys/lib/postscript/troff/"; */
-char troffmetricdirname[] = LIBDIR "/troff/font"; /* "/sys/lib/troff/font/devutf/"; */
+char postroffdirname[] = "#9/postscript/troff"; /* "/sys/lib/postscript/troff/"; */
+char troffmetricdirname[] = "#9/troff/font"; /* "/sys/lib/troff/font/devutf/"; */
int
readpsfontdesc(char *fontname, int trindex) {
static char *filename = 0;
Biobuf *bfd;
- Biobufhdr *Bfd;
- int warn = 0, errorflg = 0, line =1, rv;
+ Biobuf *Bfd;
+ int errorflg = 0, line =1, rv;
int start, end, offset;
- int startfont, endfont, startchar, endchar, i, pfid;
+ int startfont, endfont, startchar, endchar, pfid;
char psfontnam[128];
struct troffont *tp;
/* struct charent *cp[]; */
@@ -139,7 +139,7 @@ readpsfontdesc(char *fontname, int trindex) {
filename=galloc(filename, strlen(postroffdirname)+1+strlen(fontname)+1, "readpsfontdesc: cannot allocate memory\n");
sprint(filename, "%s/%s", postroffdirname, fontname);
- bfd = Bopen(filename, OREAD);
+ bfd = Bopen(unsharp(filename), OREAD);
if (bfd == 0) {
error(WARNING, "cannot open file %s\n", filename);
return(0);
@@ -212,9 +212,8 @@ int
readtroffmetric(char *fontname, int trindex) {
static char *filename = 0;
Biobuf *bfd;
- Biobufhdr *Bfd;
- int warn = 0, errorflg = 0, line =1, rv;
- struct troffont *tp;
+ Biobuf *Bfd;
+ int errorflg = 0, line =1, rv;
struct charent **cp;
char stoken[128], *str;
int ntoken;
@@ -226,7 +225,7 @@ readtroffmetric(char *fontname, int trindex) {
filename=galloc(filename, strlen(troffmetricdirname)+4+strlen(devname)+1+strlen(fontname)+1, "readtroffmetric():filename");
sprint(filename, "%s/dev%s/%s", troffmetricdirname, devname, fontname);
- bfd = Bopen(filename, OREAD);
+ bfd = Bopen(unsharp(filename), OREAD);
if (bfd == 0) {
error(WARNING, "cannot open file %s\n", filename);
return(0);
diff --git a/src/cmd/postscript/tr2post/conv.c b/src/cmd/postscript/tr2post/conv.c
index ebc1f43d..25575ccc 100644
--- a/src/cmd/postscript/tr2post/conv.c
+++ b/src/cmd/postscript/tr2post/conv.c
@@ -5,8 +5,8 @@
#include "tr2post.h"
void
-conv(Biobufhdr *Bp) {
- long c, n;
+conv(Biobuf *Bp) {
+ long n;
int r;
char special[10];
int save;
diff --git a/src/cmd/postscript/tr2post/devcntl.c b/src/cmd/postscript/tr2post/devcntl.c
index 2566229e..f0a9800a 100644
--- a/src/cmd/postscript/tr2post/devcntl.c
+++ b/src/cmd/postscript/tr2post/devcntl.c
@@ -51,10 +51,10 @@ struct sjt specialjumptable[] = {
*/
void
-devcntl(Biobufhdr *inp) {
+devcntl(Biobuf *inp) {
char cmd[50], buf[256], str[MAXTOKENSIZE], *line;
- int c, n, linelen;
+ int c, n;
/*
*
diff --git a/src/cmd/postscript/tr2post/draw.c b/src/cmd/postscript/tr2post/draw.c
index 0cb368ae..ace749ed 100644
--- a/src/cmd/postscript/tr2post/draw.c
+++ b/src/cmd/postscript/tr2post/draw.c
@@ -13,7 +13,7 @@ cover(double x, double y) {
}
void
-drawspline(Biobufhdr *Bp, int flag) { /* flag!=1 connect end points */
+drawspline(Biobuf *Bp, int flag) { /* flag!=1 connect end points */
int x[100], y[100];
int i, N;
/*
@@ -96,7 +96,7 @@ drawspline(Biobufhdr *Bp, int flag) { /* flag!=1 connect end points */
}
void
-draw(Biobufhdr *Bp) {
+draw(Biobuf *Bp) {
int r, x1, y1, x2, y2, i;
int d1, d2;
@@ -234,7 +234,7 @@ drawpath(char *buf, int copy) {
static void
parsebuf(char *buf)
{
- char *p; /* usually the next token */
+ char *p = (char*)0; /* usually the next token */
char *q;
int gsavelevel = 0; /* non-zero if we've done a gsave */
diff --git a/src/cmd/postscript/tr2post/mkfile b/src/cmd/postscript/tr2post/mkfile
index e1e5aec2..4a5f47d4 100644
--- a/src/cmd/postscript/tr2post/mkfile
+++ b/src/cmd/postscript/tr2post/mkfile
@@ -28,6 +28,8 @@ HFILES=tr2post.h\
BIN=$POSTBIN
+LIB=../common/libcom.a
+
<$PLAN9/src/mkone
CFLAGS=$CFLAGS -c -D'PROGRAMVERSION="0.1"' -D'DOROUND=1' -I$COMMONDIR
diff --git a/src/cmd/postscript/tr2post/pictures.c b/src/cmd/postscript/tr2post/pictures.c
index 8d758cbd..1246bcf6 100644
--- a/src/cmd/postscript/tr2post/pictures.c
+++ b/src/cmd/postscript/tr2post/pictures.c
@@ -50,8 +50,8 @@
/* #include "ext.h" */
Biobuf *bfp_pic = NULL;
-Biobufhdr *Bfp_pic;
-Biobufhdr *picopen(char *);
+Biobuf *Bfp_pic;
+Biobuf *picopen(char *);
#define MAXGETFIELDS 16
char *fields[MAXGETFIELDS];
@@ -63,7 +63,7 @@ extern int picflag;
/*****************************************************************************/
void
-picture(Biobufhdr *inp, char *buf) {
+picture(Biobuf *inp, char *buf) {
int poffset; /* page offset */
int indent; /* indent */
int length; /* line length */
@@ -80,7 +80,7 @@ picture(Biobufhdr *inp, char *buf) {
double adjx = 0.5; /* left-right adjustment */
double adjy = 0.5; /* top-bottom adjustment */
double rot = 0; /* rotation in clockwise degrees */
- Biobufhdr *fp_in; /* for *name */
+ Biobuf *fp_in; /* for *name */
int i; /* loop index */
/*
@@ -195,13 +195,13 @@ picture(Biobufhdr *inp, char *buf) {
* open file *path and return the resulting file pointer to the caller.
*
*/
-Biobufhdr *
+Biobuf *
picopen(char *path) {
/* char name[100]; /* pathnames */
/* long pos; /* current position */
/* long total; /* and sizes - from *fp_pic */
Biobuf *bfp;
- Biobufhdr *Bfp; /* and pointer for the new temp file */
+ Biobuf *Bfp; /* and pointer for the new temp file */
if ((bfp = Bopen(path, OREAD)) == 0)
@@ -285,7 +285,7 @@ inlinepic(Biobufhdr *Bfp, char *buf) {
/* *fp_out; and output file pointers */
/* total; number of bytes to be copied */
void
-piccopy(Biobufhdr *Bfp_in, Biobufhdr *Bfp_out, long total) {
+piccopy(Biobuf *Bfp_in, Biobuf *Bfp_out, long total) {
long i;
for (i = 0; i < total; i++)
diff --git a/src/cmd/postscript/tr2post/ps_include.c b/src/cmd/postscript/tr2post/ps_include.c
index 27d020a3..8ab840fe 100644
--- a/src/cmd/postscript/tr2post/ps_include.c
+++ b/src/cmd/postscript/tr2post/ps_include.c
@@ -11,9 +11,8 @@ extern int curfontsize;
typedef struct {long start, end;} Section;
static char *buf;
-static
-copy(Biobufhdr *fin, Biobufhdr *fout, Section *s) {
- int cond;
+static void
+copy(Biobuf *fin, Biobuf *fout, Section *s) {
if (s->end <= s->start)
return;
Bseek(fin, s->start, 0);
@@ -57,7 +56,7 @@ copy(Biobufhdr *fin, Biobufhdr *fout, Section *s) {
/* rot; /* rotation - in clockwise degrees */
void
-ps_include(Biobufhdr *fin, Biobufhdr *fout, int page_no, int whiteout,
+ps_include(Biobuf *fin, Biobuf *fout, int page_no, int whiteout,
int outline, int scaleboth, double cx, double cy, double sx, double sy,
double ax, double ay, double rot) {
char **strp;
@@ -66,7 +65,7 @@ ps_include(Biobufhdr *fin, Biobufhdr *fout, int page_no, int whiteout,
int nglobal = 0; /* number of global defs so far */
int maxglobal = 0; /* and the number we've got room for */
Section prolog, page, trailer; /* prologue, page, and trailer offsets */
- Section *global; /* offsets for all global definitions */
+ Section *global = 0; /* offsets for all global definitions */
double llx, lly; /* lower left and */
double urx, ury; /* upper right corners - default coords */
double w = whiteout != 0; /* mostly for the var() macro */
diff --git a/src/cmd/postscript/tr2post/readDESC.c b/src/cmd/postscript/tr2post/readDESC.c
index 4dbc193a..600fc174 100644
--- a/src/cmd/postscript/tr2post/readDESC.c
+++ b/src/cmd/postscript/tr2post/readDESC.c
@@ -44,7 +44,7 @@ readDESC(void) {
char *descnameformat = "%s/dev%s/DESC";
char *descfilename = 0;
Biobuf *bfd;
- Biobufhdr *Bfd;
+ Biobuf *Bfd;
int i, state = -1;
int fontindex = 0;
@@ -52,7 +52,7 @@ readDESC(void) {
descfilename = galloc(descfilename, strlen(descnameformat)+strlen(FONTDIR)
+strlen(devname), "readdesc");
sprint(descfilename, descnameformat, FONTDIR, devname);
- if ((bfd = Bopen(descfilename, OREAD)) == 0) {
+ if ((bfd = Bopen(unsharp(descfilename), OREAD)) == 0) {
error(WARNING, "cannot open file %s\n", descfilename);
return(0);
}
@@ -136,4 +136,5 @@ readDESC(void) {
}
}
Bterm(Bfd);
+ return 0;
}
diff --git a/src/cmd/postscript/tr2post/tr2post.c b/src/cmd/postscript/tr2post/tr2post.c
index acfe604d..5a22ac72 100644
--- a/src/cmd/postscript/tr2post/tr2post.c
+++ b/src/cmd/postscript/tr2post/tr2post.c
@@ -23,6 +23,10 @@ Biobuf binp, *bstdout, bstderr;
Biobuf *Bstdin, *Bstdout, *Bstderr;
int debug = 0;
+#ifndef MAXPATHLEN
+#define MAXPATHLEN 255
+#endif
+
char tmpfilename[MAXPATHLEN+1];
char copybuf[BUFSIZ];
@@ -41,20 +45,20 @@ prologues(void) {
Bprint(Bstdout, "%s %s\n", PAGES, ATEND);
Bprint(Bstdout, "%s", ENDCOMMENTS);
- if (cat(DPOST)) {
+ if (cat(unsharp(DPOST))) {
Bprint(Bstderr, "can't read %s\n", DPOST);
exits("dpost prologue");
}
if (drawflag) {
- if (cat(DRAW)) {
+ if (cat(unsharp(DRAW))) {
Bprint(Bstderr, "can't read %s\n", DRAW);
exits("draw prologue");
}
}
if (DOROUND)
- cat(ROUNDPAGE);
+ cat(unsharp(ROUNDPAGE));
Bprint(Bstdout, "%s", ENDPROLOG);
Bprint(Bstdout, "%s", BEGINSETUP);
@@ -70,19 +74,19 @@ prologues(void) {
if (pointsize != 10) Bprint(Bstdout, "/pointsize %d def\n", pointsize);
if (xoffset != .25) Bprint(Bstdout, "/xoffset %g def\n", xoffset);
if (yoffset != .25) Bprint(Bstdout, "/yoffset %g def\n", yoffset);
- cat(ENCODINGDIR"/Latin1.enc");
+ cat(unsharp(ENCODINGDIR"/Latin1.enc"));
if (passthrough != 0) Bprint(Bstdout, "%s\n", passthrough);
Bprint(Bstdout, "setup\n");
if (formsperpage > 1) {
- cat(FORMFILE);
+ cat(unsharp(FORMFILE));
Bprint(Bstdout, "%d setupforms \n", formsperpage);
}
/* output Build character info from charlib if necessary. */
for (i=0; i<build_char_cnt; i++) {
sprint(charlibname, "%s/%s", CHARLIB, build_char_list[i]->name);
- if (cat(charlibname))
+ if (cat(unsharp(charlibname)))
Bprint(Bstderr, "cannot open %s\n", charlibname);
}
@@ -94,10 +98,11 @@ cleanup(void) {
remove(tmpfilename);
}
+int
main(int argc, char *argv[]) {
Biobuf btmp;
Biobuf *binp;
- Biobufhdr *Binp;
+ Biobuf *Binp;
int i, tot, ifd, fd;
char *t;
@@ -217,4 +222,5 @@ main(int argc, char *argv[]) {
finish();
exits("");
+ return 0;
}
diff --git a/src/cmd/postscript/tr2post/tr2post.h b/src/cmd/postscript/tr2post/tr2post.h
index 68299ccb..3f557b94 100644
--- a/src/cmd/postscript/tr2post/tr2post.h
+++ b/src/cmd/postscript/tr2post/tr2post.h
@@ -1,6 +1,6 @@
#define MAXSPECHARS 512
#define MAXTOKENSIZE 128
-#define CHARLIB FONTDIR "/devutf/charlib"
+#define CHARLIB "#9/troff/font/devutf/charlib"
/* devname clashes with libc on *BSD */
#define devname troff_devname
diff --git a/src/cmd/postscript/tr2post/utils.c b/src/cmd/postscript/tr2post/utils.c
index e9979ff1..9b51d036 100644
--- a/src/cmd/postscript/tr2post/utils.c
+++ b/src/cmd/postscript/tr2post/utils.c
@@ -88,12 +88,13 @@ void
glyphout(Rune rune, char *stoken, BOOLEAN specialflag) {
struct charent **cp;
struct troffont *tfp;
- struct psfent *psfp;
+ struct psfent *psfp = (struct psfent*)0;
int i, t;
int fontid; /* this is the troff font table index, not the mounted font table index */
- int mi, fi, wid;
+ int mi, wid;
Rune r;
+ mi = 0;
settrfont();
/* check current font for the character, special or not */
@@ -187,8 +188,6 @@ foundit:
if (t == 0x0001) { /* character is in charlib */
endstring();
if (pageon()) {
- struct charent *tcp;
-
Bprint(Bstdout, "%d %d m ", hpos, vpos);
/* if char is unicode character rather than name, clean up for postscript */
wid = chartorune(&r, (*cp)->name);
@@ -250,7 +249,7 @@ specialout(char *stoken) {
}
void
-graphfunc(Biobufhdr *bp) {
+graphfunc(Biobuf *bp) {
}
long