Skip to content
Snippets Groups Projects
Commit bf362ca2 authored by Tomáš Pecka's avatar Tomáš Pecka Committed by Jan Trávníček
Browse files

CMake: Generator: Add option to only show dependencies

parent 824d8cb4
No related branches found
No related tags found
No related merge requests found
...@@ -260,7 +260,7 @@ CATEGORIES = { ...@@ -260,7 +260,7 @@ CATEGORIES = {
# ---------------------------------------------------------------------------------------------------------------------- # ----------------------------------------------------------------------------------------------------------------------
   
   
def main(dry_run, main_file, packages_requested, no_dependencies): def main(dry_run, main_file, packages_requested, no_dependencies, only_show_dependencies):
if packages_requested is None: if packages_requested is None:
packages = PROJECTS.values() packages = PROJECTS.values()
else: else:
...@@ -271,6 +271,10 @@ def main(dry_run, main_file, packages_requested, no_dependencies): ...@@ -271,6 +271,10 @@ def main(dry_run, main_file, packages_requested, no_dependencies):
print("Warning: Package {} is not a valid project. Skipping".format(p), file=sys.stderr) print("Warning: Package {} is not a valid project. Skipping".format(p), file=sys.stderr)
continue continue
   
if only_show_dependencies:
pdeps = map(lambda s: "'{}'".format(s), PROJECTS[p].dependencies)
print("Project '{}' depends on: {}".format(p, Helpers.join(pdeps, ', ')), file=sys.stderr)
if no_dependencies: if no_dependencies:
packages.add(p) packages.add(p)
else: else:
...@@ -282,6 +286,9 @@ def main(dry_run, main_file, packages_requested, no_dependencies): ...@@ -282,6 +286,9 @@ def main(dry_run, main_file, packages_requested, no_dependencies):
print("The following packages will be generated:", file=sys.stderr) print("The following packages will be generated:", file=sys.stderr)
print(", ".join(sorted([p.name for p in packages])), file=sys.stderr) print(", ".join(sorted([p.name for p in packages])), file=sys.stderr)
   
if only_show_dependencies:
return 0
packages_cnt = len(packages) + (main_file is True) packages_cnt = len(packages) + (main_file is True)
   
# Generate packages # Generate packages
...@@ -309,6 +316,7 @@ if __name__ == '__main__': ...@@ -309,6 +316,7 @@ if __name__ == '__main__':
parser.add_argument('-m', '--main', action='store_true', default=False, help="Generate main CMakeLists.txt") parser.add_argument('-m', '--main', action='store_true', default=False, help="Generate main CMakeLists.txt")
parser.add_argument('-p', '--package', action='append', help='Specify packages to build. For multiple packages, use -p multiple times') parser.add_argument('-p', '--package', action='append', help='Specify packages to build. For multiple packages, use -p multiple times')
parser.add_argument('--no-deps', action='store_true', default=False, help="Don't generate dependencies") parser.add_argument('--no-deps', action='store_true', default=False, help="Don't generate dependencies")
parser.add_argument('--show-deps', action='store_true', default=False, help='Only show dependencies of selected packages')
parser.add_argument('-v', '--version', action='store_true', default=False, help="Show current version") parser.add_argument('-v', '--version', action='store_true', default=False, help="Show current version")
   
args = parser.parse_args() args = parser.parse_args()
...@@ -319,4 +327,4 @@ if __name__ == '__main__': ...@@ -319,4 +327,4 @@ if __name__ == '__main__':
Config.get(CONFIG, 'Versioning', 'patch'))) Config.get(CONFIG, 'Versioning', 'patch')))
sys.exit(0) sys.exit(0)
   
sys.exit(main(not args.write, args.main, args.package, args.no_deps)) sys.exit(main(not args.write, args.main, args.package, args.no_deps, args.show_deps))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment