head     38.13;
branch   ;
access   ;
symbols  V40_5:38.13 V40_4:38.13 V40_3:38.13 V40_2:38.13 V40_1:38.13 V39_56:38.12 V39_54:38.11 V39_52:38.11 V39_51:38.10 V39_50:38.10 V39_48:38.9 V39_46:38.9 V39_45:38.9 V39_44:38.9 V39_43:38.9 V39_42:38.9 V39_41:38.9 V39_40:38.9 V39_39:38.9 V39_38:38.9 V39_37:38.9 V39_36:38.9 V39_35:38.9 V39_34:38.9 V39_33:38.9 V39_32:38.9 V39_30:38.9 V39_29:38.9 V39_27:38.8 V39_26:38.8 V39_25:38.7 V39_23:38.7 V39_22:38.7 V39_21:38.7 V39_20:38.7 V39_18:38.6 V39_17:38.6 V39_16:38.5 V39_15:38.5 V39_14:38.5 V39_12:38.5 V39_10:38.5 V39_9:38.5 V39_8:38.5 V39_7:38.5 V39_6:38.5 V39_5:38.4 V39_4:38.4 V39_3:38.2;
locks    ; strict;
comment  @# @;


38.13
date     93.02.09.15.49.44;  author mks;  state Exp;
branches ;
next     38.12;

38.12
date     93.02.04.11.02.56;  author mks;  state Exp;
branches ;
next     38.11;

38.11
date     92.12.15.11.36.07;  author mks;  state Exp;
branches ;
next     38.10;

38.10
date     92.11.11.11.14.57;  author mks;  state Exp;
branches ;
next     38.9;

38.9
date     92.05.30.17.29.51;  author mks;  state Exp;
branches ;
next     38.8;

38.8
date     92.05.14.17.14.36;  author mks;  state Exp;
branches ;
next     38.7;

38.7
date     92.04.14.12.17.22;  author mks;  state Exp;
branches ;
next     38.6;

38.6
date     92.03.19.09.22.03;  author mks;  state Exp;
branches ;
next     38.5;

38.5
date     92.01.07.13.58.58;  author mks;  state Exp;
branches ;
next     38.4;

38.4
date     91.11.13.11.03.35;  author mks;  state Exp;
branches ;
next     38.3;

38.3
date     91.11.13.10.35.54;  author mks;  state Exp;
branches ;
next     38.2;

38.2
date     91.08.27.16.22.59;  author mks;  state Exp;
branches ;
next     38.1;

38.1
date     91.06.24.11.36.56;  author mks;  state Exp;
branches ;
next     ;


desc
@Initial V38 tree checkin
@


38.13
log
@Now builds as V40
@
text
@#
# lmkfile for workbench.library
#

#
# Server directory for the data...
#
REMOTE = V:src/kickstart/wb
VERSION= 40

#
# Name of the module
#
MODNAME	= wb

#
# The ".LD" file we want to produce.
#
LD_FILE	= $(MODNAME).ld
LD_STRIP= $(MODNAME).ld.strip

#
# Compiler, assembler, and linker
#
CC = lc
AS = hx68 -a
LN = blink

#
# Compiler flags...
#
CFLAGS	= -b0 -v -mes -cistqm -d1 -O -q -j*e -. -dUSE_STUBS

#
# Assembler flags...  NOTE how they are used below...
#
AFLAGS	= -csq -i include: -o

#
# Linker flags
#
LFLAGS		= SMALLCODE SMALLDATA MAP $(MODNAME).map HLSXF PLAIN SWIDTH 16
LFLAGS_STRIP	= ND

#
# System libraries
#
LIBS= LIB:ROM.lib endcode.lib LIB:debug.lib

#
# My headers...
#
MY_HDR	=	wbinternal.h workbench.h

#
# My C source...
#
MY_C	=	diskchange.c \
diskin.c \
drawers.c \
errcalls.c \
fileops.c \
icons.c \
incoming.c \
init.c \
ioloop.c \
main.c \
matrix.c \
menus.c \
objectio.c \
placeicon.c \
recurse.c \
requesters.c \
runtool.c \
timer.c \
windows.c \
gels.c \
app.c \
startup.c \
iconlib.c \
viewbytext.c \
debug.c \
cstrings.c \
infomisc.c \
infowindow.c \
infoevent.c \
infoio.c \
executewindow.c \
copy.c \
backdrop.c \
backfill.c \
update.c

#
# My Assebly source...
#
MY_A	=	vers.asm \
abs.asm \
kprintf.asm \
alists.asm \
stubs.asm \
quotes.asm \
drawbox.asm \
coolfill.asm \
wb_lib.asm

#
# My object files...
#
MY_OBJS	=	vers.o \
abs.o \
alists.o \
errcalls.o \
recurse.o \
copy.o \
fileops.o \
icons.o \
drawers.o \
incoming.o \
ioloop.o \
main.o \
matrix.o \
init.o \
menus.o \
objectio.o \
stubs.o \
placeicon.o \
requesters.o \
runtool.o \
timer.o \
backfill.o \
windows.o \
update.o \
diskin.o \
diskchange.o \
drawbox.o \
gels.o \
app.o \
startup.o \
iconlib.o \
viewbytext.o \
cstrings.o \
backdrop.o \
executewindow.o \
infowindow.o \
infomisc.o \
infoio.o \
infoevent.o \
coolfill.o \
quotes.o

#
# My library objects...
#
MY_LIB_OBJS = wb_lib.o \
kprintf.o \
debug.o \
endcode.o

#
# My library files...
#
MY_LIBS	= endcode.lib

#
# Build the stripped LD file...
#
$(LD_STRIP):	$(LD_FILE)
	$(LN) FROM $(LD_FILE) TO $(LD_STRIP) $(LFLAGS_STRIP)

#
# Build the LD file...
#
$(LD_FILE):	$(MY_OBJS) $(MY_LIBS) lmkfile
	$(LN) <with <
FROM $(MY_OBJS)
TO $(LD_FILE)
LIB $(MY_LIBS) $(LIBS)
$(LFLAGS)
<

#
# build my libraries
#
$(MY_LIBS):	$(MY_LIB_OBJS)
	oml $(MY_LIBS) r $(MY_LIB_OBJS)


#
# Default rules...
#
.c.o:
	$(CC) $(CFLAGS) $*.c

.asm.o:
	$(AS) $*.asm $(AFLAGS) $*.o

#
# Specific dependancies...
#
vers.o:	vers.asm $(MODNAME)_rev.i

debug.o:	debug.c  $(HEADER)
	$(CC) $(CFLAGS) -dDEBUGGING -dALLOCDEBUG -dLOCKDEBUG -dMAXDEBUG debug.c

#
# Bump the version...
#
version:
	@@bumprev $(VERSION) $(MODNAME)_rev

$(MODNAME)_rev.i:
	@@bumprev $(VERSION) $(MODNAME)_rev

$(MODNAME)_rev.h:
	@@bumprev $(VERSION) $(MODNAME)_rev

$(MODNAME)_rev.rev:
	@@bumprev $(VERSION) $(MODNAME)_rev

