DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: M T

⟦4fc33f305⟧ TextFile

    Length: 7438 (0x1d0e)
    Types: TextFile
    Names: »Makefile«

Derivation

└─⟦9ae75bfbd⟧ Bits:30007242 EUUGD3: Starter Kit
    └─⟦e7f64e0c0⟧ »EurOpenD3/mail/vmh.tar.Z« 
        └─⟦dcb95597f⟧ 
            └─⟦this⟧ »Makefile« 

TextFile

#
# $Header: Makefile,v 1.4 86/02/15 16:02:51 deboor Exp $
#
# $Source: /c/support/deboor/usr/src/local/vmh/RCS/Makefile,v $
#
# Makefile for vmh
#
#

#
# HM is where to put a compiled version of hm and VMH is where to
# put a compiled version of vmh (for testing, or something)
#
HM		= bin/hm
VMH		= bin/vmh

#
# MH files and directories needed
# MH is the location of the MH source nearest you
#
MH		= /c/support/deboor/usr/src/new/mh
MHSUBS		= $(MH)/sbr		# general subroutines
MHSTRINGS	= $(MH)/config/config.o	# default paths/filenames, etc.
#MHZOT		= $(MH)/zotnet		# mail transport or something

#
# General flags and compilation switches
#
# ld flags needed to link in window package
#
WINDOW		= -lcurses$(PSUFF) -ltermcap$(PSUFF)

#
# if LINEFLUSH is defined, stdout is not buffered. If it is not,
#	stdout will be buffered.
# If VMH is to be used with MH version 6, define MH6 to take advantage of
#	various enhancements and certain additions (such as the Unseen-Sequence
#	profile entry).
# 
PF		= -DLINEFLUSH  $(ARPA) -DMH6
LC		= $(WINDOW) $(PF)
#
# default configuration.
#	EDITOR is the editor to use
#	PAGE is the paging program to use
#	HELP is the location of the helpfile
#	AUTHOR is the path to the maintainer of this program.
#
EDITOR		= '-DEDITOR=\"/usr/ucb/vi\"'
PAGE		= '-DPAGE=\"/usr/ucb/page\"'
HELP		= '-DHELPFILE=\"$(DOCDIR)/vmh.helpfile\"'
AUTHOR		= '-DAUTHOR=\"deboor@ucbvax.berkeley.edu\"'
#
# uncomment this if having problems with malloc
# turns on range-checking and printing of malloc stats on abort()
#MALLOC		= -DRCHECK -DDEBUG -DMSTATS

PATHS		= $(EDITOR) $(PAGE) $(HELP) $(AUTHOR)
#
# flags to CC to be given all the time. Version-specific flags
# are given in special recursive make targets. Sad but true.
#
CCFLAGS		= $(PF) $(PATHS) $(MALLOC) $(PROF)

YFLAGS		= -v

CIFLAGS		=
COFLAGS		=
#
# LIB is the directory in which the library with improved curses
#	input routines (wgetch) and micro-sleep/alarm functions are to be found.
#	(in -lvmh)
LIB		= lib
#
# LINTLIB be where all the lint libraries are stored. Amazing how these things
# work, isn't it?
#
LINTLIB		= lint
#
# paths to all the libraries used
#
LIBDIRS		= -L$(LIB) -L$(MHSUBS) -L.
#
# libraries (not including window package) used.
#
LIBS		= -lvmh$(PSUFF) $(MHSTRINGS) -lmh$(PSUFF) #-lzot

#
# other directories in which to search for dependencies
#
#VPATH		= .:RCS

#
# For installation. DESTDIR is where vmh goes, DOCDIR is where the helpfile goes
#
DESTDIR		= $$HOME/bin
DOCDIR		= /usr/local/lib

#
# VMH files, object and source and headers
#
OBJS		= allocate.o args.o clock.o cmds.o cmds.cursor.o\
			cmds.misc.o cmds.msg.o cmds.pick.o cmds.stack.o\
			context.o empty.o fempty.o fldr.o info.o infostuff.o\
			infosub.o init.o mark.o move.o msgs.o mysystem.o\
			mywget.o newmail.o pager.o parsesbr.o path.o picksbr.o\
			popen.o rdconfig.o rdprofile.o scroll.o searchsbr.o\
			sequence.o status.o switches.o typeit.o uleq.o vmh.o

CFILES		= allocate.c clock.c cmds.c cmds.cursor.c cmds.misc.c\
			cmds.msg.c cmds.pick.c cmds.stack.c context.c empty.c\
			fempty.c fldr.c info.c infostuff.c infosub.c\
			init.c mark.c move.c msgs.c mysystem.c mywget.c\
			newmail.c pager.c parsesbr.c path.c picksbr.c popen.c\
			rdconfig.c rdprofile.c scroll.c searchsbr.c sequence.c\
			status.c switches.c typeit.c uleq.c vmh.c

YFILES		= args.y

HS		= c_env.h vmh.h mh.h casts.h pick.h

SRCS		= $(CFILES) $(YFILES) $(HS)

#
# default action is to co any file it can't find
#
.DEFAULT	: 
		co $(COFLAGS) $<

.SUFFIXES	: .h 

#
# Transformation Rules
#

.y.o		:
			$(YACC) $(YFLAGS) $<
			rm -f $@
			$(CC) $(CFLAGS) $(INCDIRS) -c y.tab.c
			mv y.tab.o $@
			rm y.tab.c
			-mv y.output $*.output

.c.o		:
			rm -f $@
			$(CC) $(CFLAGS) $(INCDIRS) -c $<

