summaryrefslogtreecommitdiff
path: root/WCC_MAKEFILE
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2011-07-26 15:16:41 +0400
committerIvan Maidanski <ivmai@mail.ru>2011-07-26 15:16:41 +0400
commit7d3768dbd2a1cd4d5c14f773f23aec43bc0651a5 (patch)
tree1cb52688b70322e994f4c2377ad715dbe8edb7d7 /WCC_MAKEFILE
parentf9b1aa2161e755a5f5b772b5698aab8a63d0bef4 (diff)
downloadbdwgc-7d3768dbd2a1cd4d5c14f773f23aec43bc0651a5.tar.gz
gc4.12 tarball importgc4_12
Diffstat (limited to 'WCC_MAKEFILE')
-rw-r--r--WCC_MAKEFILE123
1 files changed, 123 insertions, 0 deletions
diff --git a/WCC_MAKEFILE b/WCC_MAKEFILE
new file mode 100644
index 00000000..cc0ef136
--- /dev/null
+++ b/WCC_MAKEFILE
@@ -0,0 +1,123 @@
+# Makefile for Watcom C/C++ 10.5, 10.6, 11.0 on NT, OS2 and DOS4GW .
+# May work with Watcom 10.0 .
+#
+
+#
+# Uncoment one of line for cross compiling
+#SYSTEM=DOS4GW
+#SYSTEM=MSWIN32
+#SYSTEM=OS2
+
+!ifndef SYSTEM
+
+!ifdef __MSDOS__
+SYSTEM=DOS4GW
+!endif
+
+!ifdef __NT__
+SYSTEM=MSWIN32
+!endif
+
+!ifdef __OS2__
+SYSTEM=OS2
+!endif
+
+D_SYSTEM=
+
+!else
+
+D_SYSTEM=-D$(SYSTEM)
+
+!endif
+
+!define $(SYSTEM)
+
+
+CC=wcc386
+CXX=wpp386
+AS=wasm
+
+
+# Watcom before 11.0 not support option -oh
+# Remove it if you get error
+OPTIM=-oneatxh -s
+
+CALLING=-5s
+
+DEFS=-DALL_INTERIOR_POINTERS -DSILENT #-DSMALL_CONFIG #-DGC_DEBUG
+
+# ! -DUSE_GENERIC required !
+CFLAGS=$(OPTIM) -zp4 $(CALLING) -zc -DUSE_GENERIC $(D_SYSTEM) $(DEFS)
+CXXFLAGS= $(CFLAGS)
+ASFLAGS=$(CALLING)
+
+OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj &
+ mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj &
+ obj_map.obj blacklst.obj finalize.obj new_hblk.obj &
+ dbg_mlc.obj malloc.obj stubborn.obj dyn_load.obj &
+ typd_mlc.obj ptr_chck.obj gc_cpp.obj mallocx.obj
+
+
+all: gc.lib gctest.exe
+
+# this file required for DOS4GW only
+gc_watcom.obj: gc_watcom.asm WCC_MAKEFILE
+ $(AS) $(ASFLAGS) gc_watcom.asm
+
+!ifdef DOS4GW
+gc.lib: $(OBJS) gc_watcom.obj
+ @%create $*.lb1
+ @for %i in ($(OBJS)) do @%append $*.lb1 +'%i'
+ @@%append $*.lb1 +'gc_watcom.obj'
+ *wlib -b -c -n -p=512 $@ @$*.lb1
+!else
+gc.lib: $(OBJS)
+ @%create $*.lb1
+ @for %i in ($(OBJS)) do @%append $*.lb1 +'%i'
+ *wlib -b -c -n -p=512 $@ @$*.lb1
+!endif
+
+
+test.obj: test.c
+ $(CC) $(CFLAGS) $*.c
+
+gctest.exe: test.obj gc.lib
+ %create $*.lnk
+!ifdef DOS4GW
+ @%append $*.lnk sys dos4g
+!endif
+!ifdef MSWIN32
+ @%append $*.lnk sys nt
+!endif
+!ifdef OS2
+ @%append $*.lnk sys os2v2
+!endif
+ @%append $*.lnk op case
+ @%append $*.lnk op stack=256K
+ @%append $*.lnk name $*
+ @%append $*.lnk file test.obj
+ @%append $*.lnk library gc.lib
+ *wlink @$*.lnk
+
+
+
+.c.obj: .AUTODEPEND
+ $(CC) $(CFLAGS) $*.c
+
+.cc.obj: .AUTODEPEND
+ $(CXX) $(CXXFLAGS) $*.cc
+
+.cpp.obj: .AUTODEPEND
+ $(CXX) $(CXXFLAGS) $*.cpp
+
+clean : .SYMBOLIC
+ @if exist *.obj del *.obj
+ @if exist *.map del *.map
+ @if exist *.lnk del *.lnk
+ @if exist *.lb1 del *.lb1
+ @if exist *.sym del *.sym
+ @if exist *.err del *.err
+ @if exist *.tmp del *.tmp
+ @if exist *.lst del *.lst
+ @if exist *.exe del *.exe
+ @if exist *.log del *.log