|
|
1.1 ! root 1: /* ! 2: * make configuration files for unix v9 ! 3: */ ! 4: ! 5: #include <libc.h> ! 6: #include "mkconf.h" ! 7: ! 8: Mdev *mlist; /* master list of devices; no particular order */ ! 9: Dev *dlist; /* configured devices; clustered by type, sorted within by id */ ! 10: Scb *llist; /* scb offsets; sorted by offset */ ! 11: ! 12: char *tfile = "tab"; ! 13: char *dfile = "devs"; ! 14: char *lfile = "low"; ! 15: char *oconf = "conf.c"; ! 16: char *olow = "low.s"; ! 17: ! 18: #define NCF 10 ! 19: char *cfile[NCF] = {"conf"}; ! 20: ! 21: int errs; ! 22: ! 23: main(argc, argv) ! 24: int argc; ! 25: char **argv; ! 26: { ! 27: register char **p; ! 28: ! 29: p = cfile; ! 30: while (--argc > 0) { ! 31: if (**++argv != '-') { ! 32: if (p >= &cfile[NCF-1]) { ! 33: fprint(STDERR, "too many files\n"); ! 34: exit(1); ! 35: } ! 36: *p++ = *argv; ! 37: continue; ! 38: } ! 39: if (argc == 1) ! 40: usage(); ! 41: if (strcmp(*argv, "-d") == 0) { ! 42: dfile = *++argv; ! 43: argc--; ! 44: } else if (strcmp(*argv, "-t") == 0) { ! 45: tfile = *++argv; ! 46: argc--; ! 47: } else if (strcmp(*argv, "-l") == 0) { ! 48: lfile = *++argv; ! 49: argc--; ! 50: } else if (strcmp(*argv, "-c") == 0) { ! 51: oconf = *++argv; ! 52: argc--; ! 53: } else if (strcmp(*argv, "-s") == 0) { ! 54: olow = *++argv; ! 55: argc--; ! 56: } else ! 57: usage(); ! 58: } ! 59: readdevs(dfile); ! 60: readtab(tfile); ! 61: readlow(lfile); ! 62: for (p = cfile; *p; p++) ! 63: readconf(*p); ! 64: fixup(); ! 65: if (errs) ! 66: exit(1); ! 67: writconf(oconf); ! 68: writlow(olow); ! 69: exit(0); ! 70: } ! 71: ! 72: usage() ! 73: { ! 74: fprint(STDERR, "usage: mkconf [-d devices] [-l veclist] [-c conf.c] [-s low.s] conf\n"); ! 75: exit(1); ! 76: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.