From 30c5ec7c23a5245a332eab2a78bb2fcc2b1efbd9 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 4e61f4ce0..d2f863c54 100644 --- a/mesonbuild/dependencies/base.py +++ b/mesonbuild/dependencies/base.py @@ -2190,7 +2190,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):