Rust buildtype flags.
This commit is contained in:
parent
f22376701b
commit
31dbb46652
|
@ -57,6 +57,11 @@ msvc_buildtype_linker_flags = {'plain' : [],
|
|||
'debugoptimized' : [],
|
||||
'release' : []}
|
||||
|
||||
rust_buildtype_flags = {'plain' : [],
|
||||
'debug' : ['-g'],
|
||||
'debugoptimized' : ['-g', '--opt-level', '2'],
|
||||
'release' : ['--opt-level', '3']}
|
||||
|
||||
class CCompiler():
|
||||
def __init__(self, exelist, version, is_cross, exe_wrapper=None):
|
||||
if type(exelist) == type(''):
|
||||
|
@ -631,6 +636,9 @@ class RustCompiler():
|
|||
def get_dependency_gen_flags(self, outfile):
|
||||
return ['--dep-info', outfile]
|
||||
|
||||
def get_buildtype_flags(self, buildtype):
|
||||
return rust_buildtype_flags[buildtype]
|
||||
|
||||
class VisualStudioCCompiler(CCompiler):
|
||||
std_warn_flags = ['/W3']
|
||||
std_opt_flags= ['/O2']
|
||||
|
|
|
@ -508,6 +508,7 @@ class NinjaBackend(backends.Backend):
|
|||
flags.append('bin')
|
||||
else:
|
||||
raise InvalidArguments('Unknown target type for rustc.')
|
||||
flags += rustc.get_buildtype_flags(self.environment.coredata.buildtype)
|
||||
flags += ['--out-dir', target.subdir, '-o', target.get_basename()]
|
||||
element = NinjaBuildElement(target_name, 'rust_COMPILER', relsrc)
|
||||
element.add_item('FLAGS', flags)
|
||||
|
|
Loading…
Reference in New Issue