Annotation of 43BSD/contrib/notes/src/Makefile, revision 1.1.1.1

1.1       root        1: #      Makefile for University of Illinois Notesfiles
                      2: #
                      3: # $Header: Makefile,v 1.7.0.5 85/10/09 18:11:23 notes Rel $
                      4: #
                      5: #      Ray Essick
                      6: #      214 DCL
                      7: #      University of Illinois at Urbana-Champaign
                      8: #      1304 W. Springfield
                      9: #      Urbana, Illinois 61801
                     10: #      217-333-7937
                     11: #
                     12: 
                     13: BIN = /usr/local
                     14: MSTDIR = /usr/spool/notes
                     15: ARCHDIR = /usr/spool/oldnotes
                     16: NET = /usr/bin
                     17: AUTOSEQ = autoseq
                     18: NOTES = notes
                     19: NOTESUID = 10
                     20: NOTESGRP = notes
                     21: ANON = anon
                     22: ANONUID = 4
                     23: LIBDIR = /usr/local/lib
                     24: CC = cc
                     25: CFLAGS = -DMSTDIR=\"$(MSTDIR)\" -DARCHDIR=\"$(ARCHDIR)\" \
                     26:        -DNOTES=\"$(NOTES)\" -DNOTESUID=$(NOTESUID) \
                     27:        -DANON=\"$(ANON)\" -DANONUID=$(ANONUID) \
                     28:        -DBIN=\"$(BIN)\" -DRCSIDENT -O
                     29: LFLAGS = -n
                     30: #      -n is shared, read-only text segment
                     31: TERMCAP = -ltermcap
                     32: # Evidently on System V (and other USG systems?) the termcap routines
                     33: # are in /usr/lib/libcurses.a
                     34: 
                     35: #
                     36: #      The following probably don't need to be modified
                     37: #
                     38: UTILITY = $(MSTDIR)/.utilities
                     39: SEQUENCER = $(MSTDIR)/.sequencer
                     40: LOCKS = $(MSTDIR)/.locks
                     41: ALIASES = $(UTILITY)/net.aliases
                     42: UNIQID = $(MSTDIR)/.SEQ
                     43: 
                     44: # directory where the "release" copy is kept
                     45: DISTDIR= p:/usr/src/uiuc/notesfiles
                     46: DCP=   rcp
                     47: RCSID = 1.7.0
                     48: RCSSTATE = Rel
                     49: RCSIFLAGS = -r$(RCSID) -s$(RCSSTATE)
                     50: RCSOFLAGS = -r$(RCSID) -s$(RCSSTATE)
                     51: 
                     52: #
                     53: #      Define some collections of routines so that things will
                     54: #      be easy to maintain
                     55: #
                     56: 
                     57: MISCFILES = Makefile rinstall getdate.y
                     58: HFILES = canon.h doc.h net.h newsgate.h parms.h structs.h dump.h
                     59: HLPFILES = access.help dir.help index.help lim.help read.help
                     60: CFILES = access.c adnote.c adresp.c archiver.c asearch.c buildnf.c check.c \
                     61:        checknotes.c compress.c control.c cursor.c datein.c delete.c \
                     62:        dmpnote.c dmpresp.c dropt.c dsply.c find.c gdate.c getnet.c \
                     63:        gname.c gtext.c gtime.c help.c index.c ldmisc.c limindx.c loadem.c \
                     64:        lprnote.c lrsp.c mailit.c main.c misc.c miscio.c mknf.c newsdump.c \
                     65:        newsgroup.c newsinput.c newsout.c newsoutput.c next.c nfalias.c \
                     66:        nfarchive.c nfcomment.c nfmail.c nfpipe.c nfprint.c nfrcv.c nfsend.c \
                     67:        nfstats.c nfxmit.c note.c pagein.c pageout.c pattern.c permit.c \
                     68:        perms.c preptxt.c prtind.c readem.c recsio.c resp.c rmnf.c \
                     69:        savtxt.c startup.c talkto.c times.c tsearch.c \
                     70:        expand.c newspath.c nfaccess.c acssort.c nfabort.c \
                     71:        nfdump.c dump.c nfload.c loadnf.c parse.c loadvars.c \
                     72:        bnewshead.c loadproto1.c ftime.c parsepath.c pagemove.c
                     73: USERCMDS = main nfpipe nfprint nfstats checknotes
                     74: NETCMDS = nfxmit nfrcv newsinput newsoutput
                     75: UTILCMDS = mknf rmnf nfarchive nfaccess nfmail
                     76: MISCCMDS = nfload nfdump
                     77: CMDS = $(USERCMDS) $(NETCMDS) $(UTILCMDS) $(MISCCMDS)
                     78: 
                     79: #
                     80: #      Objects (other than the mainline) to load with each program
                     81: #
                     82: 
                     83: CHECKNOTES = check.o cursor.o gname.o gtime.o lrsp.o misc.o miscio.o \
                     84:          next.o pattern.o perms.o recsio.o startup.o times.o expand.o
                     85: MAIN   = access.o acssort.o adnote.o adresp.o asearch.o check.o compress.o \
                     86:          control.o cursor.o delete.o dropt.o dsply.o gdate.o gname.o \
                     87:          gtext.o gtime.o help.o index.o limindx.o lrsp.o mailit.o \
                     88:          misc.o miscio.o next.o note.o pagein.o pageout.o pattern.o \
                     89:          permit.o perms.o preptxt.o prtind.o readem.o recsio.o resp.o \
                     90:          savtxt.o startup.o talkto.o times.o tsearch.o \
                     91:          expand.o datein.o getdate.o ftime.o pagemove.o
                     92: MKNF   = buildnf.o check.o cursor.o gname.o gtime.o misc.o \
                     93:          miscio.o startup.o acssort.o recsio.o perms.o
                     94: NEWSINPUT = buildnf.o check.o cursor.o datein.o find.o gname.o gtime.o \
                     95:          lrsp.o misc.o miscio.o newsgroup.o note.o pagein.o permit.o \
                     96:          perms.o recsio.o resp.o startup.o tsearch.o acssort.o \
                     97:          expand.o bnewshead.o pattern.o getdate.o ftime.o parsepath.o
                     98: NEWSOUTPUT = check.o cursor.o gname.o gtime.o lrsp.o misc.o miscio.o \
                     99:          newsdump.o newsgroup.o newsout.o newspath.o next.o pageout.o \
                    100:          pattern.o perms.o recsio.o startup.o times.o expand.o \
                    101:          getnet.o datein.o getdate.o ftime.o
                    102: NFACCESS = acssort.o check.o cursor.o gname.o gtime.o misc.o miscio.o \
                    103:          pattern.o permit.o perms.o recsio.o startup.o expand.o
                    104: NFARCHIVE = archiver.o buildnf.o check.o compress.o cursor.o dmpnote.o \
                    105:          dmpresp.o gname.o gtime.o lrsp.o misc.o miscio.o \
                    106:          next.o nfalias.o note.o pagein.o pageout.o pattern.o permit.o \
                    107:          perms.o recsio.o resp.o startup.o expand.o acssort.o find.o \
                    108:          pagemove.o
                    109: NFMAIL = gname.o gtime.o note.o pagein.o recsio.o resp.o startup.o \
                    110:          tsearch.o check.o cursor.o misc.o miscio.o perms.o parsepath.o
                    111: NFPIPE = check.o cursor.o gname.o gtime.o misc.o miscio.o note.o \
                    112:          pagein.o permit.o perms.o recsio.o startup.o
                    113: NFPRINT        = check.o cursor.o gname.o gtime.o lprnote.o lrsp.o \
                    114:          misc.o miscio.o pageout.o permit.o perms.o recsio.o \
                    115:          startup.o
                    116: NFRCV  = buildnf.o check.o cursor.o find.o gname.o gtime.o ldmisc.o \
                    117:          loadem.o lrsp.o misc.o miscio.o note.o permit.o perms.o \
                    118:          recsio.o resp.o startup.o acssort.o
                    119: NFSTATS        = check.o cursor.o gname.o gtime.o misc.o miscio.o \
                    120:          pattern.o perms.o recsio.o startup.o expand.o
                    121: NFXMIT = check.o cursor.o dmpnote.o dmpresp.o getnet.o gname.o \
                    122:          gtime.o lrsp.o misc.o miscio.o next.o nfalias.o nfsend.o \
                    123:          pageout.o pattern.o permit.o perms.o recsio.o \
                    124:          startup.o times.o expand.o datein.o getdate.o ftime.o
                    125: RMNF   = check.o cursor.o misc.o miscio.o startup.o gname.o \
                    126:          expand.o pattern.o
                    127: LIBOBJS        = nfabort.o nfcomment.o
                    128: #
                    129: NFDUMP = dump.o dmpnote.o dmpresp.o check.o recsio.o note.o resp.o \
                    130:          lrsp.o startup.o misc.o miscio.o pageout.o gname.o perms.o \
                    131:          permit.o gtime.o cursor.o
                    132: NFLOAD = loadvars.o loadnf.o buildnf.o recsio.o gname.o gtime.o \
                    133:          startup.o misc.o miscio.o cursor.o loadem.o parse.o acssort.o \
                    134:          check.o perms.o permit.o note.o ldmisc.o find.o resp.o \
                    135:          lrsp.o datein.o getdate.o ftime.o
                    136: 
                    137: bin:   user network utility
                    138:        @echo notesfile binaries up-to-date
                    139:        touch bin
                    140: 
                    141: all:   bin
                    142:        touch all
                    143: 
                    144: clean:
                    145:        rm -f *.o $(CMDS) libnfcom.a
                    146: #      DO NOT remove "boot" and "spool".
                    147:        rm -f placebin placeuser placenet placeutil placelib placedoc \
                    148:                bin user network utility install print all
                    149:        rm -f Make.errs
                    150: 
                    151: sizes:
                    152:        size $(CMDS)
                    153: 
                    154: help:
                    155:        @echo type make base as su to make notes directories.
                    156:        @echo type make install to compile and install code and man pages.
                    157:        @echo type make bin to merely make binaries.
                    158:        @echo for more info, see the Notesfile Reference Manual.
                    159: 
                    160: user:  $(USERCMDS)
                    161:        touch user
                    162: 
                    163: network: $(NETCMDS)
                    164:        touch network
                    165: 
                    166: utility: $(UTILCMDS)
                    167:        touch utility
                    168: 
                    169: #      make base should only be run once!
                    170: #      This set of commands sets up the required files down in the
                    171: #      binary directories. It's main purpose is to do the several
                    172: #      installation commands that might just have to be super-user.
                    173: 
                    174: base:
                    175:        mkdir $(MSTDIR) $(ARCHDIR)
                    176:        -chown $(NOTES) $(MSTDIR) $(ARCHDIR)
                    177:        -chgrp $(NOTESGRP) $(MSTDIR) $(ARCHDIR)
                    178:        (cd $(BIN); touch notes nfprint nfstats checknotes nfpipe)
                    179:        -(cd $(BIN); chown $(NOTES) notes nfprint nfstats nfpipe checknotes)
                    180:        -(cd $(BIN); chgrp $(NOTESGRP) notes nfprint nfstats nfpipe checknotes)
                    181: #      establish "aliases" for auto-sequencing entry points
                    182: #      make more links with other names if you want them.
                    183:        ln $(BIN)/notes $(BIN)/$(AUTOSEQ)
                    184:        -(cd $(NET); touch nfxmit nfrcv)
                    185:        -(cd $(NET); chown $(NOTES) nfxmit nfrcv)
                    186:        -(cd $(NET); chgrp $(NOTESGRP) nfxmit nfrcv)
                    187:        touch $(LIBDIR)/libnfcom.a
                    188:        -chown $(NOTES) $(LIBDIR)/libnfcom.a
                    189:        -chgrp $(NOTESGRP) $(LIBDIR)/libnfcom.a
                    190:        touch base
                    191:        @echo base generation done
                    192: 
                    193: boot:  spool install
                    194: #      make the nfgripes file and open it
                    195:        -mknf -o nfgripes
                    196:        -mknf -on nfmaint
                    197:        @echo notesfile system booted
                    198: 
                    199: spool:
                    200:        mkdir $(UTILITY) $(SEQUENCER) $(LOCKS) $(ALIASES)
                    201:        -chown $(NOTES) $(UTILITY) $(SEQUENCER) $(LOCKS) $(ALIASES)
                    202:        -chgrp $(NOTESGRP) $(UTILITY) $(SEQUENCER) $(LOCKS) $(ALIASES)
                    203:        chmod 775 $(MSTDIR) $(UTILITY) $(SEQUENCER) $(LOCKS) $(ALIASES)
                    204:        mkdir $(UTILITY)/coredump
                    205:        chmod 777 $(UTILITY)/coredump
                    206:        echo 1 > $(UNIQID)
                    207:        chmod 660 $(UNIQID)
                    208:        -chown $(NOTES) $(UTILITY)/coredump $(UNIQID)
                    209:        -chgrp $(NOTESGRP) $(UTILITY)/coredump $(UNIQID)
                    210: #      generate the available notesfile file here - only once!
                    211:        echo "available notesfiles" > $(UTILITY)/avail.notes
                    212:        touch $(UTILITY)/Dflt-Seq
                    213:        -chown $(NOTES) $(UTILITY)/avail.notes $(UTILITY)/Dflt-Seq
                    214:        -chgrp $(NOTESGRP) $(UTILITY)/avail.notes $(UTILITY)/Dflt-Seq
                    215:        chmod 664 $(UTILITY)/avail.notes $(UTILITY)/Dflt-Seq
                    216:        touch spool
                    217:        @echo Notesfile Spool directories ready
                    218: 
                    219: #      make sure that all the appropriate directories exist
                    220: dirs:  $(MSTDIR) $(ARCHDIR) $(UTILITY) $(SEQUENCER) $(LOCKS) \
                    221:        $(ALIASES) $(UTILITY)/coredump
                    222:        touch dirs
                    223: 
                    224: $(MSTDIR) $(ARCHDIR) $(UTILITY) $(SEQUENCER) $(LOCKS) $(ALIASES):
                    225:        mkdir $@
                    226:        -chown $(NOTES) $@
                    227:        -chgrp $(NOTESGRP) $@
                    228:        chmod 775 $@
                    229: 
                    230: $(UTILITY)/coredump:
                    231:        mkdir $@
                    232:        -chown $(NOTES) $@
                    233:        -chgrp $(NOTESGRP) $@
                    234:        chmod 777 $@
                    235: 
                    236: install: dirs placedoc placelib placebin
                    237:        touch install
                    238:        @echo notesfiles installed
                    239: 
                    240: placedoc:      access.help dir.help index.help lim.help read.help
                    241:        cp $? $(UTILITY)
                    242:        -(cd $(UTILITY); chmod 644 $?)
                    243:        -(cd $(UTILITY); chown $(NOTES) $?; chgrp $(NOTESGRP) $?)
                    244:        @echo notesfile help files installed
                    245:        touch placedoc
                    246: 
                    247: placelib: libnfcom.a
                    248:        cp libnfcom.a $(LIBDIR)/libnfcom.a
                    249:        -ranlib $(LIBDIR)/libnfcom.a
                    250:        touch placelib
                    251: 
                    252: cp:    placebin
                    253: 
                    254: placebin: $(BIN)/notes $(BIN)/nfpipe $(BIN)/nfprint \
                    255:          $(BIN)/nfstats $(BIN)/checknotes $(UTILITY)/mknf \
                    256:          $(UTILITY)/rmnf $(UTILITY)/nfarchive $(UTILITY)/nfaccess \
                    257:          $(UTILITY)/nfmail $(NET)/nfxmit $(NET)/nfrcv \
                    258:          $(UTILITY)/newsinput $(UTILITY)/newsoutput
                    259:        @echo notesfile binaries installed
                    260:        touch placebin
                    261: 
                    262: $(BIN)/notes:  main
                    263:        cp main $(BIN)/notes
                    264:        strip $(BIN)/notes
                    265:        -chown $(NOTES) $(BIN)/notes
                    266:        -chgrp $(NOTESGRP) $(BIN)/notes
                    267:        chmod 2755 $(BIN)/notes
                    268: 
                    269: $(BIN)/nfpipe: nfpipe
                    270:        cp nfpipe $(BIN)/nfpipe
                    271:        strip $(BIN)/nfpipe
                    272:        -chown $(NOTES) $(BIN)/nfpipe
                    273:        -chgrp $(NOTESGRP) $(BIN)/nfpipe
                    274:        chmod 2755 $(BIN)/nfpipe
                    275: 
                    276: $(BIN)/nfstats:        nfstats
                    277:        cp nfstats $(BIN)/nfstats
                    278:        strip $(BIN)/nfstats
                    279:        -chown $(NOTES) $(BIN)/nfstats
                    280:        -chgrp $(NOTESGRP) $(BIN)/nfstats
                    281:        chmod 2755 $(BIN)/nfstats
                    282: 
                    283: $(BIN)/nfprint:        nfprint
                    284:        cp nfprint $(BIN)/nfprint
                    285:        strip $(BIN)/nfprint
                    286:        -chown $(NOTES) $(BIN)/nfprint
                    287:        -chgrp $(NOTESGRP) $(BIN)/nfprint
                    288:        chmod 2755 $(BIN)/nfprint
                    289: 
                    290: $(BIN)/checknotes:     checknotes
                    291:        cp checknotes $(BIN)/checknotes
                    292:        strip $(BIN)/checknotes
                    293:        -chown $(NOTES) $(BIN)/checknotes
                    294:        -chgrp $(NOTESGRP) $(BIN)/checknotes
                    295:        chmod 2755 $(BIN)/checknotes
                    296: 
                    297: $(NET)/nfxmit: nfxmit
                    298:        cp nfxmit $(NET)/nfxmit
                    299:        strip $(NET)/nfxmit
                    300:        -chown $(NOTES) $(NET)/nfxmit
                    301:        -chgrp $(NOTESGRP) $(NET)/nfxmit
                    302:        chmod 6750 $(NET)/nfxmit
                    303: 
                    304: $(NET)/nfrcv:  nfrcv
                    305:        cp nfrcv $(NET)/nfrcv
                    306:        strip $(NET)/nfrcv
                    307:        -chown $(NOTES) $(NET)/nfrcv
                    308:        -chgrp $(NOTESGRP) $(NET)/nfrcv
                    309:        chmod 6755 $(NET)/nfrcv
                    310: 
                    311: $(UTILITY)/newsinput:  newsinput
                    312:        cp newsinput $(UTILITY)/newsinput
                    313:        strip $(UTILITY)/newsinput
                    314:        -chown $(NOTES) $(UTILITY)/newsinput
                    315:        -chgrp $(NOTESGRP) $(UTILITY)/newsinput
                    316:        chmod 6755 $(UTILITY)/newsinput
                    317: 
                    318: $(UTILITY)/newsoutput: newsoutput
                    319:        cp newsoutput $(UTILITY)/newsoutput
                    320:        strip $(UTILITY)/newsoutput
                    321:        -chown $(NOTES) $(UTILITY)/newsoutput
                    322:        -chgrp $(NOTESGRP) $(UTILITY)/newsoutput
                    323:        chmod 6755 $(UTILITY)/newsoutput
                    324: 
                    325: $(UTILITY)/mknf:       mknf
                    326:        cp mknf $(UTILITY)/mknf
                    327:        strip $(UTILITY)/mknf
                    328:        -chown $(NOTES) $(UTILITY)/mknf
                    329:        -chgrp $(NOTESGRP) $(UTILITY)/mknf
                    330:        chmod 4710 $(UTILITY)/mknf
                    331: 
                    332: $(UTILITY)/rmnf:       rmnf
                    333:        cp rmnf $(UTILITY)/rmnf
                    334:        strip $(UTILITY)/rmnf
                    335:        -chown $(NOTES) $(UTILITY)/rmnf
                    336:        -chgrp $(NOTESGRP) $(UTILITY)/rmnf
                    337:        chmod 4710 $(UTILITY)/rmnf
                    338: 
                    339: $(UTILITY)/nfarchive:  nfarchive
                    340:        cp nfarchive $(UTILITY)/nfarchive
                    341:        strip $(UTILITY)/nfarchive
                    342:        -chown $(NOTES) $(UTILITY)/nfarchive
                    343:        -chgrp $(NOTESGRP) $(UTILITY)/nfarchive
                    344:        chmod 6755 $(UTILITY)/nfarchive
                    345: 
                    346: $(UTILITY)/nfaccess:   nfaccess
                    347:        cp nfaccess $(UTILITY)/nfaccess
                    348:        strip $(UTILITY)/nfaccess
                    349:        -chown $(NOTES) $(UTILITY)/nfaccess
                    350:        -chgrp $(NOTESGRP) $(UTILITY)/nfaccess
                    351:        chmod 6755 $(UTILITY)/nfaccess
                    352: 
                    353: $(UTILITY)/nfmail:     nfmail
                    354:        cp nfmail $(UTILITY)/nfmail
                    355:        strip $(UTILITY)/nfmail
                    356:        -chown $(NOTES) $(UTILITY)/nfmail
                    357:        -chgrp $(NOTESGRP) $(UTILITY)/nfmail
                    358:        chmod 2755 $(UTILITY)/nfmail
                    359: 
                    360: #
                    361: #      Save old binaries. Put them all in the utility directory
                    362: #      so we don't clutter the bin directories
                    363: #
                    364: 
                    365: save:  saveuser savenet saveutil
                    366: 
                    367: saveuser:
                    368:        cp $(BIN)/notes $(UTILITY)/notes.old
                    369:        cp $(BIN)/nfpipe $(UTILITY)/nfpipe.old
                    370:        cp $(BIN)/nfprint $(UTILITY)/nfprint.old
                    371:        cp $(BIN)/nfstats $(UTILITY)/nfstats.old
                    372:        cp $(BIN)/checknotes $(UTILITY)/checknotes.old
                    373: 
                    374: savenet:
                    375:        cp $(NET)/nfxmit $(UTILITY)/nfxmit.old
                    376:        cp $(NET)/nfrcv $(UTILITY)/nfrcv.old
                    377:        cp $(UTILITY)/newsinput $(UTILITY)/newsinput.old
                    378:        cp $(UTILITY)/newsoutput $(UTILITY)/newsoutput.old
                    379: 
                    380: saveutil:
                    381:        cp $(UTILITY)/mknf $(UTILITY)/mknf.old
                    382:        cp $(UTILITY)/rmnf $(UTILITY)/rmnf.old
                    383:        cp $(UTILITY)/nfarchive $(UTILITY)/nfarchive.old
                    384:        cp $(UTILITY)/nfmail $(UTILITY)/nfmail.old
                    385: 
                    386: #
                    387: #      User programs
                    388: #
                    389: 
                    390: main:  main.o $(MAIN) libnfcom.a
                    391:        @echo loading main
                    392:        @${CC} $(CFLAGS) $(LFLAGS) -o main main.o $(MAIN) \
                    393:                libnfcom.a $(TERMCAP)
                    394: 
                    395: nfpipe:        nfpipe.o $(NFPIPE) libnfcom.a
                    396:        @echo loading nfpipe
                    397:        @${CC} $(CFLAGS) $(LFLAGS) -o nfpipe nfpipe.o $(NFPIPE) \
                    398:                libnfcom.a $(TERMCAP)
                    399: 
                    400: nfstats: nfstats.o $(NFSTATS) libnfcom.a
                    401:        @echo loading nfstats
                    402:        @${CC} $(CFLAGS) $(LFLAGS) -o nfstats nfstats.o $(NFSTATS) \
                    403:                libnfcom.a $(TERMCAP)
                    404: 
                    405: nfprint: nfprint.o $(NFPRINT) libnfcom.a
                    406:        @echo loading nfprint
                    407:        @${CC} $(CFLAGS) $(LFLAGS) -o nfprint nfprint.o $(NFPRINT) \
                    408:                libnfcom.a $(TERMCAP)
                    409: 
                    410: checknotes: checknotes.o $(CHECKNOTES) libnfcom.a
                    411:        @echo loading checknotes
                    412:        @${CC} $(CFLAGS) $(LFLAGS) -o checknotes checknotes.o $(CHECKNOTES) \
                    413:                libnfcom.a $(TERMCAP)
                    414: 
                    415: #
                    416: #      Network Transmission and reception
                    417: #
                    418: 
                    419: nfxmit:        nfxmit.o $(NFXMIT) libnfcom.a
                    420:        @echo loading nfxmit
                    421:        @${CC} $(CFLAGS) $(LFLAGS) -o nfxmit nfxmit.o $(NFXMIT) \
                    422:                libnfcom.a $(TERMCAP)
                    423: 
                    424: nfrcv: nfrcv.o $(NFRCV) libnfcom.a
                    425:        @echo loading nfrcv
                    426:        @${CC} $(CFLAGS) $(LFLAGS) -o nfrcv nfrcv.o $(NFRCV) \
                    427:                libnfcom.a $(TERMCAP)
                    428: 
                    429: #
                    430: #      Utility programs - create/delete notesfiles, news gateways,
                    431: #      and archiving
                    432: #
                    433: 
                    434: mknf:  mknf.o $(MKNF) libnfcom.a
                    435:        @echo loading mknf
                    436:        @${CC} $(CFLAGS) $(LFLAGS) -o mknf mknf.o $(MKNF) \
                    437:                libnfcom.a $(TERMCAP)
                    438: 
                    439: rmnf:  rmnf.o $(RMNF) libnfcom.a
                    440:        @echo loading rmnf
                    441:        @${CC} $(CFLAGS) $(LFLAGS) -o rmnf rmnf.o $(RMNF) \
                    442:                libnfcom.a $(TERMCAP)
                    443: 
                    444: newsinput: newsinput.o $(NEWSINPUT) libnfcom.a
                    445:        @echo loading newsinput
                    446:        @${CC} $(CFLAGS) $(LFLAGS) -o newsinput newsinput.o $(NEWSINPUT) \
                    447:                libnfcom.a $(TERMCAP)
                    448: 
                    449: newsoutput: newsoutput.o $(NEWSOUTPUT) libnfcom.a
                    450:        @echo loading newsoutput
                    451:        @${CC} $(CFLAGS) $(LFLAGS) -o newsoutput newsoutput.o $(NEWSOUTPUT) \
                    452:                libnfcom.a $(TERMCAP)
                    453: 
                    454: nfarchive: nfarchive.o $(NFARCHIVE) libnfcom.a
                    455:        @echo loading nfarchive
                    456:        @${CC} $(CFLAGS) $(LFLAGS) -o nfarchive nfarchive.o $(NFARCHIVE) \
                    457:                libnfcom.a $(TERMCAP)
                    458: 
                    459: nfaccess: nfaccess.o $(NFACCESS) libnfcom.a
                    460:        @echo loading nfaccess
                    461:        @${CC} $(CFLAGS) $(LFLAGS) -o nfaccess nfaccess.o $(NFACCESS) \
                    462:                libnfcom.a $(TERMCAP)
                    463: 
                    464: nfmail:        nfmail.o $(NFMAIL) libnfcom.a
                    465:        @echo loading nfmail
                    466:        @${CC} ${CFLAGS} ${LFLAGS} -o nfmail nfmail.o ${NFMAIL} \
                    467:                libnfcom.a ${TERMCAP}
                    468: 
                    469: #
                    470: #      User subroutines
                    471: #
                    472: 
                    473: libnfcom.a:    $(LIBOBJS)
                    474:        ar r libnfcom.a $(LIBOBJS)
                    475:        -ranlib libnfcom.a
                    476: 
                    477: #
                    478: #      Load/Dump tools
                    479: #
                    480: 
                    481: nfdump:        nfdump.o $(NFDUMP) libnfcom.a
                    482:        @echo loading nfdump
                    483:        @$(CC) -o nfdump nfdump.o $(NFDUMP) libnfcom.a $(TERMCAP)
                    484: 
                    485: nfload: nfload.o $(NFLOAD) libnfcom.a
                    486:        @echo loading nfload
                    487:        @$(CC) -o nfload nfload.o $(NFLOAD) libnfcom.a $(TERMCAP)
                    488: 
                    489: #
                    490: #      This should set up some rules for dependencies on
                    491: #      the include files.
                    492: #
                    493: 
                    494: access.o       : parms.h structs.h
                    495: adnote.o       : parms.h structs.h
                    496: adresp.o       : parms.h structs.h
                    497: archiver.o     : parms.h structs.h
                    498: asearch.o      : parms.h structs.h
                    499: bnewshead.o    : parms.h structs.h newsgate.h
                    500: buildnf.o      : parms.h structs.h
                    501: check.o        : parms.h structs.h
                    502: checknotes.o           : parms.h structs.h
                    503: compress.o     : parms.h structs.h
                    504: control.o      : parms.h structs.h
                    505: cursor.o       : parms.h structs.h
                    506: datein.o       : parms.h structs.h
                    507: delete.o       : parms.h structs.h
                    508: dmpnote.o      : parms.h structs.h
                    509: dmpresp.o      : parms.h structs.h
                    510: dropt.o        : parms.h structs.h
                    511: dsply.o        : parms.h structs.h
                    512: expand.o       : parms.h structs.h
                    513: find.o         : parms.h structs.h
                    514: gdate.o        : parms.h structs.h
                    515: getnet.o       : parms.h structs.h net.h
                    516: gname.o        : parms.h structs.h
                    517: gtext.o        : parms.h structs.h
                    518: gtime.o        : parms.h structs.h
                    519: help.o         : parms.h structs.h
                    520: index.o        : parms.h structs.h
                    521: ldmisc.o       : parms.h structs.h
                    522: limindx.o      : parms.h structs.h
                    523: loadem.o       : parms.h structs.h
                    524: lprnote.o      : parms.h structs.h
                    525: lrsp.o         : parms.h structs.h
                    526: mailit.o       : parms.h structs.h
                    527: main.o         : parms.h structs.h
                    528: misc.o         : parms.h structs.h
                    529: miscio.o       : parms.h structs.h
                    530: mknf.o         : parms.h structs.h
                    531: newsdump.o     : parms.h structs.h newsgate.h
                    532: newsgroup.o    : parms.h structs.h newsgate.h
                    533: newsinput.o    : parms.h structs.h newsgate.h
                    534: newsout.o      : parms.h structs.h newsgate.h
                    535: newsoutput.o           : parms.h structs.h newsgate.h
                    536: newspath.o     : newsgate.h
                    537: next.o         : parms.h structs.h
                    538: nfabort.o      : parms.h structs.h
                    539: nfaccess.o     : parms.h structs.h
                    540: nfalias.o      : parms.h structs.h net.h
                    541: nfarchive.o    : parms.h structs.h
                    542: nfcomment.o    :
                    543: nfmail.o       : parms.h structs.h
                    544: nfpipe.o       : parms.h structs.h
                    545: nfprint.o      : parms.h structs.h
                    546: nfrcv.o        : parms.h structs.h net.h
                    547: nfsend.o       : parms.h structs.h net.h
                    548: nfstats.o      : parms.h structs.h
                    549: nfxmit.o       : parms.h structs.h net.h
                    550: note.o         : parms.h structs.h
                    551: pagein.o       : parms.h structs.h
                    552: pagemove.o     : parms.h structs.h
                    553: pageout.o      : parms.h structs.h
                    554: parsepath.o    : parms.h structs.h newsgate.h
                    555: pattern.o      : parms.h structs.h
                    556: permit.o       : parms.h structs.h
                    557: perms.o        : parms.h structs.h
                    558: preptxt.o      : parms.h structs.h
                    559: prtind.o       : parms.h structs.h
                    560: readem.o       : parms.h structs.h
                    561: recsio.o       : parms.h structs.h
                    562: resp.o         : parms.h structs.h
                    563: rmnf.o         : parms.h structs.h
                    564: savtxt.o       : parms.h structs.h
                    565: startup.o      : parms.h structs.h
                    566: talkto.o       : parms.h structs.h
                    567: times.o        : parms.h structs.h
                    568: tsearch.o      : parms.h structs.h
                    569: #
                    570: nfdump.o       : parms.h structs.h
                    571: dump.o         : parms.h structs.h dump.h
                    572: nfload.o       : parms.h structs.h
                    573: loadnf.o       : parms.h structs.h dump.h
                    574: parse.o                : dump.h
                    575: loadvars.o     : dump.h
                    576: loadproto1.o   : parms.h structs.h dump.h
                    577: 
                    578: #
                    579: #      this is to make updating the "release" copy easy.
                    580: #
                    581: 
                    582: dist:  $(CFILES) $(HFILES) $(HLPFILES) $(MISCFILES) Revisions
                    583:        ${DCP} $? $(DISTDIR)/src/.
                    584:        touch dist
                    585: 
                    586: Revisions: $(CFILES) $(HFILES) $(MISCFILES)
                    587:        grep "Header:" $(CFILES) $(HFILES) $(MISCFILES) > Revisions
                    588: 
                    589: #
                    590: #      Update the RCS library with this command.
                    591: #      Puts modified files into the RCS libraries with
                    592: #      the version number specified by "RCSID".
                    593: #      Also uses the RCS[IO]FLAGS variables.
                    594: #
                    595: #      since RCS has a bug in that the -l flag does no update the
                    596: #      version number in the copy left available, we check in
                    597: #      the files and then check them out again.
                    598: #
                    599: 
                    600: freeze:        $(CFILES) $(HFILES) $(MISCFILES) $(HLPFILES)
                    601:        ci $(RCSIFLAGS) $?
                    602:        co $(RCSOFLAGS) $?
                    603:        touch freeze
                    604: 
                    605: #      Make printouts of the modified routines
                    606: #
                    607: 
                    608: print: $(MISCFILES) $(HFILES) $(CFILES) $(HLPFILES)
                    609: #      pr -f $? | lpr -b "Notesfile Code"
                    610:        imprint -2 -I -P2 $?
                    611:        touch print
                    612: 
                    613: #      For those using vi, produce a ctags file of the source code.
                    614: #
                    615: 
                    616: tags:  $(CFILES)
                    617:        ctags $(CFILES)
                    618: 
                    619: #
                    620: #      Lint the mess to catch inconsistencies.
                    621: #
                    622: 
                    623: lint:
                    624:        lint -haxc $(CFLAGS) *.c

unix.superglobalmegacorp.com

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