diff --git a/mesonbuild/dependencies/detect.py b/mesonbuild/dependencies/detect.py index dea70a2ea..cdfdd13ce 100644 --- a/mesonbuild/dependencies/detect.py +++ b/mesonbuild/dependencies/detect.py @@ -14,10 +14,6 @@ from __future__ import annotations from .base import ExternalDependency, DependencyException, DependencyMethods, NotFoundDependency -from .cmake import CMakeDependency -from .dub import DubDependency -from .framework import ExtraFrameworkDependency -from .pkgconfig import PkgConfigDependency from ..mesonlib import listify, MachineChoice, PerMachine from .. import mlog @@ -201,21 +197,25 @@ def _build_external_dependency_list(name: str, env: 'Environment', for_machine: # Exclusive to when it is explicitly requested if 'dub' in methods: + from .dub import DubDependency candidates.append(functools.partial(DubDependency, name, env, kwargs)) # Preferred first candidate for auto. if 'pkg-config' in methods: + from .pkgconfig import PkgConfigDependency candidates.append(functools.partial(PkgConfigDependency, name, env, kwargs)) # On OSX only, try framework dependency detector. if 'extraframework' in methods: if env.machines[for_machine].is_darwin(): + from .framework import ExtraFrameworkDependency candidates.append(functools.partial(ExtraFrameworkDependency, name, env, kwargs)) # Only use CMake: # - if it's explicitly requested # - as a last resort, since it might not work 100% (see #6113) if 'cmake' in methods: + from .cmake import CMakeDependency candidates.append(functools.partial(CMakeDependency, name, env, kwargs)) return candidates diff --git a/test cases/unit/113 empty project/expected_mods.json b/test cases/unit/113 empty project/expected_mods.json index 2e7c2892a..9ad84d482 100644 --- a/test cases/unit/113 empty project/expected_mods.json +++ b/test cases/unit/113 empty project/expected_mods.json @@ -208,7 +208,6 @@ "mesonbuild.dependencies.cuda", "mesonbuild.dependencies.detect", "mesonbuild.dependencies.dev", - "mesonbuild.dependencies.dub", "mesonbuild.dependencies.factory", "mesonbuild.dependencies.framework", "mesonbuild.dependencies.hdf5", @@ -272,6 +271,6 @@ "mesonbuild.wrap", "mesonbuild.wrap.wrap" ], - "count": 98 + "count": 97 } } diff --git a/unittests/platformagnostictests.py b/unittests/platformagnostictests.py index bbc34c920..be90ee62d 100644 --- a/unittests/platformagnostictests.py +++ b/unittests/platformagnostictests.py @@ -253,4 +253,4 @@ class PlatformAgnosticTests(BasePlatformTests): expected = json.load(f)['meson']['modules'] self.assertEqual(data['modules'], expected) - self.assertEqual(data['count'], 98) + self.assertEqual(data['count'], 97)