[cfe-dev] Adding a framework to a CompilerInvocation

Alex L via cfe-dev cfe-dev at lists.llvm.org
Thu Jan 12 02:25:35 PST 2017


Hi Felix,

The framework search path options (that correspond to -F) are stored in an
instance of the HeaderSearchOptions class inside the CompilerInvocationBase
class, and you can add an new -F search path using the AddPath method.

On 12 January 2017 at 07:35, Félix Cloutier via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> Hi all,
>
> I have code that builds a CompilerInvocation with the Clang static
> libraries. I would like to tell that invocation to use specific frameworks,
> just like using the -framework Clang front-end option. In particular,
> I'm looking for these "side effects" of using a framework:
>
>    - the compiler locates the framework on the system from its name using
>    the framework search path;
>    - the compiler knows where to find framework headers identified
>    through a path like <Framework/Header.h>.
>
> At this point, I think that I've looked everywhere in the option
> sub-objects of the CompilerInvocation class, and the closest thing that I
> can identify related to that is the header search path. I can't seem to
> find a way to tell the CompilerInvocation to look for a specific framework.
>
> How is that supposed to happen? I'm using a manually-built CompilerInvocation instead
> of building it through command-line arguments because that seems to be the
> only way to pass a memory buffer as a source unit instead of a file.
>

I think you can still use the memory buffer as source even if you create
the invocation using command line arguments if you remap the buffer to the
filename after creating the invocation (addRemappedFile in
PreprocessorOptions).

Alex


>
> Thanks!
>
> Félix
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20170112/bd32ab6e/attachment.html>


More information about the cfe-dev mailing list