[BACK]Return to WCC_MAKEFILE CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / gc

Annotation of OpenXM_contrib2/asir2000/gc/WCC_MAKEFILE, Revision 1.2

1.1       noro        1: # Makefile for Watcom C/C++ 10.5, 10.6, 11.0 on NT, OS2 and DOS4GW.
                      2: # May work with Watcom 10.0.
                      3:
                      4: # Uncoment one of the lines below for cross compilation.
                      5: SYSTEM=MSWIN32
                      6: #SYSTEM=DOS4GW
                      7: #SYSTEM=OS2
                      8:
                      9: # The collector can be built either as dynamic or as static library.
                     10: # Select the library type you need.
                     11: #MAKE_AS_DLL=1
                     12: MAKE_AS_LIB=1
                     13:
                     14: # Select calling conventions.
                     15: # Possible choices are r and s.
                     16: CALLING=s
                     17:
                     18: # Select target CPU.
                     19: # Possible choices are 3, 4, 5, and 6.
                     20: # The last choice available only since version 11.0.
                     21: CPU=5
                     22:
                     23: # Set optimization options.
                     24: # Watcom before 11.0 does not support option "-oh".
                     25: OPTIM=-oneatx -s
                     26: #OPTIM=-ohneatx -s
                     27:
                     28: DEFS=-DALL_INTERIOR_POINTERS -DSILENT -DNO_SIGNALS #-DSMALL_CONFIG #-DGC_DEBUG
                     29:
                     30:
                     31: #####
                     32:
                     33: !ifndef SYSTEM
                     34: !ifdef __MSDOS__
                     35: SYSTEM=DOS4GW
                     36: !else ifdef __NT__
                     37: SYSTEM=MSWIN32
                     38: !else ifdef __OS2__
                     39: SYSTEM=OS2
                     40: !else
                     41: SYSTEM=Unknown
                     42: !endif
                     43: !endif
                     44:
                     45: !define $(SYSTEM)
                     46:
                     47: !ifdef DOS4GW
                     48: SYSFLAG=-DDOS4GW -bt=dos
                     49: !else ifdef MSWIN32
                     50: SYSFLAG=-DMSWIN32 -bt=nt
                     51: !else ifdef OS2
                     52: SYSFLAG=-DOS2 -bt=os2
                     53: !else
                     54: !error undefined or unsupported target platform: $(SYSTEM)
                     55: !endif
                     56: !ifdef MAKE_AS_DLL
                     57: DLLFLAG=-bd -DGC_DLL
                     58: TEST_DLLFLAG=-DGC_DLL
                     59: !else ifdef MAKE_AS_LIB
                     60: DLLFLAG=
                     61: TEST_DLLFLAG=
                     62: !else
                     63: !error Either MAKE_AS_LIB or MAKE_AS_DLL should be defined
                     64: !endif
                     65:
                     66: CC=wcc386
                     67: CXX=wpp386
                     68:
                     69: # -DUSE_GENERIC is required !
                     70: CFLAGS=-$(CPU)$(CALLING) $(OPTIM) -zp4 -zc $(SYSFLAG) $(DLLFLAG) -DGC_BUILD -DUSE_GENERIC $(DEFS)
                     71: CXXFLAGS= $(CFLAGS)
                     72: TEST_CFLAGS=-$(CPU)$(CALLING) $(OPTIM) -zp4 -zc $(SYSFLAG) $(TEST_DLLFLAG) $(DEFS)
                     73: TEST_CXXFLAGS= $(TEST_CFLAGS)
                     74:
                     75: OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj &
                     76:       mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj &
                     77:       obj_map.obj blacklst.obj finalize.obj new_hblk.obj &
                     78:       dbg_mlc.obj malloc.obj stubborn.obj dyn_load.obj &
                     79:       typd_mlc.obj ptr_chck.obj mallocx.obj
                     80:
                     81: all: gc.lib gctest.exe test_cpp.exe
                     82:
                     83: !ifdef MAKE_AS_DLL
                     84:
                     85: gc.lib: gc.dll gc_cpp.obj
                     86:         *wlib -b -c -n -p=512 $@ +gc.dll +gc_cpp.obj
                     87:
                     88: gc.dll: $(OBJS) .AUTODEPEND
                     89:         @%create $*.lnk
                     90: !ifdef DOS4GW
                     91:         @%append $*.lnk sys os2v2_dll
                     92: !else ifdef MSWIN32
                     93:         @%append $*.lnk sys nt_dll
                     94: !else ifdef OS2
                     95:         @%append $*.lnk sys os2v2_dll
                     96: !endif
                     97:         @%append $*.lnk name $*
                     98:         @for %i in ($(OBJS)) do @%append $*.lnk file '%i'
                     99: !ifeq CALLING s
                    100:       @%append $*.lnk export GC_is_marked
                    101:       @%append $*.lnk export GC_incr_words_allocd
                    102:       @%append $*.lnk export GC_incr_mem_freed
                    103:       @%append $*.lnk export GC_generic_malloc_words_small
                    104: !else
                    105:       @%append $*.lnk export GC_is_marked_
                    106:       @%append $*.lnk export GC_incr_words_allocd_
                    107:       @%append $*.lnk export GC_incr_mem_freed_
                    108:       @%append $*.lnk export GC_generic_malloc_words_small_
                    109: !endif
                    110:         *wlink @$*.lnk
                    111: !else
                    112: gc.lib: $(OBJS) gc_cpp.obj
                    113:         @%create $*.lb1
                    114:         @for %i in ($(OBJS)) do @%append $*.lb1 +'%i'
                    115:       @%append $*.lb1 +'gc_cpp.obj'
                    116:         *wlib -b -c -n -p=512 $@ @$*.lb1
                    117:
                    118: !endif
                    119:
                    120:
                    121: gctest.exe: test.obj gc.lib
                    122:         %create $*.lnk
                    123: !ifdef DOS4GW
                    124:         @%append $*.lnk sys dos4g
                    125: !else ifdef MSWIN32
                    126:         @%append $*.lnk sys nt
                    127: !else ifdef OS2
                    128:         @%append $*.lnk sys os2v2
                    129: !endif
                    130:         @%append $*.lnk op case
                    131:         @%append $*.lnk op stack=256K
                    132:         @%append $*.lnk name $*
                    133:         @%append $*.lnk file test.obj
                    134:         @%append $*.lnk library gc.lib
                    135: !ifdef MAKE_AS_DLL
                    136: !ifeq CALLING s
                    137:       @%append $*.lnk import GC_is_marked gc
                    138: !else
                    139:       @%append $*.lnk import GC_is_marked_ gc
                    140: !endif
                    141: !endif
                    142:         *wlink @$*.lnk
                    143: test_cpp.exe: test_cpp.obj gc.lib
                    144:         %create $*.lnk
                    145: !ifdef DOS4GW
                    146:         @%append $*.lnk sys dos4g
                    147: !else ifdef MSWIN32
                    148:         @%append $*.lnk sys nt
                    149: !else ifdef OS2
                    150:         @%append $*.lnk sys os2v2
                    151: !endif
                    152:         @%append $*.lnk op case
                    153:         @%append $*.lnk op stack=256K
                    154:         @%append $*.lnk name $*
                    155:         @%append $*.lnk file test_cpp.obj
                    156:         @%append $*.lnk library gc.lib
                    157: !ifdef MAKE_AS_DLL
                    158: !ifeq CALLING s
                    159:       @%append $*.lnk import GC_incr_words_allocd gc
                    160:       @%append $*.lnk import GC_incr_mem_freed gc
                    161:       @%append $*.lnk import GC_generic_malloc_words_small gc
                    162: !else
                    163:       @%append $*.lnk import GC_incr_words_allocd_ gc
                    164:       @%append $*.lnk import GC_incr_mem_freed_ gc
                    165:       @%append $*.lnk import GC_generic_malloc_words_small_ gc
                    166: !endif
                    167: !endif
                    168:         *wlink @$*.lnk
                    169:
                    170: gc_cpp.obj: gc_cpp.cc .AUTODEPEND
                    171:         $(CXX) $(TEST_CXXFLAGS) -iinclude $*.cc
1.2     ! noro      172: test.obj: tests\test.c .AUTODEPEND
1.1       noro      173:         $(CC) $(TEST_CFLAGS) $*.c
1.2     ! noro      174: test_cpp.obj: tests\test_cpp.cc .AUTODEPEND
1.1       noro      175:         $(CXX) $(TEST_CXXFLAGS) -iinclude $*.cc
                    176:
                    177:
                    178: .c.obj: .AUTODEPEND
                    179:         $(CC) $(CFLAGS) $*.c
                    180:
                    181: .cc.obj: .AUTODEPEND
                    182:         $(CXX) $(CXXFLAGS) $*.cc
                    183:
                    184: clean : .SYMBOLIC
                    185:     @if exist *.obj del *.obj
                    186:     @if exist *.map del *.map
                    187:     @if exist *.lnk del *.lnk
                    188:     @if exist *.lb1 del *.lb1
                    189:     @if exist *.sym del *.sym
                    190:     @if exist *.err del *.err
                    191:     @if exist *.tmp del *.tmp
                    192:     @if exist *.lst del *.lst
                    193:     @if exist *.exe del *.exe
                    194:     @if exist *.log del *.log
                    195:     @if exist *.lib del *.lib
                    196:     @if exist *.dll del *.dll

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>