Skip to content

Commit

Permalink
add --verbose to build command
Browse files Browse the repository at this point in the history
  • Loading branch information
biojppm committed May 4, 2020
1 parent a144400 commit eced1fe
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 7 deletions.
7 changes: 4 additions & 3 deletions src/c4/cmany/build.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ def __init__(self, proj_root, build_root, install_root,
#
self.kwargs = kwargs
self.export_compile = self.kwargs.get('export_compile', True)
self.verbose = kwargs.get('verbose', True)
#
self.projdir = util.chkf(proj_root)
self.buildroot = util.abspath(build_root)
Expand Down Expand Up @@ -101,16 +102,16 @@ def create_generator(self, num_jobs, fallback_generator="Unix Makefiles"):
# self.adjust(compiler=toolchain_cache['CMAKE_CXX_COMPILER'])
if self.compiler.is_msvc:
vsi = vsinfo.VisualStudioInfo(self.compiler.name)
g = Generator(vsi.gen, self, num_jobs)
g = Generator(vsi.gen, self, num_jobs, self.verbose)
arch = Architecture(vsi.architecture)
self.adjust(architecture=arch)
self.vsinfo = vsi
return g
else:
if self.system.name == "windows":
return Generator(fallback_generator, self, num_jobs)
return Generator(fallback_generator, self, num_jobs, self.verbose)
else:
return Generator(Generator.default_str(), self, num_jobs)
return Generator(Generator.default_str(), self, num_jobs, self.verbose)

def adjust(self, **kwargs):
for k, _ in kwargs.items():
Expand Down
12 changes: 8 additions & 4 deletions src/c4/cmany/generator.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ def default_str():
s = cmake.CMakeSysInfo.generator()
return s

def __init__(self, name, build, num_jobs):
def __init__(self, name, build, num_jobs, verbose=False):
if isinstance(name, list):
#more_args = name[1:]
name = name[0]
Expand All @@ -34,6 +34,7 @@ def __init__(self, name, build, num_jobs):
self.is_ninja = name.endswith("Ninja")
self.is_msvc = name.startswith("Visual Studio")
self.build = build
self.verbose = verbose
#
self.sysinfo_name = self.name
if self.is_msvc:
Expand Down Expand Up @@ -75,15 +76,18 @@ def target_all(self):

def cmd(self, targets):
if self.is_makefile:
return ['make', '-j', str(self.num_jobs)] + targets
verbose = ['VERBOSE=1'] if self.verbose else []
return ['make', '-j', str(self.num_jobs)] + verbose + targets
elif self.is_ninja:
return ['ninja', '-j', str(self.num_jobs)] + targets
verbose = ['--verbose'] if self.verbose else []
return ['ninja', '-j', str(self.num_jobs)] + verbose + targets
else:
bt = str(self.build.build_type)
if len(targets) > 1:
raise TooManyTargets(self)
verbose = ['--verbose'] if self.verbose else []
cmd = ['cmake', '--build', '.', '--config', bt, '--target', targets[0],
'--parallel', str(self.num_jobs)]
'--parallel', str(self.num_jobs)] + verbose
return cmd

def cmd_source_file(self, target, source_file):
Expand Down
2 changes: 2 additions & 0 deletions src/c4/cmany/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,8 @@ class build(selectcmd):
"""build the selected builds, configuring before if necessary"""
def add_args(self, parser):
super().add_args(parser)
parser.add_argument('-vb', '--verbose', action="store_true",
help="""call the build tool in verbose mode""")
parser.add_argument('target', default=[], nargs='*',
help="""specify a subset of targets to build""")
def _exec(self, proj, args):
Expand Down

0 comments on commit eced1fe

Please sign in to comment.