From 2f2530b195008209e1d9e4e9734509d5f956fa49 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Fri, 20 Dec 2024 16:41:58 +0900 Subject: [PATCH] Allow variables in modular_gc_dir Such as `$(ruby_version)`, `$(arch)` and so on. --- gc.c | 1 + template/Makefile.in | 2 +- win32/Makefile.sub | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/gc.c b/gc.c index 19e65a1f14..67857ed44c 100644 --- a/gc.c +++ b/gc.c @@ -707,6 +707,7 @@ typedef struct gc_function_map { static rb_gc_function_map_t rb_gc_functions; # define RUBY_GC_LIBRARY "RUBY_GC_LIBRARY" +# define MODULAR_GC_DIR STRINGIZE(modular_gc_dir) static void ruby_modular_gc_init(void) diff --git a/template/Makefile.in b/template/Makefile.in index 39d5bdd156..25c788f565 100644 --- a/template/Makefile.in +++ b/template/Makefile.in @@ -97,7 +97,7 @@ cppflags = @cppflags@ incflags = @incflags@ RUBY_DEVEL = @RUBY_DEVEL@ # "yes" or empty _RUBY_DEVEL_enabled = $(RUBY_DEVEL:no=) -XCFLAGS = @XCFLAGS@ $(INCFLAGS) $(_RUBY_DEVEL_enabled:yes=-DRUBY_DEVEL=1) +XCFLAGS = @XCFLAGS@ $(INCFLAGS) $(_RUBY_DEVEL_enabled:yes=-DRUBY_DEVEL=1) -Dmodular_gc_dir="$(modular_gc_dir)" USE_RUBYGEMS = @USE_RUBYGEMS@ USE_RUBYGEMS_ = $(USE_RUBYGEMS:yes=) CPPFLAGS = @CPPFLAGS@ $(USE_RUBYGEMS_:no=-DDISABLE_RUBYGEMS=1) diff --git a/win32/Makefile.sub b/win32/Makefile.sub index 31a5413017..09b8debd76 100644 --- a/win32/Makefile.sub +++ b/win32/Makefile.sub @@ -156,6 +156,9 @@ DEBUGFLAGS = -Zi !if "$(RUBY_DEVEL)" == "yes" XCFLAGS = $(XCFLAGS) -DRUBY_DEVEL=1 !endif +!if "$(modular_gc_dir)" != "" +XCFLAGS = $(XCFLAGS) -Dmodular_gc_dir="$(modular_gc_dir)" +!endif !if !defined(OPTFLAGS) !if $(MSC_VER) < 1400 OPTFLAGS = -O2b2xg-