Annotation of 42BSD/ucb/pascal/pdx/command/remake.c, revision 1.1.1.1

1.1       root        1: /* Copyright (c) 1982 Regents of the University of California */
                      2: 
                      3: static char sccsid[] = "@(#)remake.c 1.2 3/8/82";
                      4: 
                      5: /*
                      6:  * Remake the object file from the source.
                      7:  */
                      8: 
                      9: #include "defs.h"
                     10: #include "command.h"
                     11: #include "object.h"
                     12: 
                     13: /*
                     14:  * Invoke "pi" on the dotpfile, then reread the symbol table information.
                     15:  *
                     16:  * We have to save tracing info before, and read it in after, because
                     17:  * it might contain symbol table pointers.
                     18:  *
                     19:  * We also have to restart the process so that px dependent information
                     20:  * is recomputed.
                     21:  */
                     22: 
                     23: remake()
                     24: {
                     25:     char *tmpfile;
                     26: 
                     27:     if (call("pi", stdin, stdout, dotpfile, NIL) == 0) {
                     28:        if (strcmp(objname, "obj") != 0) {
                     29:            call("mv", stdin, stdout, "obj", objname, NIL);
                     30:        }
                     31:        tmpfile = mktemp("/tmp/pdxXXXX");
                     32:        setout(tmpfile);
                     33:        status();
                     34:        unsetout();
                     35:        bpfree();
                     36:        objfree();
                     37:        initstart();
                     38:        readobj(objname);
                     39:        setinput(tmpfile);
                     40:        unlink(tmpfile);
                     41:     } else {
                     42:        puts("pi unsuccessful");
                     43:     }
                     44: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.