# $Id: makefile,v 1.1.1.1 2003/10/04 08:31:08 prokushev Exp $

ROOT=..\..\..

THREADING_FILE=mt_notmt

DIR = $(ROOT)\bin\os2\dll
PROJ = regina
DESC = Regina REXX
OBJS = funcs.obj builtin.obj error.obj variable.obj &
       interprt.obj debug.obj dbgfuncs.obj memory.obj parsing.obj files.obj &
       misc.obj unxfuncs.obj arxfuncs.obj cmsfuncs.obj shell.obj os2funcs.obj rexxext.obj stack.obj &
       tracing.obj interp.obj cmath.obj convert.obj strings.obj library.obj &
       strmath.obj signals.obj macros.obj envir.obj expr.obj $(THREADING_FILE).obj &
       extlib.obj yaccsrc.obj lexsrc.obj wrappers.obj options.obj doscmd.obj &
       client.obj rexxsaa.obj instore.obj &
       extstack.obj rexxbif.obj # drexx.obj
DD_COPT = -i=. -ox -dfgs -dOS2
#ADD_LIB = MATH387S,%watcom%\lib286\os2\os2

!include $(ROOT)\makefile.inc

all: $(DIR)\$(PROJ).dll $(DIR)\$(PROJ).sym

$(DIR)\$(PROJ).dll: $(OBJS)
 %create $^&.lnk
 %append $^&.lnk $(LINKOPT)
 %append $^&.lnk NAME $^@ OPTION MODNAME=$^&
 %append $^&.lnk FORMAT OS2 DLL PMCOMPATIBLE
 %append $^&.lnk OPTION DESCRIPTION '$(FILEVER)  $(DESC)'
# %append $^&.lnk OPTION STACK=65536
 %append $^&.lnk OPTION MAP=$^&.wmp
 %append $^&.lnk LIBRARY $(LINKLIB)
 %append $^&.lnk export RexxAllocateMemory, RexxDeregisterExit
 %append $^&.lnk export RexxDeregisterFunction, RexxDeregisterSubcom
 %append $^&.lnk export RexxFreeMemory, RexxQueryExit
 %append $^&.lnk export RexxQueryFunction, RexxQuerySubcom
 %append $^&.lnk export RexxRegisterExitDll, RexxRegisterExitExe
 %append $^&.lnk export RexxRegisterFunctionDll, RexxRegisterFunctionExe
 %append $^&.lnk export RexxRegisterSubcomDll, RexxRegisterSubcomExe
 %append $^&.lnk export RexxSetHalt, RexxStart, RexxVariablePool
 %append $^&.lnk export ReginaVersion, __regina_faked_main
 %append $^&.lnk export RexxAddMacro, RexxAddQueue
 %append $^&.lnk export RexxClearMacroSpace, RexxCreateQueue
 %append $^&.lnk export RexxDeleteQueue, RexxDropMacro
 %append $^&.lnk export RexxLoadMacroSpace, RexxPullQueue
 %append $^&.lnk export RexxQueryMacro, RexxQueryQueue
 %append $^&.lnk export RexxReorderMacro, RexxSaveMacroSpace
 %append $^&.lnk export RexxCallBack
 for %i in ($(OBJS)) do @%append $^&.lnk FILE %i
 $(LINKER) @$^&.lnk

# Clean target
clean : .symbolic
    @if exist *.obj del *.obj
    @if exist *.res del *.res
    @if exist *.msg del *.msg
    @if exist *.map del *.map
    @if exist *.wmp del *.wmp
    @if exist *.lnk del *.lnk
