[cmake-developers] External objects with IDE generators
Stephen Kelly
steveire at gmail.com
Thu Feb 27 11:20:08 EST 2014
Brad King wrote:
> On 02/27/2014 03:32 AM, Stephen Kelly wrote:
>> IDE generators are problematic though.
>>
>> 'git grep GetExternalObjects' shows that the IDEs mostly don't call
>> GetExternalObjects at all.
>
> In this discussion we must distinguish "external objects" that are
> explicit .o files mentioned in the list of sources and OBJECT library
> objects.
Why do we have to distinguish them? I'm trying to not distinguish them. Is
the reason related to what you write below about VS10?
> All the generators, including the IDE generators, funnel
> handling of OBJECT library objects through UseObjectLibraries.
Yes, I'm trying to eliminate UseObjectLibraries. It requires that the list
of object libraries is pre-populated (by calling LookupObjectLibraries) and
the list of Objects and the ObjectDirectory are pre-populated by the Global
generators.
Instead we need to be able to determine the objects on demand, based on the
calling context.
> GetExternalObjects is a cmGeneratorTarget method to access the
> source files classified as external objects.
Yes. My intention was to make GetExternalObjects 'the way' to get the
objects (without distinction) by evaluating TARGET_OBJECTS in
cmGeneratorExpressionEvaluator.
>
>> Xcode does it's own thing entirely.
>
> Hmm, that is true for VS < 10 also. All those generators still
> have their own loops to classify sources. They will have to
> be refactored to use cmGeneratorTarget. Note that the IDE
> generators also need to deal with source groups.
Can you do this? I'm not familiar enough with the generators or the IDEs
themselves.
Thanks,
Steve.
More information about the cmake-developers
mailing list