
ObjectFiles	=		\
			o.Event	\
			o.MClaimInit	\
			o.MRelease	\
			o.MRelMsg	\
			o.MRelWindow	\
			o.taskname	\


LibName		=	Event



# Template makefile to make Straylight Dynamic Link 
# Library from a DeskLib sublibrary's .o files
#
# The DLL is made in the directory 
# '<DeskLib$Dir>.!DLLs.Freeware_1.DeskLib.'
# and has the same name as the DeskLib sublibrary.
#
# Julian Smith 17 Apr 1995.

# The macro $(ObjectFiles) should be set at the 
# start of this file, to be a space-separated
# list of object files.
# This is done by 'Makatic'.

# The macro $(LibName) should also be set at the 
# start of this file, to be the name of the 
# DeskLib sublibrary.
# This is done by 'Makatic'.

# Note that this makefile doesn't use cc at all
# - it merely links existing .o files.

# Linker flags, These can be anything. 
# All flags required by Straylight (eg Link -rmf) 
# are included in the $(LINK) macro.
#
LinkFlags	=	$(LinkExtra)


# Macros for commands, including the Straylight
# tool 'cdll'. Note that DRLink doesn't seem to
# work with the SDLS.
#
LINK		=	Link -rmf
CDLL		=	cdll


# Filename of the thing we need to make: - the main
# dynamically-linked library, which will go in the 
# !DLL application.
# NB The leafname of $(DLL_Lib) file (after copying into the !DLL
# application) should be the same as the 'name' field in the
# $(DLL_Def) file. In this case, this is $(LibName).
# 
DLL_Lib		=	<DeskLib$Dir>.!DLLs.Freeware_1.DeskLib.$(LibName)


# Filenames of intermediate files needed to make $(DLL_Lib) and $(DLL_Stubs).
#
DLL_Header	=	Header
DLL_Def		=	^.DLLDef
DLL_Stubs	=	Stubs



# -------------------------------------------------------
# Everything below here should probably not be changed...
# -------------------------------------------------------


# Extra libs, written by Straylight, which always need to be linked into a DLL
#
SDLS_ExtraObjects=					\
			C:DLLLib.o.DLLLib		\
			C:DLLLib.o.dstubs		\


# Extra DeskLib libraries which need to be linked into the final DLL.
# The DLL DeskLib library is included here because some DeskLib DLLs may
# refer to other DeskLib DLLs.
# Note that DeskLib:o.DLL contains all the DLL.o.* files except for 
# the sublibraries for which there is a DLL - just the DLL Stubs file
# is included for these.
#
DeskLib_ExtraObjects=				\
			DeskLib:o.DLLDLL	\




#Here's what we want to make...

All:	$(DLL_Lib)

$(DLL_Lib):	$(DeskLib_ExtraObjects) $(SDLS_ExtraObjects) $(DLL_Header) $(ObjectFiles)
	$(LINK) $(LinkFlags) -o $@ $(ObjectFiles) $(DeskLib_ExtraObjects) $(SDLS_ExtraObjects) $(DLL_Header)



# Here's how to make the things which are needed in the above rules

$(DLL_Def):	
	| Error: No DLL definition file exists.
	|        You should run th MkStubsOs makefile
	|        and then alter the template Def
	|        file by hand.

$(DLL_Header):	$(DLL_Def)
	$(CDLL) -def $(DLL_Def) -hdr $(DLL_Header)


# Rule for compiling C source code for a Straylight dynamically-linked library.
# Actually, we don't call cc - we complain and tell the user to run the 
# MkStubsOs makefile.

VPATH = @.^

.SUFFIXES:	.o .c .s
.c.o:
	| $@ needs recompiling. This should be done by
	| running the MkStubsOs or MkOs makefile before running
	| this makefile.
	|

.s.o:
	| $@ needs assembling. This should be done by
	| running the MkStubsOs or MkOs makefile before running
	| this makefile.
	|



# Dynamic dependencies:
