]> granicus.if.org Git - gc/commitdiff
Compile gc.c unless building static libraries (NT_MAKEFILE, WCC_MAKEFILE)
authorIvan Maidanski <ivmai@mail.ru>
Wed, 24 Jul 2019 21:55:22 +0000 (00:55 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Wed, 24 Jul 2019 21:56:47 +0000 (00:56 +0300)
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.

NT_MAKEFILE
WCC_MAKEFILE

index 3266d9afa4e988032117ec47b079dd6e1bb302e1..76784f6030e38fda1ae39c6843c43bbd2c266d80 100644 (file)
@@ -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
 
index 2a9fc4dde4f0fb968e6f7cf513d1bdbac624c03c..60b013ef7e953734474d669e2a7f57e3da003751 100644 (file)
@@ -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