dependencies: simplify log_tried into a staticmethod

It doesn't really need class instantiation to just know what type it is,
and this way we can get the information early if a dependency fails to
init.
This commit is contained in:
Eli Schwartz 2022-08-29 19:25:36 -04:00
parent 36e7748d02
commit 7972c49bda
No known key found for this signature in database
GPG Key ID: CEB167EFB5722BD6
7 changed files with 21 additions and 12 deletions

View File

@ -387,7 +387,8 @@ class ExternalDependency(Dependency, HasNativeKwarg):
def log_info(self) -> str:
return ''
def log_tried(self) -> str:
@staticmethod
def log_tried() -> str:
return ''
# Check if dependency version meets the requirements
@ -602,7 +603,8 @@ class SystemDependency(ExternalDependency):
super().__init__(DependencyTypeName('system'), env, kwargs, language=language)
self.name = name
def log_tried(self) -> str:
@staticmethod
def log_tried() -> str:
return 'system'
@ -615,5 +617,6 @@ class BuiltinDependency(ExternalDependency):
super().__init__(DependencyTypeName('builtin'), env, kwargs, language=language)
self.name = name
def log_tried(self) -> str:
@staticmethod
def log_tried() -> str:
return 'builtin'

View File

@ -617,8 +617,9 @@ class CMakeDependency(ExternalDependency):
build_dir = self._setup_cmake_dir(cmake_file)
return self.cmakebin.call(args, build_dir, env=env)
def log_tried(self) -> str:
return self.type_name
@staticmethod
def log_tried() -> str:
return 'cmake'
def log_details(self) -> str:
modules = [self._original_module_name(x) for x in self.found_modules]

View File

@ -149,8 +149,9 @@ class ConfigToolDependency(ExternalDependency):
mlog.debug(f'Got config-tool variable {variable_name} : {variable}')
return variable
def log_tried(self) -> str:
return self.type_name
@staticmethod
def log_tried() -> str:
return 'config-tool'
def get_variable(self, *, cmake: T.Optional[str] = None, pkgconfig: T.Optional[str] = None,
configtool: T.Optional[str] = None, internal: T.Optional[str] = None,

View File

@ -115,5 +115,6 @@ class ExtraFrameworkDependency(ExternalDependency):
def log_info(self) -> str:
return self.framework_path or ''
def log_tried(self) -> str:
@staticmethod
def log_tried() -> str:
return 'framework'

View File

@ -284,7 +284,8 @@ class Python3DependencySystem(SystemDependency):
self.version = sysconfig.get_config_var('py_version')
self.is_found = True
def log_tried(self) -> str:
@staticmethod
def log_tried() -> str:
return 'sysconfig'
class PcapDependencyConfigTool(ConfigToolDependency):

View File

@ -479,8 +479,9 @@ class PkgConfigDependency(ExternalDependency):
# a path rather than the raw dlname
return os.path.basename(dlname)
def log_tried(self) -> str:
return self.type_name
@staticmethod
def log_tried() -> str:
return 'pkgconfig'
def get_variable(self, *, cmake: T.Optional[str] = None, pkgconfig: T.Optional[str] = None,
configtool: T.Optional[str] = None, internal: T.Optional[str] = None,

View File

@ -54,5 +54,6 @@ class AppleFrameworks(ExternalDependency):
def log_info(self) -> str:
return ', '.join(self.frameworks)
def log_tried(self) -> str:
@staticmethod
def log_tried() -> str:
return 'framework'