2.9BSD/usr/contrib/notes/Ovmakefile
# 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