From e8827989e5513dece496d458810c51e00c95dd5a Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Tue, 26 Mar 2019 01:45:59 +0200 Subject: [PATCH] Fail gracefully for Apple frameworks with a non-Clang compiler. Closes #5070. --- mesonbuild/dependencies/base.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py index 3c105ab2c..a60835709 100644 --- a/mesonbuild/dependencies/base.py +++ b/mesonbuild/dependencies/base.py @@ -2187,7 +2187,15 @@ class ExtraFrameworkDependency(ExternalDependency): if not self.clib_compiler: raise DependencyException('No C-like compilers are available') if self.system_framework_paths is None: - self.system_framework_paths = self.clib_compiler.find_framework_paths(self.env) + try: + self.system_framework_paths = self.clib_compiler.find_framework_paths(self.env) + except MesonException as e: + if 'non-clang' in str(e): + # Apple frameworks can only be found (and used) with the + # system compiler. It is not available so bail immediately. + self.is_found = False + return + raise self.detect(name, paths) def detect(self, name, paths):