mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-10 03:45:46 +00:00
Bug 1304522 - Fix the "when" argument to check_header to actually make checks conditional. r=glandium
MozReview-Commit-ID: JlYUFsPRGAV --HG-- extra : rebase_source : 8cd667969fefb043f9769f35ba1fd12fe209a2b4
This commit is contained in:
parent
69ec95883f
commit
732cc6b973
@ -18,13 +18,14 @@
|
||||
# - `check_msg` is the message to be printed to accompany compiling the test
|
||||
# program.
|
||||
@template
|
||||
def try_compile(includes=None, body='', language='C++', flags=None, check_msg=None):
|
||||
def try_compile(includes=None, body='', language='C++', flags=None, check_msg=None,
|
||||
when=None):
|
||||
compiler = {
|
||||
'C': c_compiler,
|
||||
'C++': cxx_compiler,
|
||||
}[language]
|
||||
|
||||
return compiler.try_compile(includes, body, flags, check_msg)
|
||||
return compiler.try_compile(includes, body, flags, check_msg, when=when)
|
||||
|
||||
|
||||
# Checks for the presence of the given header on the target system by compiling
|
||||
@ -52,10 +53,8 @@ def check_header(header, language='C++', flags=None, includes=None, when=None):
|
||||
includes = []
|
||||
includes.append(header)
|
||||
|
||||
@depends_when(try_compile(includes=includes, language=language, flags=flags,
|
||||
check_msg='for %s' % header), when=when)
|
||||
def have_header(value):
|
||||
return value
|
||||
have_header = try_compile(includes=includes, language=language, flags=flags,
|
||||
check_msg='for %s' % header, when=when)
|
||||
header_var = 'HAVE_%s' % (header.upper()
|
||||
.replace('-', '_')
|
||||
.replace('/', '_')
|
||||
|
@ -180,6 +180,16 @@ class TestHeaderChecks(BaseCompileChecks):
|
||||
checking for foo.h... yes
|
||||
'''))
|
||||
|
||||
def test_check_header_conditional(self):
|
||||
cmd = textwrap.dedent('''\
|
||||
check_headers('foo.h', 'bar.h', when=never)
|
||||
''')
|
||||
|
||||
config, out, status = self.do_compile_test(cmd)
|
||||
self.assertEqual(status, 0)
|
||||
self.assertEqual(out, '')
|
||||
self.assertEqual(config, {'DEFINES':{}})
|
||||
|
||||
def test_check_header_include(self):
|
||||
expected_test_content = textwrap.dedent('''\
|
||||
#include <std.h>
|
||||
|
Loading…
Reference in New Issue
Block a user