[cmake-developers] Autogen subdirectories patches

Sebastian Holtermann seblist at xwmw.org
Sat Apr 23 07:21:49 EDT 2016


Am 22.04.2016 um 15:37 schrieb Brad King:
> On 04/21/2016 03:14 AM, Sebastian Holtermann wrote:
>>> Thanks!  I've applied them locally and merged the cleanup/refactoring
>>> commits to 'next' for testing first.  Once those test cleanly I'll move
>>> on to the rest.
>>
>> It is good too see the patches made it into the next branch.
>
> The rest of the changes are now in 'master'.  Thanks for working on this!
>
>> Now there is another issue I have a partially fix for.
>>
>> As of now all included mocs and uis get generated in
>> CMAKE_CURRENT_BINARY_DIR/
>> because they must be within INCLUDE_DIRECTORIES.
>> I think a more robust approach would be to generate them in
>> CMAKE_CURRENT_BINARY_DIR/TARGET_automoc.dir/
>> and to add the _automoc.dir to INCLUDE_DIRECTORIES.
>>
>> I've attached a patch that does does so
>> - it is relative to current "next" branch.
>
> You should be able to rebase on 'master' now.
>
>> It is incomplete though because I didn't manage to get
>> CMAKE_CURRENT_BINARY_DIR/TARGET_automoc.dir/
>> into INCLUDE_DIRECTORIES in Source/cmQtAutoGeneratorInitializer.cxx.
>> (GetAutogenTargetBuildDir() in Source/cmQtAutoGeneratorInitializer.cxx)
>>
>> If someone could do that or give me pointers on how to do it
>> then this could be another improvement.
>
> I'm afraid I'm not familiar enough with this infrastructure to know
> for sure.  The entire Qt autogen infrastructure was built by others.
> Take a look at cmGlobalGenerator::Compute to see a carefully
> ordered set of operations.  Among them is the QtAutoGenerator step.
> I'm not sure of its order relative to INCLUDE_DIRECTORIES evaluation.

I see. Thanks for the pointer.
Unfortunately I can't spend much more time on this
right now but maybe later.
Thanks again for the kind support.

-Sebastian



More information about the cmake-developers mailing list