#
# Make Rules
#
# vmh is a final version, pvmh is a profiled one and hm is a debug version.
# note that if some of the .o files were made by a previous make using a
# different target, the final program may do weird things. In such a case,
# one of the three targets after this should be made instead.
#
#
vmh		: 
			$(MAKE) "CFLAGS=$(CCFLAGS) -O" $(MFLAGS) $(VMH)
pvmh		:
			make "CFLAGS=$(CCFLAGS) -pg" "PSUFF=_p" $(MFLAGS) $(VMH)
hm		:
			make "CFLAGS=$(CCFLAGS) -DDEBUG -g" $(MFLAGS) $(HM)

#
# Targets for making real versions. These will take a while since they remove
# all the object files first, but it's necessary to avoid getting debug
# objects and regular ones mixed.
#
prod		: clean vmh install
debug		: clean hm lint
prof		: clean pvmh 

all		: debug 
			bin/makeversion -
			rm version.c
			make $(MFLAGS) prod

lint		: FLUFF

$(VMH)		: $(OBJS) bin/makeversion
			bin/makeversion +
			$(CC) $(CFLAGS) $(OBJS) version.o -o $(VMH) \
				$(LIBDIRS) $(LIBS) $(WINDOW)
			rm version.c version.o

$(HM)		: $(OBJS) bin/makeversion
			bin/makeversion +
			$(CC) $(CFLAGS) $(OBJS) version.o -o $(HM) \
				$(LIBDIRS) $(LIBS) $(WINDOW)
			rm version.c version.o

install		: vmh
			(cd doc; make install)
			install -c -s -m 755 $(VMH) $(DESTDIR)/vmh
			-rm -f $(DESTDIR)/vmhup
			ln -s $(DESTDIR)/vmh $(DESTDIR)/vmhup

depend		: $(SRCS)
			sed -e '/^#----CUT HERE----$$/,$$d' < Makefile \
				> /tmp/Makefile
			echo '#----CUT HERE----' >> /tmp/Makefile
			$(CC) -M $(CCFLAGS) $(INCDIRS) $(CFILES) | \
				sed -e 's%\./%%' | \
				bin/makedep \
				>> /tmp/Makefile
			mv /tmp/Makefile Makefile

co		: 
			co -q $(COFLAGS) $(SRCS)
			chmod 640 $(SRCS)

ci		:
			ci $(CIFLAGS) $(SRCS)

print		:
			pr -f $(SRCS) | lpr $(PRINTER)
tags		:
			ctags -tw $(SRCS)
clean		:
			rm -f *.o errs 

FLUFF		: $(CFILES) $(HS)
			lint -bzh $(LINTLIB)/llib-lvmh.ln \
			$(MH)/sbr/llib-lmh.ln \
			$(CCFLAGS) $(INCDIRS) \
			$(LINTLIB)/llib-ltermcap.ln -lcurses \
			$(CFILES) $(MH)/config/llib-lconfig.ln > FLUFF

tar		: $(SRCS)
			tar -cvfh vmh.tar Makefile $(SRCS) \
				READ_ME SAVE TODO aux bin doc/helpfile.ms \
				doc/vmh.1 doc/Makefile include \
				lib $(LINTLIB) tags version

bin/makeversion: aux/makeversion.c
			$(CC) -O aux/makeversion.c -o bin/makeversion

#
# Do Not Remove This (vvvvvvvv) Line
#----CUT HERE----

allocate.o:	 vmh.h mh.h c_env.h casts.h
clock.o:	 vmh.h mh.h c_env.h casts.h
cmds.o:	 vmh.h mh.h c_env.h casts.h
cmds.cursor.o:	 vmh.h mh.h c_env.h casts.h
cmds.misc.o:	 vmh.h mh.h c_env.h casts.h
cmds.msg.o:	 vmh.h mh.h c_env.h casts.h
cmds.pick.o:	 vmh.h mh.h c_env.h casts.h pick.h
cmds.stack.o:	 vmh.h mh.h c_env.h casts.h
context.o:	 vmh.h mh.h c_env.h casts.h
empty.o:	 vmh.h mh.h c_env.h casts.h
fempty.o:	
fldr.o:	 vmh.h mh.h c_env.h casts.h
info.o:	 vmh.h mh.h c_env.h casts.h
infostuff.o:	 vmh.h mh.h c_env.h casts.h
infosub.o:	 vmh.h mh.h c_env.h casts.h
init.o:	 vmh.h mh.h c_env.h casts.h
mark.o:	 vmh.h mh.h c_env.h casts.h
move.o:	 vmh.h mh.h c_env.h casts.h
msgs.o:	 vmh.h mh.h c_env.h casts.h
mysystem.o:	 vmh.h mh.h c_env.h casts.h
mywget.o:	 vmh.h mh.h c_env.h casts.h
newmail.o:	 vmh.h mh.h c_env.h casts.h
pager.o:	 vmh.h mh.h c_env.h casts.h
parsesbr.o:	 vmh.h mh.h c_env.h casts.h pick.h
path.o:	 vmh.h mh.h c_env.h casts.h
picksbr.o:	 vmh.h mh.h c_env.h casts.h pick.h
popen.o:	
rdconfig.o:	 vmh.h mh.h c_env.h casts.h
rdprofile.o:	 vmh.h mh.h c_env.h casts.h
scroll.o:	 vmh.h mh.h c_env.h casts.h
searchsbr.o:	 vmh.h mh.h c_env.h casts.h pick.h
sequence.o:	 vmh.h mh.h c_env.h casts.h
status.o:	 vmh.h mh.h c_env.h casts.h
switches.o:	 vmh.h mh.h c_env.h casts.h
typeit.o:	 vmh.h mh.h c_env.h casts.h
uleq.o:	
vmh.o:	 vmh.h mh.h c_env.h casts.h