From 767bbabb24c76d71e171579b2e65578940e841f3 Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Mon, 18 Oct 2010 22:08:36 +0000 Subject: Driver/Darwin: Forward -ObjC when linking, which may be needed when using static libraries with Objective-C code. llvm-svn: 116758 --- clang/lib/Driver/Tools.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'clang/lib/Driver/Tools.cpp') diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 8bce56636ad..99e7e3fe0c9 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -2504,6 +2504,12 @@ void darwin::Link::ConstructJob(Compilation &C, const JobAction &JA, Args.AddAllArgs(CmdArgs, options::OPT_m_Separate); Args.AddAllArgs(CmdArgs, options::OPT_r); + // Forward -ObjC when either -ObjC or -ObjC++ is used, to force loading + // members of static archive libraries which implement Objective-C classes or + // categories. + if (Args.hasArg(options::OPT_ObjC) || Args.hasArg(options::OPT_ObjCXX)) + CmdArgs.push_back("-ObjC"); + CmdArgs.push_back("-o"); CmdArgs.push_back(Output.getFilename()); -- cgit v1.2.3