@EOF

chmod 644 diac.l

echo x - Makefile cat >Makefile <<’@EOF’ # # if you do not have flex available, deactivate the definitions of # LEX and LEXLIB; The program compiled with flex works also with the # standard lex library (-ll). # LEX=flex LEXLIB=-lfl PROGS= diac

all: ${PROGS

diac: diac.l diacaux.h diacaux.c ${LEX ${LFLAGS diac.l cc -O ${DEFINES -o $ diacaux.c lex.yy.c ${LEXLIB strip $  rm lex.yy.c lex.yy.o diacaux.o

clean: rm -f ${PROGS *.o *~ #* core

shar: shar diac.l Makefile diacaux.c diacaux.h > diac.shar @EOF

chmod 644 Makefile

echo x - diacaux.c cat >diacaux.c <<’@EOF’ /* diacaux.c * to be linked with lex.yy.c from diac.l * written by Dorai Sitaram, Rice University, 1990 */

#include "diacaux.h"

int slen(s) char *s; { int i;

for (i = 1; s[i] != ’\0’; i++) ;

return i;

char *strap(s,t) char *s,*t; { char *r = (char *) malloc(slen(s) + slen(t)); int i,j;

for (i = 0; s[i] != ’\0’; i++) r[i] = s[i];

for (j = 0; t[j] != ’\0’; i++, j++) r[i] = t[j];

r[i] = ’\0’;

return r;

char *getfilename(s) char *s; { char *r = (char *) malloc(slen(s)); int i,j;

for (i = 0; s[i] == ’ ’ || s[i] == ’\t’ || s[i] == ’\n’; i++) ;

for (j = 0; s[i] != ’\0’; i++, j++) r[j] = s[i];

r[j] = ’\0’;

return r;

char *getfilenamebrack(s) char *s; { char *r = (char *) malloc(slen(s)); int i,j;

for (i = 0; s[i] == ’ ’ || s[i] == ’\t’ || s[i] == ’\n’ || s[i] == ’{’; i++) ;

for (j = 0; s[i] != ’’; i++, j++) r[j] = s[i];

r[j] = ’\0’;

return r;

char *maketempfilename(s) char *s; { char *r = (char *)malloc(slen(s)); int i,j;

for (i = 0, j = 0; s[j] != ’\0’; i++, j++) { r[i] = s[j]; if (r[i] == ’/’) r[i] = ’_’;

r[i] = ’\0’;

return strap("/tmp/",r);

void dosubdiac(s,t) char *s,*t; { system(strap("diac <", strap(texfile, strap(" > ", tempfile)))); @EOF

chmod 644 diacaux.c

echo x - diacaux.h cat >diacaux.h <<’@EOF’ /* diac.h * to be included in diac.l and diac.c * written by Dorai Sitaram, Rice University, 1990 */

char *texfile; char *tempfile; int slen(); char *strap(); char *getfilename(); char *getfilenamebrack(); char *maketempfilename(); void dosubdiac(); @EOF

chmod 644 diacaux.h

exit 0


This document was generated on November 21, 2024 using texi2html 5.0.