mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
extmk.rb: fix mingw make failure with make -jN
* common.mk (WPROGRAM): need same dependencies as PROGRAM. * cygwin/GNUmakefile.in (uncommon.mk): move include position below WPROGRAM definition to be defined in uncommon.mk. * ext/extmk.rb (all, static): fix make rubyw.exe failure with make -jN. If make of ruby.exe and rubyw.exe run in parallel, link dll and link exe run in parallel, which causes link failure on mingw. To fix this, we make ruby.exe and rubyw.exe in one make process. [ruby-core:48007] [Bug #7165] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
aef5f90281
commit
14d59c122f
4 changed files with 23 additions and 6 deletions
13
ChangeLog
13
ChangeLog
|
@ -1,3 +1,16 @@
|
||||||
|
Wed Oct 17 21:16:47 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com>
|
||||||
|
|
||||||
|
* common.mk (WPROGRAM): need same dependencies as PROGRAM.
|
||||||
|
|
||||||
|
* cygwin/GNUmakefile.in (uncommon.mk): move include position
|
||||||
|
below WPROGRAM definition to be defined in uncommon.mk.
|
||||||
|
|
||||||
|
* ext/extmk.rb (all, static): fix make rubyw.exe failure with make -jN.
|
||||||
|
If make of ruby.exe and rubyw.exe run in parallel, link dll and link
|
||||||
|
exe run in parallel, which causes link failure on mingw. To fix this,
|
||||||
|
we make ruby.exe and rubyw.exe in one make process.
|
||||||
|
[ruby-core:48007] [Bug #7165]
|
||||||
|
|
||||||
Wed Oct 17 16:25:34 2012 Koichi Sasada <ko1@atdot.net>
|
Wed Oct 17 16:25:34 2012 Koichi Sasada <ko1@atdot.net>
|
||||||
|
|
||||||
* benchmark/bm_vm2_method_missing.rb: add a benchmark to measure
|
* benchmark/bm_vm2_method_missing.rb: add a benchmark to measure
|
||||||
|
|
|
@ -212,7 +212,7 @@ Doxyfile: $(srcdir)/template/Doxyfile.tmpl $(PREP) $(srcdir)/tool/generic_erb.rb
|
||||||
program: showflags $(PROGRAM)
|
program: showflags $(PROGRAM)
|
||||||
wprogram: showflags $(WPROGRAM)
|
wprogram: showflags $(WPROGRAM)
|
||||||
|
|
||||||
$(PROGRAM): $(LIBRUBY) $(MAINOBJ) $(OBJS) $(EXTOBJS) $(SETUP) $(PREP)
|
$(PROGRAM) $(WPROGRAM): $(LIBRUBY) $(MAINOBJ) $(OBJS) $(EXTOBJS) $(SETUP) $(PREP)
|
||||||
|
|
||||||
$(LIBRUBY_A): $(OBJS) $(MAINOBJ) $(DMYEXT) $(ARCHFILE)
|
$(LIBRUBY_A): $(OBJS) $(MAINOBJ) $(DMYEXT) $(ARCHFILE)
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
include Makefile
|
include Makefile
|
||||||
-include uncommon.mk
|
|
||||||
|
|
||||||
ENABLE_SHARED=@ENABLE_SHARED@
|
ENABLE_SHARED=@ENABLE_SHARED@
|
||||||
DLLWRAP = @DLLWRAP@ --target=@target_os@ --driver-name="$(CC)"
|
DLLWRAP = @DLLWRAP@ --target=@target_os@ --driver-name="$(CC)"
|
||||||
|
@ -35,6 +34,8 @@ EXTOBJS += $(if $(filter-out $(RUBYW_INSTALL_NAME),$(@:$(EXEEXT)=)),$(RUBY_INSTA
|
||||||
RCFILES = $(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(DLL_BASE_NAME).rc
|
RCFILES = $(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(DLL_BASE_NAME).rc
|
||||||
RUBYDEF = $(DLL_BASE_NAME).def
|
RUBYDEF = $(DLL_BASE_NAME).def
|
||||||
|
|
||||||
|
-include uncommon.mk
|
||||||
|
|
||||||
ruby: $(PROGRAM)
|
ruby: $(PROGRAM)
|
||||||
rubyw: $(WPROGRAM)
|
rubyw: $(WPROGRAM)
|
||||||
stub: $(STUBPROGRAM)
|
stub: $(STUBPROGRAM)
|
||||||
|
|
11
ext/extmk.rb
11
ext/extmk.rb
|
@ -656,13 +656,11 @@ if $configure_only and $command_output
|
||||||
mf.puts "#{tgt}: $(extensions:/.=/#{tgt})"
|
mf.puts "#{tgt}: $(extensions:/.=/#{tgt})"
|
||||||
end
|
end
|
||||||
mf.puts
|
mf.puts
|
||||||
mf.puts "all: #{rubies.join(' ')}"
|
|
||||||
mf.puts "static: #{rubies.join(' ')}"
|
|
||||||
mf.puts "clean:\n\t-$(Q)$(RM) ext/extinit.#{$OBJEXT}"
|
mf.puts "clean:\n\t-$(Q)$(RM) ext/extinit.#{$OBJEXT}"
|
||||||
mf.puts "distclean:\n\t-$(Q)$(RM) ext/extinit.c"
|
mf.puts "distclean:\n\t-$(Q)$(RM) ext/extinit.c"
|
||||||
mf.puts
|
mf.puts
|
||||||
mf.puts "#{rubies.join(' ')}: $(extensions:/.=/#{$force_static ? 'static' : 'all'})"
|
mf.puts "#{rubies.join(' ')}: $(extensions:/.=/#{$force_static ? 'static' : 'all'})"
|
||||||
rubies.each do |tgt|
|
(["all static"] + rubies).each_with_index do |tgt, i|
|
||||||
mf.print "#{tgt}:\n\t$(Q)$(MAKE) "
|
mf.print "#{tgt}:\n\t$(Q)$(MAKE) "
|
||||||
mf.print "$(MFLAGS) "
|
mf.print "$(MFLAGS) "
|
||||||
if enable_config("shared", $enable_shared)
|
if enable_config("shared", $enable_shared)
|
||||||
|
@ -671,7 +669,12 @@ if $configure_only and $command_output
|
||||||
else
|
else
|
||||||
mf.print %[EXTOBJS="$(EXTOBJS) $(ENCOBJS)" EXTLIBS="$(EXTLIBS)" ]
|
mf.print %[EXTOBJS="$(EXTOBJS) $(ENCOBJS)" EXTLIBS="$(EXTLIBS)" ]
|
||||||
end
|
end
|
||||||
mf.puts 'EXTLDFLAGS="$(EXTLDFLAGS)" $@'
|
mf.print 'EXTLDFLAGS="$(EXTLDFLAGS)" '
|
||||||
|
if i == 0
|
||||||
|
mf.puts rubies.join(' ')
|
||||||
|
else
|
||||||
|
mf.puts '$@'
|
||||||
|
end
|
||||||
end
|
end
|
||||||
mf.puts
|
mf.puts
|
||||||
exec = config_string("exec") {|str| str + " "}
|
exec = config_string("exec") {|str| str + " "}
|
||||||
|
|
Loading…
Reference in a new issue