Annotation of coherent/d/bin/load/message.c, revision 1.1.1.1

1.1       root        1: /*
                      2:  * ld/message.c
                      3:  * Print messages of various origins.
                      4:  */
                      5: 
                      6: #include "data.h"
                      7: 
                      8: void
                      9: message( args )
                     10: char * args;
                     11: {
                     12:        printf( "ld: %r\n", &args );
                     13: }
                     14: 
                     15: /*
                     16:  * Fatal error; print message and exit
                     17:  */
                     18: void
                     19: fatal( args )
                     20: char * args;
                     21: {
                     22:        fprintf( stderr, "ld: %r\n", &args );
                     23:        exit( 1 );
                     24: }
                     25: 
                     26: /*
                     27:  * message plus command prototype
                     28:  */
                     29: void
                     30: usage( args )
                     31: char * args;
                     32: {
                     33:        fatal( "%r\n\
                     34: Usage: ld [-d] [-e entry] [-k[sysnam]] [-i] [-l<name>] [-m] [-n] [-o file]\\\n\
                     35: \t[-C] [-r] [-s] [-u symbol] [-X|x] file ...",
                     36:                &args );
                     37: }
                     38: 
                     39: /*
                     40:  * message with filename
                     41:  */
                     42: void
                     43: filemsg( fname, args )
                     44: char   *fname, *args;
                     45: {
                     46:        message( "file %s: %r", fname, &args );
                     47: }
                     48: 
                     49: /*
                     50:  * Message with module and file name
                     51:  */
                     52: void
                     53: modmsg( fname, mname, args )
                     54: char * fname;
                     55: char   mname[DIRSIZ];
                     56: char * args;
                     57: {
                     58:        if ( mname[0] == 0 )
                     59:                filemsg( fname, "%r", &args );
                     60: 
                     61:        else
                     62:                filemsg( fname, "module %.*s: %r",
                     63:                        DIRSIZ, mname, &args );
                     64: }
                     65: 
                     66: /*
                     67:  * Message for module passed by pointer
                     68:  */
                     69: void
                     70: mpmsg( mp, args )
                     71: mod_t * mp;
                     72: char  * args;
                     73: {
                     74:        modmsg( mp->fname, mp->mname, "%r", &args );
                     75: }
                     76: 
                     77: /*
                     78:  * Message for symbol passed by pointer
                     79:  */
                     80: void
                     81: spmsg( sp, args )
                     82: sym_t  *sp;
                     83: char   *args;
                     84: {
                     85:        if ( sp->mod == NULL )
                     86:                message( "symbol %.*s: %r", NCPLN, sp->s.ls_id, &args );
                     87: 
                     88:        else
                     89:                mpmsg( sp->mod, "symbol %.*s: %r", NCPLN, sp->s.ls_id, &args );
                     90: }

unix.superglobalmegacorp.com

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