return;
SourcePackage &main_pkg = dynamic_cast<SourcePackage &>(package_manager.get_main_package());
- const Config &config = main_pkg.get_config();
- const auto &options = config.get_options();
- const Package::Requirements &required_pkgs = main_pkg.get_required_packages();
+ Package::Requirements required_pkgs;
+ main_pkg.collect_required_packages(required_pkgs);
- if(!required_pkgs.empty() || !options.empty())
- IO::print("\nHelp for package %s:\n", main_pkg.get_name());
+ IO::print("\nMain package: %s\n", main_pkg.get_name());
+ IO::print("Source directory: %s\n", main_pkg.get_source_directory());
if(!required_pkgs.empty())
{
IO::print("\n");
}
+ if(conf_all)
+ {
+ for(const Package *pkg: required_pkgs)
+ if(const SourcePackage *spkg = dynamic_cast<const SourcePackage *>(pkg))
+ config_help(*spkg);
+ }
+ else
+ config_help(main_pkg);
+}
+
+void BuilderCLI::config_help(const SourcePackage &pkg)
+{
+ const Config &config = pkg.get_config();
+ const auto &options = config.get_options();
+
if(!options.empty())
{
- IO::print("\nPackage configuration:\n");
+ IO::print("\nConfiguration for package %s:\n", pkg.get_name());
for(const auto &kvp: options)
{
const Config::Option &opt = kvp.second;