#
# Release the current build to the server
#
internal:
	@@delete $(REMOTE)/((\#?.(c|h|asm|i|ld|ld.strip|rev|doc|sfd))|makefile|lmkfile)
	@@protect ((\#?.(c|h|asm|i|ld|ld.strip|rev|doc|sfd))|makefile|lmkfile) +r quiet
	@@copy ((\#?.(c|h|asm|i|ld|ld.strip|rev|doc|sfd))|makefile|lmkfile) $(REMOTE)
	@@copy \#?.doc V:doc NOPRO
	@@copy \#?.sfd V:lib/sfd NOPRO

#
# Blow away all files that would need to be rebuilt
#
clean:
	@@delete \#?.(o|ld|doc|ld.strip|map)

#
# Make the AutoDocs
#
doc:	$(MODNAME).doc

$(MODNAME).doc:	$(MY_C) $(MY_A)
	@@Echo "Making $(MODNAME).doc"
	@@Join $(MY_C) $(MY_A) as T:$(MODNAME).tmp.doc
	@@AutoDoc >$(MODNAME).doc T:$(MODNAME).tmp.doc
	@@Delete T:$(MODNAME).tmp.doc QUIET
	@@Protect $(MODNAME).doc rwd

#
# Make a complete new release (This still is in testing...)
#
release:
	lmk clean
	lmk version
	lmk doc
	lmk $(LD_FILE)
	lmk $(LD_STRIP)
	lmk internal

#
# The following rule is to bring the source down to the local directory
# To do the following you should copy this LMKfile to the local directory
# and make sure it is readable.  Then type MAKE ToLocal to have the
# code copied down...
#
tolocal:
	@@protect \#? rwed QUIET
	@@copy $(REMOTE)/\#? ""
	@@protect \#? +r QUIET
	@@protect \#?_rev\#? rwd QUIET
	@@Echo "Local is updated..."
@


38.12
log
@Removed two files which no longer are used...
@
text
@d9 1
a9 1
VERSION= 39
@


38.11
log
@Removed silly AddSYM keyword (non-keyword)
@
text
@a83 2
inforender.c \
infoinit.c \
a145 1
inforender.o \
a147 1
infoinit.o \
@


38.10
log
@One source file has gone away...
@
text
@d42 1
a42 1
LFLAGS		= ADDSYM SMALLCODE SMALLDATA MAP $(MODNAME).map HLSXF PLAIN SWIDTH 16
@


38.9
log
@New order to make workbench smaller again...
@
text
@a90 1
executerender.c \
a146 1
executerender.o \
@


38.8
log
@Removed reference to SAS link library.  No longer uses it.
@
text
@a115 2
diskchange.o \
diskin.o \
d117 1
d128 1
a129 1
objectio.o \
a130 1
recurse.o \
d134 1
d137 2
d147 3
a153 1
infowindow.o \
a154 3
executewindow.o \
executerender.o \
backfill.o \
d180 1
a180 1
$(LD_FILE):	$(MY_OBJS) $(MY_LIBS)
@


38.7
log
@Removed global.c
@
text
@d48 1
a48 1
LIBS= LIB:ROM.lib LIB:lcnb.lib endcode.lib LIB:debug.lib
@


38.6
log
@Changed the assembler I am using and the options a bit
@
text
@a62 1
global.c \
a120 1
global.o \
@


38.5
log
@Now, support for the new preferences setup
@
text
@d26 1
a26 1
AS = casm -a
d32 1
a32 1
CFLAGS	= -b0 -v -mes -cistqm -d1 -O -q -j*e -dUSE_STUBS
d37 1
a37 1
AFLAGS	= -csyq -i include: -o
@


38.4
log
@Updated the lmkfile a bit for make version support
@
text
@a103 1
syscalls.asm \
d108 1
a116 1
syscalls.o \
d147 2
a149 1
inforender.o \
a155 1
backdrop.o \
d157 1
@


38.3
log
@Updated makefile to match my other make files
@
text
@d209 2
d218 9
@


38.2
log
@Changed to make V39...
@
text
@d2 1
a2 1
# $Id: lmkfile,v 38.1 91/06/24 11:36:56 mks Exp Locker: mks $
a3 126
# $Log:	lmkfile,v $
# Revision 38.1  91/06/24  11:36:56  mks
# Initial V38 tree checkin - Log file stripped
#
###############################################################################

# These are the base flags
CBASEFLAGS = -b0 -v -me -ms -cqims -d1 -dUSE_STUBS

# These CFLAGS are for normal compiling:
CFLAGS = $(CBASEFLAGS)

# These CFLAGS are for max debugging: (minus Lock and Alloc debugging)
#CFLAGS = $(CBASEFLAGS) -dMAXDEBUG -dDEBUGGING

# These CFLAGS are for full debugging: (minus Lock and Alloc debugging)
#CFLAGS = $(CBASEFLAGS) -dDEBUGGING

# These CFLAGS are for full debugging: (minus Lock debugging)
#CFLAGS = $(CBASEFLAGS) -dDEBUGGING -dALLOCDEBUG

# These CFLAGS are for full debugging:
#CFLAGS = $(CBASEFLAGS) -dDEBUGGING -dALLOCDEBUG -dLOCKDEBUG

# These are all the object files resulting from C code.
# Note that we have a specific dependency line for each at the end of
# this makefile.
COFILES=	diskchange.o	\
		diskin.o	\
		errcalls.o	\
		copy.o		\
		fileops.o	\
		global.o	\
		icons.o		\
		drawers.o	\
		incoming.o	\
		ioloop.o	\
		main.o		\
		matrix.o	\
		init.o		\
		menus.o		\
		stubs.o		\
		objectio.o	\
		placeicon.o	\
		recurse.o	\
		requesters.o	\
		runtool.o	\
		timer.o		\
		windows.o	\
		update.o	\
		drawbox.o	\
		gels.o		\
		app.o		\
		startup.o	\
		iconlib.o	\
		viewbytext.o	\
		cstrings.o	\
		infomisc.o	\
		inforender.o	\
		infoio.o	\
		infoinit.o	\
		infowindow.o	\
		infoevent.o	\
		executewindow.o	\
		executerender.o	\
		backdrop.o	\
		backfill.o	\
		quotes.o

#
# Object modules for the workbench .lib...
#
LIBMODS=	wb_lib.o	\
		kprintf.o	\
		debug.o

# These are all the C source modules:
CFILES=		diskchange.c diskin.c drawers.c errcalls.c \
		fileops.c global.c icons.c incoming.c init.c \
		ioloop.c main.c matrix.c menus.c \
		objectio.c placeicon.c recurse.c requesters.c \
		runtool.c timer.c windows.c gels.c \
		app.c startup.c iconlib.c \
		viewbytext.c debug.c cstrings.c \
		inforender.c infoinit.c infomisc.c infowindow.c \
		infoevent.c infoio.c executewindow.c \
		executerender.c copy.c backdrop.c backfill.c \
		update.c

# HEADER is all the headers that should force a full make of wb

HEADER=		wbinternal.h workbench.h

# These are all the object files resulting from assembler code.
# Note that we have a specific dependency line for each at the end of
# this makefile.
AOFILES=	abs.o alists.o syscalls.o

# Note that vers.o must come first
FIRSTO=		vers.o
#LASTO=		endcode.o

# These are the assembler source files:
AFILES=		vers.asm abs.asm kprintf.asm syscalls.asm \
		alists.asm stubs.asm quotes.asm drawbox.asm wb_lib.asm

# We use the following flags of CAPE:
# -cs
# -cy
AFLAGS = -csyq -i include:

# The collected object files:
OFILES = $(FIRSTO) $(AOFILES) $(COFILES)

LFLAGS = SMALLCODE SMALLDATA ADDSYM

LLIBS = wblib.lib lib:ROM.lib lib:lcnb.lib endcode.lib lib:debug.lib


all: wb.ld wb.ld.strip

test: wb.ld wb.ld.strip
	@@Copy wb.ld net:workbench/test/wb.ld
	@@Copy wb.ld.strip net:workbench/libs/workbench.library

# The big one:
d5 182
a186 3
wb.ld: $(OFILES) $(LLIBS) lmkfile
	blink <with <
FROM $(OFILES)
a187 3
lib $(LLIBS)
to wb.ld
map wb.map hlsxf plain SWidth 16
d190 6
a195 3
# Now strip the symbols
wb.ld.strip: wb.ld
	blink wb.ld to wb.ld.strip NODEBUG
d197 3
d201 1
a201 1
	@@lc $(CFLAGS) -O $*
d204 1
a204 2
	@@echo "*NAssembling $*.asm"
	casm -a $*.asm $(AFLAGS) -o$*.o
d206 11
d218 9
a226 15
# for endcode.lib
.asm.lib:
	@@echo "*NAssembling $*.asm"
	casm -a $*.asm $(AFLAGS) -o$*.lib

#
# To make the debug library...
#
wblib.lib:	$(LIBMODS)
	oml wblib.lib r $(LIBMODS)

# wb_rev.rev depends on all the source files.  It launches the bumprev
# program, which creates a new wb_rev.rev, wb_rev.h, and wb_rev.i file.
wb_rev.rev: $(CFILES) $(AFILES) $(LIBMODS)
	bumprev 39 wb_rev
d228 3
a230 1
# Delete all the .o files.
d232 1
a232 1
	delete \#?.o
d234 35
a268 69
# Make the internal "release"
internal:
	protect V:src/kickstart/wb/~~(tags) rwed
	copy \#?.(c|asm|i|h) V:src/kickstart/wb
	copy Makefile V:src/kickstart/wb/Makefile
	copy lmkfile V:src/kickstart/wb
	copy wb_lib.sfd V:src/kickstart/wb
	copy wb_rev.rev V:src/kickstart/wb
	copy wb.ld V:src/kickstart/wb
	copy wb.ld.strip V:src/kickstart/wb
	copy wb.map V:src/kickstart/wb
	copy wb.doc V:src/kickstart/wb
	copy wb_lib.sfd V:lib/sfd NOPRO
	copy wb.doc V:doc NOPRO

# Make the DOC
doc:
	join app.c main.c abs.asm as RAM:wb.tmp.doc
	AutoDoc >wb.doc RAM:wb.tmp.doc
	@@delete ram:wb.tmp.doc quiet
	@@protect wb.doc rwd

# individual dependancies...
diskchange.o:	diskchange.c  $(HEADER)
diskin.o:	diskin.c  $(HEADER)
drawers.o:	drawers.c  $(HEADER)
errcalls.o:	errcalls.c  $(HEADER)
fileops.o:	fileops.c  $(HEADER)
global.o:	global.c  $(HEADER)
icons.o:	icons.c  $(HEADER)
incoming.o:	incoming.c  $(HEADER)
init.o:		init.c  $(HEADER)
ioloop.o:	ioloop.c  $(HEADER)
main.o:		main.c  $(HEADER) wbstart.h
matrix.o:	matrix.c  $(HEADER)
menus.o:	menus.c  $(HEADER)
objectio.o:	objectio.c  $(HEADER)
placeicon.o:	placeicon.c  $(HEADER)
recurse.o:	recurse.c  $(HEADER)
requesters.o:	requesters.c  $(HEADER)
runtool.o:	runtool.c  $(HEADER)
timer.o:	timer.c  $(HEADER)
windows.o:	windows.c  $(HEADER)
gels.o:		gels.c  $(HEADER)
app.o:		app.c  $(HEADER)
startup.o:	startup.c  $(HEADER)
iconlib.o:	iconlib.c  $(HEADER)
viewbytext.o:	viewbytext.c  $(HEADER)
cstrings.o:	cstrings.c  $(HEADER)
inforender.o:	inforender.c  $(HEADER) info.h
infoinit.o:	infoinit.c  $(HEADER) info.h
infomisc.o:	infomisc.c  $(HEADER) info.h
infowindow.o:	infowindow.c  $(HEADER) info.h
infoevent.o:	infoevent.c  $(HEADER) info.h
infoio.o:	infoio.c  $(HEADER) info.h
executewindow.o: executewindow.c  $(HEADER) execute.h
executerender.o: executerender.c  $(HEADER) execute.h

vers.o:		vers.asm  $(HEADER) wb_rev.rev
abs.o:		abs.asm  $(HEADER)
kprintf.o:	kprintf.asm  $(HEADER)
syscalls.o:	syscalls.asm  $(HEADER)
alists.o:	alists.asm  $(HEADER)
stubs.o:	stubs.asm  $(HEADER)
quotes.o:	quotes.asm
wb_lib.o:	wb_lib.asm

debug.o:	debug.c  $(HEADER)
	lc $(CBASEFLAGS) -dDEBUGGING -dALLOCDEBUG -dLOCKDEBUG -dMAXDEBUG debug.c
@


38.1
log
@Initial V38 tree checkin - Log file stripped
@
text
@d2 1
a2 1
# $Id$
d4 4
a7 1
# $Log$
d166 1
a166 1
	bumprev 38 wb_rev
@
