# Makefile for University of Illinois Notesfiles - release 1.0 # May 9, 1982 # # Ray Essick # 214 DCL # University of Illinois at Urbana-Champaign # 1304 W. Springfield # Urbana, Illinois 61801 # 217-333-7937 # # Modified by # # Rick L Spickelmier # UC Berkeley # 321A Cory Hall # Berkeley, CA 94704 # ...!ucbvax!ucbcad!ricks # ucbcad.ricks@berkeley # # Lou Salkind # New York University # 251 Mercer Street # NYC, NY 10012 # salkind@NYU DESTDIR= MSTDIR=/usr/spool/notes ARCHDIR=/usr/spool/oldnotes NET=/usr/new/lib/notes NOTESGRP=daemon CFLAGS=-O -I/usr/src/ucb/libndir -V $(FP) AUTOSEQ=autoseq NOTES=notes CC=cc FP= # -f for machines without floating point CRT=/lib/crt0.o # /lib/fcrt0.o if no floating point unit LFLAGS=-n LIBS= -lovtermcap /usr/src/ucb/libndir/libovndir.a # # The following probably don't need to be modified # UTILITY=$(MSTDIR)/.utilities SEQUENCER=$(MSTDIR)/.sequencer LOCKS=$(MSTDIR)/.locks ALIASES=$(UTILITY)/net.aliases UNIQID=$(MSTDIR)/.SEQ # network bin: user network utility @echo notesfile binaries up-to-date touch bin user: main nfpipe nfprint nfstats checknotes touch user network: nfxmit nfrcv touch network utility: mknf rmnf newsinput bnewsinput newsoutput nfarchive touch utility # make base should only be run once! # This set of commands sets up the required files down in the # binary directories. It's main purpose is to do the several # installation commands that might just have to be super-user. all: bin touch all clean: -rm -f all install bin user network utility base spool -rm -f placeuser placenet placedoc placeutil placebin -rm -f *.o -rm -f main nfpipe nfprint nfstats checknotes prepass nfxmit nfrcv -rm -f mknf rmnf newsinput bnewsinput newsoutput nfarchive @echo binaries and objects removed xclean: -rm -f $(DESTDIR)/usr/new/{notes,nfprint,nfstats,nfpipe} -rm -rf $(MSTDIR) $(ARCHDIR) -rm -rf $(NET) @echo notesfile system cleaned up base: mkdir $(MSTDIR) $(ARCHDIR) $(NET) -chown $(NOTES) $(MSTDIR) $(ARCHDIR) $(NET) -chgrp $(NOTESGRP) $(MSTDIR) $(ARCHDIR) $(NET) echo > $(DESTDIR)/usr/new/notes ln $(DESTDIR)/usr/new/notes $(DESTDIR)/usr/new/$(AUTOSEQ) echo > $(DESTDIR)/usr/new/nfprint echo > $(DESTDIR)/usr/new/nfstats echo > $(DESTDIR)/usr/new/nfpipe -chown $(NOTES) $(DESTDIR)/usr/new/notes $(DESTDIR)/usr/new/nfprint $(DESTDIR)/usr/new/nfstats $(DESTDIR)/usr/new/nfpipe -chgrp $(NOTESGRP) $(DESTDIR)/usr/new/notes $(DESTDIR)/usr/new/nfprint $(DESTDIR)/usr/new/nfstats $(DESTDIR)/usr/new/nfpipe echo > $(NET)/nfxmit echo > $(NET)/nfrcv -chown $(NOTES) $(NET)/nfxmit $(NET)/nfrcv -chgrp $(NOTESGRP) $(NET)/nfxmit $(NET)/nfrcv touch base @echo base generation done boot: spool install # make gripe file $(UTILITY)/mknf -ao nfgripes $(UTILITY)/mknf -o nfmaint @echo notefile system booted spool: mkdir $(UTILITY) $(SEQUENCER) $(LOCKS) $(ALIASES) chmod 755 $(UTILITY) $(SEQUENCER) $(LOCKS) $(ALIASES) chmod 777 $(MSTDIR) # for automatic notesfile generation by newsinput echo 1 > $(UNIQID) chmod 600 $(UNIQID) # generate the available notesfile file here - only once! echo "available notesfiles" > $(UTILITY)/avail.notes chmod 644 $(UTILITY)/avail.notes touch spool @echo ------ spool files ready install: placedoc placebin touch install @echo notefiles installed placedoc: access.help dir.help index.help lim.help read.help cp access.help $(UTILITY)/access.help cp dir.help $(UTILITY)/dir.help cp index.help $(UTILITY)/index.help cp lim.help $(UTILITY)/lim.help cp read.help $(UTILITY)/read.help chmod 644 $(UTILITY)/access.help $(UTILITY)/dir.help \ $(UTILITY)/index.help $(UTILITY)/lim.help $(UTILITY)/read.help @echo ------ doc installation done touch placedoc # network placebin: placeuser placenet placeutil @echo notesfile binaries installed touch placebin placeuser: user cp main $(DESTDIR)/usr/new/notes cp nfpipe $(DESTDIR)/usr/new/nfpipe cp nfstats $(DESTDIR)/usr/new/nfstats cp nfprint $(DESTDIR)/usr/new/nfprint cp checknotes $(DESTDIR)/usr/new/checknotes chmod 4711 $(DESTDIR)/usr/new/notes $(DESTDIR)/usr/new/nfstats $(DESTDIR)/usr/new/nfpipe chmod 4711 $(DESTDIR)/usr/new/nfprint $(DESTDIR)/usr/new/checknotes touch placeuser placenet: network cp nfxmit $(NET)/nfxmit cp nfrcv $(NET)/nfrcv chmod 4711 $(NET)/nfxmit $(NET)/nfrcv touch placenet placeutil: utility cp mknf $(UTILITY)/mknf cp rmnf $(UTILITY)/rmnf cp newsinput $(UTILITY)/newsinput cp bnewsinput $(UTILITY)/bnewsinput cp newsoutput $(UTILITY)/newsoutput cp nfarchive $(UTILITY)/nfarchive chmod 4710 $(UTILITY)/mknf $(UTILITY)/rmnf chmod 4711 $(UTILITY)/newsinput $(UTILITY)/bnewsinput $(UTILITY)/nfarchive $(UTILITY)/newsoutput touch placeutil # # User programs # main: main.o \ control.o \ index.o \ dropt.o \ access.o \ compress.o \ delete.o \ gdate.o \ pattern.o \ readem.o \ adnote.o \ adresp.o \ dsply.o \ gtext.o \ limindx.o \ asearch.o \ help.o \ mailit.o \ next.o \ lrsp.o \ note.o \ pagein.o \ permit.o \ prtind.o \ resp.o \ savtxt.o \ preptxt.o \ pageout.o \ talkto.o \ times.o \ tsearch.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ strsave.o \ expand.o \ pipeopen.o \ miscio.o @echo loading main ld -X $(LFLAGS) -o main $(CRT) \ -Z \ access.o \ adnote.o \ adresp.o \ asearch.o \ check.o \ compress.o \ control.o \ cursor.o \ delete.o \ dropt.o \ dsply.o \ expand.o \ -Z \ gdate.o \ gname.o \ gtext.o \ gtime.o \ help.o \ index.o \ limindx.o \ lrsp.o \ mailit.o \ main.o \ misc.o \ miscio.o \ -lovtermcap \ -Z \ next.o \ note.o \ pagein.o \ pageout.o \ pattern.o \ permit.o \ perms.o \ pipeopen.o \ preptxt.o \ prtind.o \ readem.o \ recsio.o \ resp.o \ savtxt.o \ strsave.o \ talkto.o \ times.o \ tsearch.o \ /usr/src/ucb/libndir/libovndir.a \ -L -lovc prepass: prepass.o \ check.o \ pattern.o \ strsave.o @echo loading prepass @cc $(CFLAGS) $(LFLAGS) -o prepass \ prepass.o \ check.o \ pattern.o \ strsave.o \ $(LIBS) nfpipe: nfpipe.o \ note.o \ pagein.o \ permit.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ cursor.o \ miscio.o \ misc.o @echo loading nfpipe @cc $(CFLAGS) $(LFLAGS) -o nfpipe \ nfpipe.o \ note.o \ pagein.o \ permit.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ cursor.o \ miscio.o \ $(LIBS) nfstats: nfstats.o \ pattern.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ expand.o \ strsave.o \ miscio.o @echo loading nfstats @cc $(CFLAGS) $(LFLAGS) -o nfstats \ nfstats.o \ pattern.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ expand.o \ strsave.o \ $(LIBS) nfprint: nfprint.o \ lprnote.o \ lrsp.o \ permit.o \ pageout.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o @echo loading nfprint @cc $(CFLAGS) $(LFLAGS) -o nfprint \ nfprint.o \ lprnote.o \ lrsp.o \ permit.o \ pageout.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ $(LIBS) checknotes: checknotes.o \ permit.o \ times.o \ pattern.o \ next.o \ lrsp.o \ recsio.o \ perms.o \ gname.o \ check.o \ gtime.o \ misc.o \ strsave.o \ expand.o \ miscio.o \ cursor.o @echo loading checknotes @cc $(CFLAGS) $(LFLAGS) -o checknotes \ checknotes.o \ permit.o \ times.o \ pattern.o \ next.o \ lrsp.o \ recsio.o \ perms.o \ gname.o \ check.o \ gtime.o \ misc.o \ strsave.o \ miscio.o \ expand.o \ cursor.o \ $(LIBS) # # Network Transmission and reception # nfxmit: nfxmit.o \ getnet.o \ nfalias.o \ nfsend.o \ dmpnote.o \ dmpresp.o \ pattern.o \ next.o \ lrsp.o \ permit.o \ pageout.o \ times.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ expand.o \ strsave.o \ miscio.o @echo loading nfxmit @cc $(CFLAGS) $(LFLAGS) -o nfxmit \ nfxmit.o \ getnet.o \ nfalias.o \ nfsend.o \ dmpnote.o \ dmpresp.o \ pattern.o \ next.o \ lrsp.o \ permit.o \ pageout.o \ times.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ expand.o \ strsave.o \ $(LIBS) nfbatch:nfbatch.o \ getnet.o \ nfalias.o \ nfsend.o \ dmpnote.o \ dmpresp.o \ pattern.o \ next.o \ lrsp.o \ permit.o \ pageout.o \ times.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ expand.o \ strsave.o \ miscio.o @echo loading nfbatch @cc $(CFLAGS) $(LFLAGS) -o nfbatch \ nfbatch.o \ getnet.o \ nfalias.o \ nfsend.o \ dmpnote.o \ dmpresp.o \ pattern.o \ next.o \ lrsp.o \ permit.o \ pageout.o \ times.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ expand.o \ strsave.o \ $(LIBS) nfrcv: nfrcv.o \ loadem.o \ find.o \ ldmisc.o \ lrsp.o \ note.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ nfcomment.o \ miscio.o @echo loading nfrcv @cc $(CFLAGS) $(LFLAGS) -o nfrcv \ nfrcv.o \ loadem.o \ find.o \ ldmisc.o \ lrsp.o \ note.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ nfcomment.o \ $(LIBS) nfrec: nfrec.o \ loadem.o \ find.o \ ldmisc.o \ lrsp.o \ note.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ nfcomment.o \ miscio.o @echo loading nfrec @cc $(CFLAGS) $(LFLAGS) -o nfrec \ nfrec.o \ loadem.o \ find.o \ ldmisc.o \ lrsp.o \ note.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ nfcomment.o \ $(LIBS) # # Utility programs - create/delete notesfiles, news gateways, # and archiving # mknf: mknf.o \ check.o \ gname.o \ gtime.o \ misc.o \ cursor.o \ miscio.o @echo loading mknf @cc $(CFLAGS) $(LFLAGS) -o mknf \ mknf.o \ check.o \ gname.o \ gtime.o \ misc.o \ cursor.o \ miscio.o \ $(LIBS) rmnf: rmnf.o \ check.o \ misc.o \ cursor.o \ miscio.o @echo loading rmnf @cc $(CFLAGS) $(LFLAGS) -o rmnf \ rmnf.o \ check.o \ misc.o \ cursor.o \ miscio.o \ $(LIBS) newsinput: newsinput.o \ datein.o \ find.o \ newsgroup.o \ lrsp.o \ note.o \ pagein.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ nfcomment.o \ miscio.o \ tsearch.o @echo loading newsinput @cc $(CFLAGS) $(LFLAGS) -o newsinput \ newsinput.o \ datein.o \ find.o \ newsgroup.o \ lrsp.o \ note.o \ pagein.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ nfcomment.o \ miscio.o \ tsearch.o \ $(LIBS) bnewsinput: bnewsinput.o\ datein.o \ find.o \ newsgroup.o \ lrsp.o \ note.o \ pagein.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ nfcomment.o \ bnews.o \ newsfuncs.o \ miscio.o \ tsearch.o @echo loading bnewsinput @cc $(CFLAGS) $(LFLAGS) -o bnewsinput \ bnewsinput.o \ datein.o \ find.o \ newsgroup.o \ lrsp.o \ note.o \ pagein.o \ permit.o \ resp.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ nfcomment.o \ miscio.o \ bnews.o \ newsfuncs.o \ tsearch.o \ $(LIBS) newsoutput: newsoutput.o\ newsout.o \ newsdump.o \ newsgroup.o \ pattern.o \ next.o \ lrsp.o \ pageout.o \ times.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ expand.o \ strsave.o \ miscio.o @echo loading newsoutput @cc $(CFLAGS) $(LFLAGS) -o newsoutput \ newsoutput.o \ newsout.o \ newsdump.o \ newsgroup.o \ pattern.o \ next.o \ lrsp.o \ pageout.o \ times.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ expand.o \ strsave.o \ $(LIBS) nfarchive: nfarchive.o \ archiver.o \ compress.o \ dmpnote.o \ dmpresp.o \ pattern.o \ next.o \ lrsp.o \ note.o \ pagein.o \ permit.o \ resp.o \ pageout.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ expand.o \ strsave.o \ nfcomment.o \ miscio.o @echo loading nfarchive @cc $(CFLAGS) $(LFLAGS) -o nfarchive \ nfarchive.o \ archiver.o \ compress.o \ dmpnote.o \ dmpresp.o \ pattern.o \ next.o \ lrsp.o \ note.o \ pagein.o \ permit.o \ resp.o \ pageout.o \ cursor.o \ recsio.o \ check.o \ gname.o \ gtime.o \ perms.o \ misc.o \ miscio.o \ expand.o \ nfcomment.o \ strsave.o \ $(LIBS) # # User subroutines # subs: nfcomment.o ar r libnfcom.a nfcomment.o @echo "Remember to place libnfcom.a in /usr/lib" touch subs # dependencies access.o : parms.h structs.h adnote.o : parms.h structs.h adresp.o : parms.h structs.h archiver.o : parms.h structs.h asearch.o : parms.h structs.h bnews.o: parms.h structs.h newsgate.h bnewsinput.o : parms.h structs.h globs.h newsgate.h main.i check.o : parms.h structs.h checknotes.o : parms.h structs.h globs.h main.i compress.o : parms.h structs.h control.o : parms.h structs.h cursor.o : parms.h structs.h datein.o : parms.h structs.h delete.o : parms.h structs.h dmpnote.o : parms.h structs.h dmpresp.o : parms.h structs.h dropt.o : parms.h structs.h dsply.o : parms.h structs.h find.o : parms.h structs.h gdate.o : parms.h structs.h strsave.o : getnet.o : parms.h structs.h net.h gname.o : parms.h structs.h gtext.o : parms.h structs.h gtime.o : parms.h structs.h help.o : parms.h structs.h index.o : parms.h structs.h newsgate.h ldmisc.o : parms.h structs.h limindx.o : parms.h structs.h loadem.o : parms.h structs.h lprnote.o : parms.h structs.h lrsp.o : parms.h structs.h mailit.o : parms.h structs.h main.o : parms.h structs.h globs.h main.i misc.o : parms.h structs.h miscio.o : parms.h structs.h mknf.o : parms.h structs.h globs.h main.i nameparse.o : newsdump.o : parms.h structs.h newsgate.h newsgroup.o : parms.h structs.h newsgate.h newsinput.o : parms.h structs.h globs.h newsgate.h main.i newsout.o : parms.h structs.h newsgate.h newsoutput.o : parms.h structs.h globs.h newsgate.h main.i next.o : parms.h structs.h nfalias.o : parms.h structs.h net.h nfarchive.o : parms.h structs.h globs.h main.i nfcomment.o : parms.h structs.h nfpipe.o : parms.h structs.h globs.h main.i nfprint.o : parms.h structs.h globs.h main.i nfrcv.o : parms.h structs.h net.h globs.h main.i nfrec.o : parms.h structs.h net.h globs.h main.i nfsend.o : parms.h structs.h nfstats.o : parms.h structs.h globs.h main.i nfxmit.o : parms.h structs.h net.h globs.h main.i nfbatch.o : parms.h structs.h net.h globs.h main.i note.o : parms.h structs.h pagein.o : parms.h structs.h pageout.o : parms.h structs.h pattern.o : parms.h structs.h permit.o : parms.h structs.h perms.o : parms.h structs.h prepass.o : preptxt.o : parms.h structs.h prtind.o : parms.h structs.h readem.o : parms.h structs.h newsgate.h recsio.o : parms.h structs.h resp.o : parms.h structs.h rmnf.o : parms.h structs.h globs.h main.i savtxt.o : parms.h structs.h strsave.o : talkto.o : parms.h structs.h times.o : parms.h structs.h tsearch.o : parms.h structs.h canon.h : doc.h : globs.h : net.h : newsgate.h : parms.h : structs.h : # end of dependencies