diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-01-15 02:57:36 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-01-15 02:57:36 +0000 |
commit | b794a2bd8c40526c000abde831e372744c3fa3e0 (patch) | |
tree | dd27ab02b75a3dd312beaa08b20a974ffc05d6b5 /test/mkmf/base.rb | |
parent | ca6a75cd38c97774b2c58a3d305dd5e1c9055772 (diff) | |
download | ruby-b794a2bd8c40526c000abde831e372744c3fa3e0.tar.gz |
* configure.in (warnflags): add -Werror=implicit-function-declaration
if available.
* lib/mkmf.rb (init_mkmf): ignore warnings in mkmf tests.
* test/mkmf/base.rb (setup, teardown): restore config values.
* test/mkmf/test_flags.rb: split from test_find_executable.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/mkmf/base.rb')
-rw-r--r-- | test/mkmf/base.rb | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/mkmf/base.rb b/test/mkmf/base.rb index d4cf80376f..a9d3aec338 100644 --- a/test/mkmf/base.rb +++ b/test/mkmf/base.rb @@ -58,15 +58,53 @@ class TestMkmf < Test::Unit::TestCase end def setup + @rbconfig = rbconfig0 = RbConfig::CONFIG + @mkconfig = mkconfig0 = RbConfig::MAKEFILE_CONFIG + rbconfig = { + "hdrdir" => $hdrdir, + "srcdir" => $srcdir, + "topdir" => $topdir, + } + mkconfig = { + "hdrdir" => "$(top_srcdir)/include", + "srcdir" => "$(top_srcdir)/ext/#{$mdir}", + "topdir" => $topdir, + } + rbconfig0.each_pair {|key, val| rbconfig[key] ||= val.dup} + mkconfig0.each_pair {|key, val| mkconfig[key] ||= val.dup} + RbConfig.module_eval { + remove_const(:CONFIG) + const_set(:CONFIG, rbconfig) + remove_const(:MAKEFILE_CONFIG) + const_set(:MAKEFILE_CONFIG, mkconfig) + } + Object.class_eval { + remove_const(:CONFIG) + const_set(:CONFIG, mkconfig) + } @tmpdir = Dir.mktmpdir @curdir = Dir.pwd @mkmfobj = Object.new @stdout = Capture.new Dir.chdir(@tmpdir) @quiet, Logging.quiet = Logging.quiet, true + init_mkmf + $INCFLAGS[0, 0] = "-I. " end def teardown + rbconfig0 = @rbconfig + mkconfig0 = @mkconfig + RbConfig.module_eval { + remove_const(:CONFIG) + const_set(:CONFIG, rbconfig0) + remove_const(:MAKEFILE_CONFIG) + const_set(:MAKEFILE_CONFIG, mkconfig0) + } + Object.class_eval { + remove_const(:CONFIG) + const_set(:CONFIG, mkconfig0) + } Logging.quiet = @quiet Logging.log_close Dir.chdir(@curdir) |