From: Ivan Maidanski Date: Wed, 24 Jul 2019 21:55:22 +0000 (+0300) Subject: Compile gc.c unless building static libraries (NT_MAKEFILE, WCC_MAKEFILE) X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=40fba167c81f46f3770e902355a6952200b51028;p=gc Compile gc.c unless building static libraries (NT_MAKEFILE, WCC_MAKEFILE) This is to match the behavior of CMake and configure scripts. * NT_MAKEFILE [!ENABLE_STATIC] (OBJS): Set to extra\gc.obj, extra\msvc_dbg.obj. * WCC_MAKEFILE (OBJS): Define only if ENABLE_STATIC. * WCC_MAKEFILE [!ENABLE_STATIC] (gc.obj): New target. * WCC_MAKEFILE [!ENABLE_STATIC] (gc.dll): Depend on and append gc.obj instead of $(OBJS) elements. --- diff --git a/NT_MAKEFILE b/NT_MAKEFILE index 3266d9af..76784f60 100644 --- a/NT_MAKEFILE +++ b/NT_MAKEFILE @@ -88,7 +88,11 @@ CFLAGS_DEFAULT=-DALL_INTERIOR_POINTERS -DENABLE_DISCLAIM -DGC_ATOMIC_UNCOLLECTAB AO_SRC_DIR=libatomic_ops/src AO_INCLUDE_DIR=$(AO_SRC_DIR) +!IFDEF ENABLE_STATIC OBJS= misc.obj win32_threads.obj alloc.obj reclaim.obj allchblk.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 fnlz_mlc.obj malloc.obj dyn_load.obj typd_mlc.obj ptr_chck.obj gcj_mlc.obj mallocx.obj extra\msvc_dbg.obj thread_local_alloc.obj +!ELSE +OBJS= extra\gc.obj extra\msvc_dbg.obj +!ENDIF COBJS= cord\cordbscs.obj cord\cordxtra.obj cord\cordprnt.obj diff --git a/WCC_MAKEFILE b/WCC_MAKEFILE index 2a9fc4dd..60b013ef 100644 --- a/WCC_MAKEFILE +++ b/WCC_MAKEFILE @@ -76,12 +76,6 @@ CXXFLAGS= $(CFLAGS) -xs TEST_CFLAGS=-$(CPU)$(CALLING) $(OPTIM) -iinclude -zp4 -zc $(SYSFLAG) $(TEST_DLLFLAG) $(DEFS) TEST_CXXFLAGS= $(TEST_CFLAGS) -xs -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 dyn_load.obj & - typd_mlc.obj ptr_chck.obj mallocx.obj fnlz_mlc.obj gcj_mlc.obj - COBJS= cordbscs.obj cordxtra.obj cordprnt.obj all: gc.lib gccpp.lib cord.lib @@ -93,6 +87,12 @@ check: gctest.exe test_cpp.exe cordtest.exe .SYMBOLIC !ifdef ENABLE_STATIC +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 dyn_load.obj & + typd_mlc.obj ptr_chck.obj mallocx.obj fnlz_mlc.obj gcj_mlc.obj + gc.lib: $(OBJS) @%create $*.lb1 @for %i in ($(OBJS)) do @%append $*.lb1 +'%i' @@ -110,10 +110,13 @@ gccpp.lib: gc_cpp.obj !else +gc.obj: extra\gc.c .AUTODEPEND + $(CC) $(CFLAGS) extra\gc.c + gc.lib: gc.dll *wlib -b -c -n -p=512 $@ +gc.dll -gc.dll: $(OBJS) .AUTODEPEND +gc.dll: gc.obj .AUTODEPEND @%create $*.lnk !ifdef DOS4GW @%append $*.lnk sys os2v2_dll @@ -124,7 +127,7 @@ gc.dll: $(OBJS) .AUTODEPEND !endif @%append $*.lnk op case @%append $*.lnk name $* - @for %i in ($(OBJS)) do @%append $*.lnk file '%i' + @%append $*.lnk file 'gc.obj' *wlink @$*.lnk cord.lib: cord.dll