diff --git a/mesonbuild/dependencies/platform.py b/mesonbuild/dependencies/platform.py index 7e9f9d8e4..9863fb129 100644 --- a/mesonbuild/dependencies/platform.py +++ b/mesonbuild/dependencies/platform.py @@ -34,7 +34,7 @@ class AppleFrameworks(ExternalDependency): args = self.clib_compiler.find_framework(f, env, []) if args is not None: # No compile args are needed for system frameworks - self.link_args = args + self.link_args += args else: self.is_found = False diff --git a/test cases/osx/6 multiframework/main.m b/test cases/osx/6 multiframework/main.m new file mode 100644 index 000000000..8a6799b41 --- /dev/null +++ b/test cases/osx/6 multiframework/main.m @@ -0,0 +1,5 @@ +#import + +int main(int argc, const char * argv[]) { + return NSApplicationMain(argc, argv); +} diff --git a/test cases/osx/6 multiframework/meson.build b/test cases/osx/6 multiframework/meson.build new file mode 100644 index 000000000..28846243b --- /dev/null +++ b/test cases/osx/6 multiframework/meson.build @@ -0,0 +1,13 @@ +project('multiframework', 'objc') + +# In theory only 'AppKit' would be enough but there was a bug +# that causes a build failure when defining two modules. The +# arguments for the latter module overwrote the arguments for +# the first one rather than adding to them. +cocoa_dep = dependency('appleframeworks', modules : ['AppKit', 'foundation']) + +executable('deptester', + 'main.m', + objc_args : ['-fobjc-arc'], + dependencies : [cocoa_dep], +)