aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--common.mk5
-rw-r--r--gc/gc_impl.c (renamed from gc_impl.c)0
-rw-r--r--template/Makefile.in5
-rw-r--r--win32/Makefile.sub7
4 files changed, 15 insertions, 2 deletions
diff --git a/common.mk b/common.mk
index eb1ccbcdeb..1cd4b1c6a3 100644
--- a/common.mk
+++ b/common.mk
@@ -1915,7 +1915,7 @@ shared-gc: probes.h
exit 1; \
else \
echo generating $(shared_gc_dir)librubygc.$(SHARED_GC).$(SOEXT); \
- $(LDSHARED) -I$(srcdir)/include -I$(srcdir) -I$(arch_hdrdir) -I. $(XDLDFLAGS) $(cflags) -fPIC -o $(shared_gc_dir)librubygc.$(SHARED_GC).$(SOEXT) $(srcdir)/$(SHARED_GC).c; \
+ $(LDSHARED) -I$(srcdir)/include -I$(srcdir) -I$(arch_hdrdir) -I. $(XDLDFLAGS) $(cflags) -fPIC -o $(shared_gc_dir)librubygc.$(SHARED_GC).$(SOEXT) $(srcdir)/gc/$(SHARED_GC).c; \
fi
help: PHONY
@@ -7506,6 +7506,7 @@ gc_impl.$(OBJEXT): $(CCAN_DIR)/container_of/container_of.h
gc_impl.$(OBJEXT): $(CCAN_DIR)/list/list.h
gc_impl.$(OBJEXT): $(CCAN_DIR)/str/str.h
gc_impl.$(OBJEXT): $(hdrdir)/ruby/ruby.h
+gc_impl.$(OBJEXT): $(top_srcdir)/gc/gc_impl.c
gc_impl.$(OBJEXT): $(top_srcdir)/internal/bits.h
gc_impl.$(OBJEXT): $(top_srcdir)/internal/compilers.h
gc_impl.$(OBJEXT): $(top_srcdir)/internal/sanitizers.h
@@ -7527,7 +7528,7 @@ gc_impl.$(OBJEXT): {$(VPATH)}darray.h
gc_impl.$(OBJEXT): {$(VPATH)}debug.h
gc_impl.$(OBJEXT): {$(VPATH)}debug_counter.h
gc_impl.$(OBJEXT): {$(VPATH)}defines.h
-gc_impl.$(OBJEXT): {$(VPATH)}gc_impl.c
+gc_impl.$(OBJEXT): {$(VPATH)}gc/gc_impl.c
gc_impl.$(OBJEXT): {$(VPATH)}intern.h
gc_impl.$(OBJEXT): {$(VPATH)}internal/abi.h
gc_impl.$(OBJEXT): {$(VPATH)}internal/anyargs.h
diff --git a/gc_impl.c b/gc/gc_impl.c
index 0ed3ba7478..0ed3ba7478 100644
--- a/gc_impl.c
+++ b/gc/gc_impl.c
diff --git a/template/Makefile.in b/template/Makefile.in
index 79a23fcdeb..b5da412802 100644
--- a/template/Makefile.in
+++ b/template/Makefile.in
@@ -67,6 +67,7 @@ RUBY_VERSION_NAME = @RUBY_VERSION_NAME@
UNIVERSAL_ARCHNAMES = @UNIVERSAL_ARCHNAMES@
BUILTIN_BINARY = @X_BUILTIN_BINARY@
+BUILTIN_GC = gc_impl
shared_gc_dir = @shared_gc_dir@
TESTUI = console
@@ -444,6 +445,10 @@ $(srcdir)/enc/jis/props.h: enc/jis/props.kwd
$(CP) $@ $(?:.kwd=.h.blt); \
fi
+gc_impl.$(OBJEXT): gc/$(BUILTIN_GC).c probes.h
+ @$(ECHO) compiling $<
+ $(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c $<
+
.c.$(OBJEXT):
@$(ECHO) compiling $<
$(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c $<
diff --git a/win32/Makefile.sub b/win32/Makefile.sub
index 46213466eb..2b791c0562 100644
--- a/win32/Makefile.sub
+++ b/win32/Makefile.sub
@@ -443,6 +443,8 @@ PREP = miniruby$(EXEEXT)
BUILTIN_BINARY = yes
!endif
+BUILTIN_GC = default
+
!if !defined(EXTSTATIC)
EXTSTATIC =
!endif
@@ -1336,6 +1338,11 @@ $(ruby_pc): $(RBCONFIG)
$(ECHO) compiling $(<:\=/)
$(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$(<:\=/)
+BUILTIN_GC_PATH = $(srcdir)/gc/$(BUILTIN_GC).c
+gc_impl.obj: $(BUILTIN_GC_PATH)
+ $(ECHO) compiling $(BUILTIN_GC_PATH:\=/)
+ $(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$(BUILTIN_GC_PATH:\=/)
+
{$(srcdir)/missing}.c.asm:
$(ECHO) translating $(<:\=/)
$(Q) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) -Fa$@ -c $(CSRCFLAG)$(<:\=/)