
C_ENV = 1
# define C_ENV = 1 for Borland C++ 4.0+, using HighC libs
#             or 2 MetaWare High C 3.0+
#             or 3 Watcom 32-bit C/C++, not tested


!if $(C_ENV) == 1
  CC = bcc32 -c -u-
  AS = tasm /mx
!endif

!if $(C_ENV) == 2
  CC = hc386 -c -g
  AS = 386asm -twocase -lnum
!endif

!if $(C_ENV) == 3
  CC = wcl386 -c
  AS = tasm /mx
!endif

CORE = exc_0.obj exc_1.obj uasm.obj
all  : except.lnk demo_1.exp demo_2.exp demo_3.exp
core : $(CORE)

.asm.obj:
   $(AS) $*.asm

.c.obj:
   $(CC) {$*.c }

demo_1.exp: $(CORE) demo_1.obj
   386link demo_1 @except.lnk


demo_2.exp: $(CORE) demo_2.obj hr_timer.obj
   386link demo_2,hr_timer @except.lnk


demo_3.exp: $(CORE) demo_3.obj
   386link demo_3 @except.lnk

except.lnk: makefile
  copy &&|
   #
   # edit to point to your libs
   #
   exc_0,exc_1,uasm
   -libpath \dosx\lib;\hc\lib
   -lib hc386,hcsoft,dosx32
   -nostub
   -pack
   -unprivileged
   -symbols
   -purge none *
   -mapnames 30
   -mapwidth 132
   -fullseg
   -publist both
| except.lnk


zip: demo_1.exp demo_2.exp demo_3.exp
    pkzip exc_dx02 -x*.obj -x*.map -x*.lst

