diff --git a/ognibuild/buildlog.py b/ognibuild/buildlog.py index 5cdbc25..0cd358c 100644 --- a/ognibuild/buildlog.py +++ b/ognibuild/buildlog.py @@ -54,6 +54,7 @@ from buildlog_consultant.common import ( GnomeCommonMissing, MissingGnomeCommonDependency, UnknownCertificateAuthority, + MissingLibtool, MissingQt, ) @@ -90,6 +91,7 @@ from .requirements import ( CertificateAuthorityRequirement, NodeModuleRequirement, QTRequirement, + LibtoolRequirement, ) from .resolver import UnsatisfiedRequirements @@ -147,6 +149,8 @@ def problem_to_upstream_requirement(problem): # noqa: C901 return JRERequirement() elif isinstance(problem, MissingQt): return QTRequirement() + elif isinstance(problem, MissingLibtool): + return LibtoolRequirement() elif isinstance(problem, UnknownCertificateAuthority): return CertificateAuthorityRequirement(problem.url) elif isinstance(problem, MissingGnomeCommonDependency): diff --git a/ognibuild/requirements.py b/ognibuild/requirements.py index bdd3901..ddebd95 100644 --- a/ognibuild/requirements.py +++ b/ognibuild/requirements.py @@ -459,6 +459,12 @@ class AutoconfMacroRequirement(Requirement): self.macro = macro +class LibtoolRequirement(Requirement): + + def __init__(self): + super(LibtoolRequirement, self).__init__("libtool") + + class PythonModuleRequirement(Requirement): module: str diff --git a/ognibuild/resolver/apt.py b/ognibuild/resolver/apt.py index 14535d1..76a534a 100644 --- a/ognibuild/resolver/apt.py +++ b/ognibuild/resolver/apt.py @@ -62,6 +62,7 @@ from ..requirements import ( PythonModuleRequirement, PythonPackageRequirement, CertificateAuthorityRequirement, + LibtoolRequirement, ) @@ -440,6 +441,10 @@ def resolve_qt_req(apt_mgr, req): return find_reqs_simple(apt_mgr, ["/usr/lib/.*/qt[0-9]+/bin/qmake"], regex=True) +def resolve_libtool_req(apt_mgr, req): + return [AptRequirement.simple("libtool")] + + def resolve_perl_module_req(apt_mgr, req): DEFAULT_PERL_PATHS = ["/usr/share/perl5"] @@ -545,6 +550,7 @@ APT_REQUIREMENT_RESOLVERS = [ (JDKRequirement, resolve_jdk_req), (JRERequirement, resolve_jre_req), (QTRequirement, resolve_qt_req), + (LibtoolRequirement, resolve_libtool_req), (PerlModuleRequirement, resolve_perl_module_req), (PerlFileRequirement, resolve_perl_file_req), (AutoconfMacroRequirement, resolve_autoconf_macro_req),