diff options
Diffstat (limited to 'ninjabackend.py')
-rw-r--r-- | ninjabackend.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ninjabackend.py b/ninjabackend.py index c9f6993..01d26ae 100644 --- a/ninjabackend.py +++ b/ninjabackend.py @@ -434,6 +434,7 @@ class NinjaBackend(backends.Backend): elem.write(outfile) def generate_cs_target(self, target, outfile): + buildtype = self.environment.coredata.buildtype fname = target.get_filename() subdir = target.get_subdir() outname_rel = os.path.join(subdir, fname) @@ -442,6 +443,7 @@ class NinjaBackend(backends.Backend): assert(compiler.get_language() == 'cs') rel_srcs = [os.path.join(self.build_to_src, s) for s in src_list] commands = [] + commands += compiler.get_buildtype_args(buildtype) if isinstance(target, build.Executable): commands.append('-target:exe') elif isinstance(target, build.SharedLibrary): @@ -453,7 +455,11 @@ class NinjaBackend(backends.Backend): for l in target.link_targets: commands += compiler.get_link_args(l.get_filename()) deps.append(l.get_filename()) - elem = NinjaBuildElement(outname_rel, 'cs_COMPILER', rel_srcs) + if '-g' in commands: + outputs = [outname_rel, outname_rel + '.mdb'] + else: + outputs = [outname_rel] + elem = NinjaBuildElement(outputs, 'cs_COMPILER', rel_srcs) elem.add_dep(deps) elem.add_item('ARGS', commands) elem.write(outfile) |