summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.in7
-rw-r--r--common.mk8
-rw-r--r--win32/Makefile.sub5
3 files changed, 11 insertions, 9 deletions
diff --git a/Makefile.in b/Makefile.in
index 005732b591..0858897d55 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -143,6 +143,8 @@ XRUBY_RUBYLIBDIR = @XRUBY_RUBYLIBDIR@
XRUBY_RUBYHDRDIR = @XRUBY_RUBYHDRDIR@
BOOTSTRAPRUBY = @BOOTSTRAPRUBY@
+COROUTINE_H = @X_FIBER_COROUTINE_H@
+
#### End of system configuration section. ####
MAJOR= @MAJOR@
@@ -241,7 +243,7 @@ DESTDIR = @DESTDIR@
configure_args = @configure_args@
#### End of variables
-.SUFFIXES: .inc .h .c .y .i .$(DTRACE_EXT)
+.SUFFIXES: .inc .h .c .y .i .$(ASMEXT) .$(DTRACE_EXT)
all:
@@ -406,7 +408,6 @@ $(srcdir)/enc/jis/props.h: enc/jis/props.kwd
.s.@OBJEXT@:
@$(ECHO) assembling $<
- $(Q) $(MAKEDIRS) $(@D)
$(Q) $(CC) $(ASFLAGS) -o $@ -c $<
.c.S:
@@ -517,7 +518,7 @@ ext/extinit.$(OBJEXT): ext/extinit.c $(SETUP)
enc/encinit.$(OBJEXT): enc/encinit.c $(SETUP)
-cont.$(OBJEXT): @X_FIBER_COROUTINE_H@
+cont.$(OBJEXT): $(COROUTINE_H)
test-bundled-gems-run:
$(Q) set -e; while read gem _; do \
diff --git a/common.mk b/common.mk
index b28a4e4cf1..245ba05eda 100644
--- a/common.mk
+++ b/common.mk
@@ -2,7 +2,7 @@ bin: $(PROGRAM) $(WPROGRAM)
lib: $(LIBRUBY)
dll: $(LIBRUBY_SO)
-.SUFFIXES: .inc .h .c .y .i .$(DTRACE_EXT)
+.SUFFIXES: .inc .h .c .y .i .$(ASMEXT) .$(DTRACE_EXT)
# V=0 quiet, V=1 verbose. other values don't work.
V = 0
@@ -895,9 +895,9 @@ strstr.$(OBJEXT): {$(VPATH)}strstr.c
nt.$(OBJEXT): {$(VPATH)}nt.c
ia64.$(OBJEXT): {$(VPATH)}ia64.s
$(CC) $(CFLAGS) -c $<
-coroutine/amd64/Context.$(OBJEXT): {$(VPATH)}coroutine/amd64/Context.$(ASMEXT)
-coroutine/amd64/Context.$(OBJEXT): coroutine/amd64/.time
-coroutine/amd64/.time:
+$(COROUTINE_H:.h=).$(OBJEXT): {$(VPATH)}$(COROUTINE_H:.h=).$(ASMEXT)
+$(COROUTINE_H:.h=).$(OBJEXT): $(COROUTINE_H:Context.h=.time)
+$(COROUTINE_H:Context.h=.time):
$(Q) $(MAKEDIRS) $(@D)
@exit > $@
diff --git a/win32/Makefile.sub b/win32/Makefile.sub
index 0892d8f753..fbc7903061 100644
--- a/win32/Makefile.sub
+++ b/win32/Makefile.sub
@@ -290,12 +290,13 @@ MISSING = $(MISSING) explicit_bzero.obj
!endif
DLNOBJ = dln.obj
!if "$(ARCH)" == "x64"
-MISSING = $(MISSING) coroutine/Win64/Context.obj
COROUTINE_H = coroutine/Win64/Context.h
!elseif "$(ARCH)" == "i386"
-MISSING = $(MISSING) coroutine/Win32/Context.obj
COROUTINE_H = coroutine/Win32/Context.h
!endif
+!if defined(COROUTINE_H)
+MISSING = $(MISSING) $(COROUTINE_H:.h=.obj)
+!endif
ARFLAGS = -machine:$(MACHINE) -out:
LD = $(CC)