#include <sys/types.h>#include <sys/wait.h>#include <errno.h>#include <signal.h>#include <string.h>#include <stdlib.h>#include <fcntl.h>#include <unistd.h>Go to the source code of this file.
Classes | |
| struct | passinfo |
| struct | compile |
| struct | compile::compile::pass |
| struct | arglist |
Defines | |
| #define | SHELL "/bin/sh" |
| #define | PP "/usr/lib/ncpp" |
| #define | IRREL "/usr/lib/irrel" |
| #define | CEM "/usr/lib/ncem" |
| #define | M2EM "/usr/lib/nm2em" |
| #define | ENCODE "/usr/lib/em_encode" |
| #define | OPT "/usr/lib/nopt" |
| #define | CG "/usr/lib/ncg" |
| #define | AS "/usr/lib/as" |
| #define | LD "/usr/lib/ld" |
| #define | CV "/usr/lib/cv" |
| #define | LIBDIR "/usr/lib" |
| #define | CRT "/usr/lib/ncrtso.o" |
| #define | PEM "/usr/lib/npem" |
| #define | PRT "/usr/lib/nprtso.o" |
| #define | M2RT "/usr/lib/nm2rtso.o" |
| #define | LIBC "/usr/lib/libd.a", "/usr/lib/libc.a" |
| #define | LIBP "/usr/lib/libp.a", "/usr/lib/libc.a" |
| #define | LIBM2 "/usr/lib/libm2.a", "/usr/lib/libc.a" |
| #define | END "/usr/lib/libe.a", "/usr/lib/end.a" |
| #define | M2DEF "-I/usr/lib/m2" |
| #define | INPUT 01 |
| #define | OUTPUT 02 |
| #define | LOADER 04 |
| #define | STDIN 010 |
| #define | STDOUT 020 |
| #define | NOCLEAN 040 |
| #define | O_OUTPUT 0100 |
| #define | PREPALWAYS 0200 |
| #define | PREPCOND 0400 |
| #define | PREPNOLN 01000 |
| #define | MAXHEAD 10 |
| #define | MAXTAIL 5 |
| #define | MAXPASS 7 |
| #define | DEFLANG 010 |
| #define | PREP_FLAGS |
| #define | MAXARGC 150 |
| #define | USTR_SIZE 64 |
| #define | init(a) ((a)->al_argc = 1) |
| #define | cleanup(str) (str && remove(str)) |
Typedefs | |
| typedef char | USTRING [USTR_SIZE] |
Functions | |
| _PROTOTYPE (char *library,(char *nm)) | |
| _PROTOTYPE (void trapcc,(int sig)) | |
| _PROTOTYPE (int main,(int argc, char *argv[])) | |
| _PROTOTYPE (int remove,(char *str)) | |
| _PROTOTYPE (char *alloc,(unsigned u)) | |
| _PROTOTYPE (int append,(struct arglist *al, char *arg)) | |
| _PROTOTYPE (int concat,(struct arglist *al1, struct arglist *al2)) | |
| _PROTOTYPE (char *mkstr,(char *dst, char *arg1, char *arg2, char *arg3)) | |
| _PROTOTYPE (int basename,(char *str, char *dst)) | |
| _PROTOTYPE (char *extension,(char *fln)) | |
| _PROTOTYPE (int runvec,(struct arglist *vec, struct passinfo *pass, char *in, char *out)) | |
| _PROTOTYPE (int prnum,(unsigned x)) | |
| _PROTOTYPE (int pr_vec,(struct arglist *vec)) | |
| _PROTOTYPE (int mktempname,(char *nm)) | |
| _PROTOTYPE (int mkbase,(void)) | |
| _PROTOTYPE (int needsprep,(char *name)) | |
| _PROTOTYPE (char *apply,(struct passinfo *pinf, struct compile *cp, char *name, int passindex, int noremove, int first, char *resultname)) | |
| _PROTOTYPE (int applicable,(struct passinfo *pinf, char *suffix)) | |
| _PROTOTYPE (char *process,(char *name, int noremove)) | |
| _PROTOTYPE (int mkvec,(struct arglist *call, char *in, char *out, struct pass *pass, struct passinfo *pinf)) | |
| _PROTOTYPE (int callld,(struct arglist *in, char *out, struct pass *pass, struct passinfo *pinf)) | |
| _PROTOTYPE (int clean,(struct arglist *c)) | |
| _PROTOTYPE (int scanflags,(struct arglist *call, struct passinfo *pinf)) | |
| char * | library (char *nm) |
| void | trapcc (int sig) |
| main (argc, argv) | |
| remove (char *str) | |
| char * | alloc (unsigned u) |
| append (struct arglist *al, char *arg) | |
| concat (struct arglist *al1, struct arglist *al2) | |
| char * | mkstr (char *dst, char *arg1, char *arg2, char *arg3) |
| basename (char *str, char *dst) | |
| char * | extension (char *fln) |
| runvec (struct arglist *vec, struct passinfo *pass, char *in, char *out) | |
| prnum (unsigned x) | |
| prs (char *str) | |
| panic (char *str) | |
| pr_vec (struct arglist *vec) | |
| ex_vec (struct arglist *vec) | |
| mktempname (char *nm) | |
| mkbase () | |
| mkloader () | |
| needsprep (char *name) | |
| cfile (char *name) | |
| char * | apply (struct passinfo *pinf, struct compile *cp, char *name, passindex, noremove, first, char *resultname) |
| int | applicable (struct passinfo *pinf, char *suffix) |
| char * | process (char *name, noremove) |
| mkvec (struct arglist *call, char *in, char *out, struct pass *pass, struct passinfo *pinf) | |
| callld (struct arglist *in, char *out, struct pass *pass, struct passinfo *pinf) | |
| clean (struct arglist *c) | |
| scanflags (struct arglist *call, struct passinfo *pinf) | |
Variables | |
| struct passinfo | passinfo [] |
| struct pass | preprocessor |
| struct pass | prepnoln |
| struct pass | irrel |
| struct compile | passes [] |
| struct arglist | CALLVEC |
| int | kids = -1 |
| char * | o_FILE = "a.out" |
| char * | ProgCall = 0 |
| int | RET_CODE = 0 |
| char * | stopsuffix |
| int | v_flag = 0 |
| int | t_flag = 0 |
| int | noexec = 0 |
| int | fp_lib = 1 |
| int | E_flag = 0 |
| int | i_flag = 1 |
| USTRING | curfil |
| USTRING | newfil |
| struct arglist | SRCFILES |
| struct arglist | LDIRS |
| struct arglist | LDFILES |
| struct arglist | GEN_LDFILES |
| struct arglist | FLAGS |
| char * | tmpdir = "/tmp" |
| char | tmpname [64] |
| struct compile * | compbase |
| struct pass * | loader |
| struct passinfo * | loaderinfo |
| char * | source |
| int | maxLlen |
| #define PREP_FLAGS |
| _PROTOTYPE | ( | int | callld, | |
| (struct arglist *in, char *out, struct pass *pass, struct passinfo *pinf) | ||||
| ) |
| _PROTOTYPE | ( | int | mkvec, | |
| (struct arglist *call, char *in, char *out, struct pass *pass, struct passinfo *pinf) | ||||
| ) |
| _PROTOTYPE | ( | char * | process, | |
| (char *name, int noremove) | ||||
| ) |
| _PROTOTYPE | ( | char * | apply, | |
| (struct passinfo *pinf, struct compile *cp, char *name, int passindex, int noremove, int first, char *resultname) | ||||
| ) |
| _PROTOTYPE | ( | int | needsprep, | |
| (char *name) | ||||
| ) |
| _PROTOTYPE | ( | int | mkbase, | |
| (void) | ||||
| ) |
| _PROTOTYPE | ( | int | mktempname, | |
| (char *nm) | ||||
| ) |
| _PROTOTYPE | ( | int | pr_vec, | |
| (struct arglist *vec) | ||||
| ) |
| _PROTOTYPE | ( | int | prnum, | |
| (unsigned x) | ||||
| ) |
| _PROTOTYPE | ( | char * | extension, | |
| (char *fln) | ||||
| ) |
| _PROTOTYPE | ( | int | basename, | |
| (char *str, char *dst) | ||||
| ) |
| _PROTOTYPE | ( | char * | mkstr, | |
| (char *dst, char *arg1, char *arg2, char *arg3) | ||||
| ) |
| _PROTOTYPE | ( | char * | alloc, | |
| (unsigned u) | ||||
| ) |
| _PROTOTYPE | ( | int | remove, | |
| (char *str) | ||||
| ) |
| _PROTOTYPE | ( | int | main, | |
| (int argc, char *argv[]) | ||||
| ) |
| _PROTOTYPE | ( | void | trapcc, | |
| (int sig) | ||||
| ) |
| _PROTOTYPE | ( | char * | library, | |
| (char *nm) | ||||
| ) |
| char* mkstr | ( | char * | dst, | |
| char * | arg1, | |||
| char * | arg2, | |||
| char * | arg3 | |||
| ) |
| struct arglist GEN_LDFILES |
| struct passinfo* loaderinfo |
Initial value:
{
{ "cpp", PP, "CPP", "i", "wo=o,I*,D*,U*,P", INPUT|STDOUT },
{ "irrel", IRREL, "i", "i", "m", INPUT},
{ "cem", CEM, "i,c", "k", "m=o,p,wa=a,wo=o,ws=s,w,T*", INPUT|OUTPUT|PREPALWAYS },
{ "pc", PEM, "i,p", "k", "n=L,w,a,A,R", INPUT|OUTPUT|PREPCOND },
{ "m2", M2EM, "i,mod", "k", "n=L,w*,A,R,W*,3,I*", INPUT|OUTPUT|PREPCOND },
{ "encode", ENCODE, "i,e", "k", "", INPUT|STDOUT|PREPCOND|PREPNOLN },
{ "opt", OPT, "k", "m", "", STDIN|STDOUT },
{ "cg", CG, "m", "s", "O=p4", INPUT|OUTPUT },
{ "as", AS, "i,s", "o", "T*", INPUT|O_OUTPUT|PREPCOND },
{ "ld", LD, "o", "out", "i,s", INPUT|LOADER },
{ "cv", CV, "out", 0, "", INPUT|OUTPUT|NOCLEAN },
{ 0}
}
| struct pass preprocessor |
| char* stopsuffix |
1.5.8