# -*- coding: utf-8 -*- from argparse import Namespace, ArgumentParser from ..Cmd import Cmd from ..CmdProjects import CmdProjects from ...App import Scope class CmdCflags(Cmd): # export def __init__(self, parent: CmdProjects) -> None: super().__init__(parent, 'cflags', help='cflags') def add_arguments(self, parser: ArgumentParser) -> None: super().add_arguments(parser) parser.add_argument('module', nargs='*', help='Modules') async def _run(self, args: Namespace) -> None: deps = self.app.get_modules_from_project_txt(args.module, ['pkg.requires.jw'], 'build', scope = Scope.Subtree, add_self=True, names_only=True) out = [] for m in reversed(deps): path = self.app.find_dir(m, ['/include']) if path is not None: out.append('-I' + path) if out: print(' '.join(out))