Require --package when arch BBA contains multiple packages.

Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
This commit is contained in:
Keith Rothman 2021-02-16 14:00:01 -08:00
parent bb4fa7af5b
commit 26a187e5eb

View File

@ -126,9 +126,17 @@ Arch::Arch(ArchArgs args) : args(args)
} else { } else {
// Default to first package. // Default to first package.
NPNR_ASSERT(chip_info->packages.size() > 0); NPNR_ASSERT(chip_info->packages.size() > 0);
IdString package_name(chip_info->packages[0].package); if(chip_info->packages.size() == 1) {
this->args.package = package_name.str(this); IdString package_name(chip_info->packages[0].package);
package_index = 0; this->args.package = package_name.str(this);
package_index = 0;
} else {
log_info("Package must be specified (with --package arg) when multiple packages are available, packages:\n");
for(const auto &package : chip_info->packages) {
log_info(" - %s\n", IdString(package.package).c_str(this));
}
log_error("--package is required!\n");
}
} }
std::unordered_set<SiteBelPair> site_bel_pads; std::unordered_set<SiteBelPair> site_bel_pads;