Refactor duplication, use qt6 by default on jammy

This commit is contained in:
Adam Lamar 2025-01-07 19:49:49 -07:00 committed by Kelson
parent 0c818af7d6
commit b51b52e34d
2 changed files with 20 additions and 38 deletions

View File

@ -124,39 +124,16 @@ class Builder:
def _get_packages(self):
packages_list = []
for config in ConfigInfo.all_running_configs.values():
# get {host}_{config} packages
mapper_name = "{host}_{config}".format(
host=neutralEnv("distname"), config=config
)
package_name_mapper = PACKAGE_NAME_MAPPERS.get(mapper_name, {})
packages_list += package_name_mapper.get("COMMON", [])
# get {host}_{codename}_{config} packages
mapper_name = "{host}_{codename}_{config}".format(
host=neutralEnv("distname"), codename=neutralEnv("codename"), config=config
)
for runningConfig in ConfigInfo.all_running_configs.values():
for mapper_name in self._get_mapper_names_for_config(runningConfig):
package_name_mapper = PACKAGE_NAME_MAPPERS.get(mapper_name, {})
packages_list += package_name_mapper.get("COMMON", [])
to_drop = []
for builderDef in self._targets:
configName, builderName = builderDef
# get {host}_{config} packages
mapper_name = "{host}_{config}".format(
host=neutralEnv("distname"), config=configName
)
package_name_mapper = PACKAGE_NAME_MAPPERS.get(mapper_name, {})
packages = package_name_mapper.get(builderName)
if packages:
to_drop.append(builderDef)
if packages is not True:
# True means "assume the dependency is install but do not try to install anything for it"
packages_list += packages
builderConfig, builderName = builderDef
# get {host}_{codename}_{config} packages
mapper_name = "{host}_{codename}_{config}".format(
host=neutralEnv("distname"), codename=neutralEnv("codename"), config=configName
)
for mapper_name in self._get_mapper_names_for_config(builderConfig):
package_name_mapper = PACKAGE_NAME_MAPPERS.get(mapper_name, {})
packages = package_name_mapper.get(builderName)
if packages:
@ -169,6 +146,11 @@ class Builder:
del self._targets[dep]
return packages_list
def _get_mapper_names_for_config(self, config):
host = neutralEnv("distname")
codename = neutralEnv("codename")
return ( f"{host}_{config}", f"{host}_{codename}_{config}" )
def install_packages(self):
packages_to_have = self._get_packages()
packages_to_have = remove_duplicates(packages_to_have)

View File

@ -96,8 +96,8 @@ PACKAGE_NAME_MAPPERS = {
"zlib": ["zlib1g-dev"],
"uuid": ["uuid-dev"],
"libmicrohttpd": ["libmicrohttpd-dev", "ccache"],
"qt": ["libqt5gui5", "qtbase5-dev", "libqt5svg5-dev", "qt5-image-formats-plugins"],
"qtwebengine": ["qtwebengine5-dev"],
"qt": ["qt6-base-dev", "qt6-base-dev-tools", "libqt6webenginecore6-bin", "libqt6svg6", "qtchooser"],
"qtwebengine": ["qt6-webengine-dev"],
"aria2": ["aria2"],
},
"ubuntu_noble_native_dyn": {