summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--defs/gmake.mk1
-rwxr-xr-xtool/rbinstall.rb3
2 files changed, 4 insertions, 0 deletions
diff --git a/defs/gmake.mk b/defs/gmake.mk
index 316ff18c20..dc749b8d8a 100644
--- a/defs/gmake.mk
+++ b/defs/gmake.mk
@@ -9,6 +9,7 @@ nproc = $(subst -j,,$(filter -j%,$(MFLAGS)))
ifneq ($(filter %darwin%,$(arch)),)
INSTRUBY_ENV += SDKROOT=/
endif
+INSTRUBY_ARGS += --gnumake
CHECK_TARGETS := great exam love check test check% test% btest%
# expand test targets, and those dependents
diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb
index 141b67097b..b7370a8577 100755
--- a/tool/rbinstall.rb
+++ b/tool/rbinstall.rb
@@ -56,6 +56,7 @@ def parse_args(argv = ARGV)
File.exist?("rubystub.exe") ? 'exe' : 'cmd'
end)
mflags = []
+ gnumake = false
opt = OptionParser.new
opt.on('-n', '--dry-run') {$dryrun = true}
opt.on('--dest-dir=DIR') {|dir| $destdir = dir}
@@ -91,6 +92,7 @@ def parse_args(argv = ARGV)
opt.on('--html-output [DIR]') {|dir| $htmldir = dir}
opt.on('--cmd-type=TYPE', %w[cmd plain]) {|cmd| $cmdtype = (cmd unless cmd == 'plain')}
opt.on('--[no-]strip') {|strip| $strip = strip}
+ opt.on('--gnumake') {gnumake = true}
opt.order!(argv) do |v|
case v
@@ -113,6 +115,7 @@ def parse_args(argv = ARGV)
$make, *rest = Shellwords.shellwords($make)
$mflags.unshift(*rest) unless rest.empty?
$mflags.unshift(*mflags)
+ $mflags.reject! {|v| /\A-[OW]/ =~ v} if gnumake
def $mflags.set?(flag)
grep(/\A-(?!-).*#{flag.chr}/i) { return true }