summaryrefslogtreecommitdiff
path: root/win32/Makefile.sub
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-03-05 02:52:21 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-03-05 02:52:21 +0000
commit11075c9332204eb7a722e36e740c19967b6cdfa0 (patch)
treec3a8096d075fc60222811a7434797d6708f68d15 /win32/Makefile.sub
parenta6c117a2b1051c07cb945bb234b584742741303b (diff)
* win32/Makefile.sub (make_insns_rules): rule to make rules for insns.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'win32/Makefile.sub')
-rw-r--r--win32/Makefile.sub16
1 files changed, 16 insertions, 0 deletions
diff --git a/win32/Makefile.sub b/win32/Makefile.sub
index 0512df4308..a876ab2d72 100644
--- a/win32/Makefile.sub
+++ b/win32/Makefile.sub
@@ -810,3 +810,19 @@ dir.$(OBJEXT) win32.$(OBJEXT): {$(srcdir)}win32/dir.h
ext/extinit.obj: ext/extinit.c $(SETUP)
$(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c ext/extinit.c
+
+!ifdef insns
+make_insns_rules:
+ @type <<
+$(insns): $$(srcdir)/insns.def {$$(VPATH)}vm_opts.h $$(srcdir)/defs/opt_operand.def $$(srcdir)/defs/opt_insn_unif.def
+ @$$(RM) $$(PROGRAM)
+ $$(BASERUBY) -Ks $$(srcdir)/tool/insns2vm.rb $$(INSNS2VMOPT) $(insns)
+
+<<
+!else if [exit > insns_rules.mk]
+!else if [for %I in ($(INSNS)) do @$(MAKE) -l insns=%I make_insns_rules >> insns_rules.mk]
+!else
+! include insns_rules.mk
+! if [del insns_rules.mk > nul]
+! endif
+!endif