Re: [cmake-developers] CMake 3.13 - Generated moc files not added to VStudio solution

2019-01-29 Thread Venedict Tchistopolskii
Got the fix, hopefully it can be merged in :)
https://github.com/Personwithhat/custom_cmake/commit/d7930c36c6aa7956a806a284aa7e1e430ef6c174

VT

On Tue, Jan 29, 2019 at 8:00 PM Venedict Tchistopolskii 
wrote:

> Traced it down to this exact commit:
>
> *2d6cfe2677 Autogen: Split initializer main method*
> https://github.com/Kitware/CMake/commit/2d6cfe26770d8062081061f9dbcc4e3e6eaa0091
>
> If I rebase before it then it works as expected >:V
>
> Working on a fix.
>
> VT
>
> On Tue, Jan 29, 2019 at 4:16 PM Venedict Tchistopolskii 
> wrote:
>
>> *The below is done right after the above:*
>> set_property(TARGET ${TargetProject } APPEND PROPERTY AUTOMOC_MOC_OPTIONS
>> -b${PrecompiledHeader})
>>
>>
>> On Tue, Jan 29, 2019 at 2:38 PM Venedict Tchistopolskii <
>> veny...@gmail.com> wrote:
>>
>>> *Lots more testing, traced down a possible issue here involving PCH and
>>> mocs_compilation.cpp:*
>>> get_target_property(HAS_AUTOMOC ${TargetProject} AUTOMOC)
>>> if (HAS_AUTOMOC STREQUAL "TRUE")
>>> set (MOC_COMPILATION
>>> "${CMAKE_CURRENT_BINARY_DIR}/${TargetProject}_autogen/mocs_compilation.cpp")
>>> # stdafx.h needs to be included to ensure platform definitions are
>>> visible
>>> set_property(SOURCE "${MOC_COMPILATION}" APPEND_STRING PROPERTY
>>> COMPILE_FLAGS " /FI\"${PrecompiledHeader}\"")
>>> endif()
>>>
>>> *If this is ignored, then mocs_compilation.cpp is visible in solution
>>> explorer post generation (no need to build). Build ofc proceeds fine, no
>>> unresolved externals/etc.*
>>>
>>> *Please advise.*
>>>
>>> *VT*
>>>
>>> On Mon, Jan 28, 2019 at 11:25 PM Venedict Tchistopolskii <
>>> veny...@gmail.com> wrote:
>>>
 Current automoc settings more or less, it's a solution with a few
 projects some of which are marked AUTOMOC:
 ## Relative to root in solution explorer
 set_property(GLOBAL PROPERTY AUTOGEN_TARGETS_FOLDER
 "${VS_FOLDER_PREFIX}/Sandbox/AUTOMOC_Targets")
 ## Relative to each project
 set_property(GLOBAL PROPERTY AUTOGEN_SOURCE_GROUP "AUTOMOC_Generated")

 AUTOGEN_TARGETS_FOLDER doesn't get created, but in CMake 3.12 it did
 the same and worked.

 AUTOMOC_Generated gets created (per project ofc) and added in CMake
 3.12 during the build.
 For CMake 3.13 it gets created, but not added (not visible in solution
 explorer) during build, gotta re-run CMake to include it.

 On Mon, Jan 28, 2019 at 11:04 PM Venedict Tchistopolskii <
 veny...@gmail.com> wrote:

> tl;dr, the below does not work for me:
>
> The resulting moc_.cpp files are generated in custom
> directories and automatically included in a generated
> /mocs_compilation.cpp file, *which is compiled as
> part of the target. (nope)*
>
> On Mon, Jan 28, 2019 at 10:06 PM Venedict Tchistopolskii <
> veny...@gmail.com> wrote:
>
>> The first CMake generation pass: Generates but no inclusion
>>
>>
>>
>> *Forcing a second pass makes it include the newly generated moc.*
>> It says *"AutoMoc: Generating 'X' because the MOC settings
>> changed"*
>>
>> I'm not too clear on why this is happening, any ideas on how to fix
>> it, or force it to reload whatever 'moc settings' are changing?
>>
>> Possibly related: https://gitlab.kitware.com/cmake/cmake/issues/17456
>>
>> e.g. mocs_compilation.cpp and include_ folder -> Created but not
>> added until CMake re-run
>>
>
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] CMake 3.13 - Generated moc files not added to VStudio solution

2019-01-29 Thread Venedict Tchistopolskii
Traced it down to this exact commit:

*2d6cfe2677 Autogen: Split initializer main method*
https://github.com/Kitware/CMake/commit/2d6cfe26770d8062081061f9dbcc4e3e6eaa0091

If I rebase before it then it works as expected >:V

Working on a fix.

VT

On Tue, Jan 29, 2019 at 4:16 PM Venedict Tchistopolskii 
wrote:

> *The below is done right after the above:*
> set_property(TARGET ${TargetProject } APPEND PROPERTY AUTOMOC_MOC_OPTIONS
> -b${PrecompiledHeader})
>
>
> On Tue, Jan 29, 2019 at 2:38 PM Venedict Tchistopolskii 
> wrote:
>
>> *Lots more testing, traced down a possible issue here involving PCH and
>> mocs_compilation.cpp:*
>> get_target_property(HAS_AUTOMOC ${TargetProject} AUTOMOC)
>> if (HAS_AUTOMOC STREQUAL "TRUE")
>> set (MOC_COMPILATION
>> "${CMAKE_CURRENT_BINARY_DIR}/${TargetProject}_autogen/mocs_compilation.cpp")
>> # stdafx.h needs to be included to ensure platform definitions are visible
>> set_property(SOURCE "${MOC_COMPILATION}" APPEND_STRING PROPERTY
>> COMPILE_FLAGS " /FI\"${PrecompiledHeader}\"")
>> endif()
>>
>> *If this is ignored, then mocs_compilation.cpp is visible in solution
>> explorer post generation (no need to build). Build ofc proceeds fine, no
>> unresolved externals/etc.*
>>
>> *Please advise.*
>>
>> *VT*
>>
>> On Mon, Jan 28, 2019 at 11:25 PM Venedict Tchistopolskii <
>> veny...@gmail.com> wrote:
>>
>>> Current automoc settings more or less, it's a solution with a few
>>> projects some of which are marked AUTOMOC:
>>> ## Relative to root in solution explorer
>>> set_property(GLOBAL PROPERTY AUTOGEN_TARGETS_FOLDER
>>> "${VS_FOLDER_PREFIX}/Sandbox/AUTOMOC_Targets")
>>> ## Relative to each project
>>> set_property(GLOBAL PROPERTY AUTOGEN_SOURCE_GROUP "AUTOMOC_Generated")
>>>
>>> AUTOGEN_TARGETS_FOLDER doesn't get created, but in CMake 3.12 it did the
>>> same and worked.
>>>
>>> AUTOMOC_Generated gets created (per project ofc) and added in CMake 3.12
>>> during the build.
>>> For CMake 3.13 it gets created, but not added (not visible in solution
>>> explorer) during build, gotta re-run CMake to include it.
>>>
>>> On Mon, Jan 28, 2019 at 11:04 PM Venedict Tchistopolskii <
>>> veny...@gmail.com> wrote:
>>>
 tl;dr, the below does not work for me:

 The resulting moc_.cpp files are generated in custom
 directories and automatically included in a generated
 /mocs_compilation.cpp file, *which is compiled as
 part of the target. (nope)*

 On Mon, Jan 28, 2019 at 10:06 PM Venedict Tchistopolskii <
 veny...@gmail.com> wrote:

> The first CMake generation pass: Generates but no inclusion
>
>
>
> *Forcing a second pass makes it include the newly generated moc.*
> It says *"AutoMoc: Generating 'X' because the MOC settings
> changed"*
>
> I'm not too clear on why this is happening, any ideas on how to fix
> it, or force it to reload whatever 'moc settings' are changing?
>
> Possibly related: https://gitlab.kitware.com/cmake/cmake/issues/17456
>
> e.g. mocs_compilation.cpp and include_ folder -> Created but not
> added until CMake re-run
>

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] CMake 3.13 - Generated moc files not added to VStudio solution

2019-01-29 Thread Venedict Tchistopolskii
*Lots more testing, traced down a possible issue here involving PCH and
mocs_compilation.cpp:*
get_target_property(HAS_AUTOMOC ${TargetProject} AUTOMOC)
if (HAS_AUTOMOC STREQUAL "TRUE")
set (MOC_COMPILATION
"${CMAKE_CURRENT_BINARY_DIR}/${TargetProject}_autogen/mocs_compilation.cpp")
# stdafx.h needs to be included to ensure platform definitions are visible
set_property(SOURCE "${MOC_COMPILATION}" APPEND_STRING PROPERTY
COMPILE_FLAGS " /FI\"${PrecompiledHeader}\"")
endif()

*If this is ignored, then mocs_compilation.cpp is visible in solution
explorer post generation (no need to build). Build ofc proceeds fine, no
unresolved externals/etc.*

*Please advise.*

*VT*

On Mon, Jan 28, 2019 at 11:25 PM Venedict Tchistopolskii 
wrote:

> Current automoc settings more or less, it's a solution with a few projects
> some of which are marked AUTOMOC:
> ## Relative to root in solution explorer
> set_property(GLOBAL PROPERTY AUTOGEN_TARGETS_FOLDER
> "${VS_FOLDER_PREFIX}/Sandbox/AUTOMOC_Targets")
> ## Relative to each project
> set_property(GLOBAL PROPERTY AUTOGEN_SOURCE_GROUP "AUTOMOC_Generated")
>
> AUTOGEN_TARGETS_FOLDER doesn't get created, but in CMake 3.12 it did the
> same and worked.
>
> AUTOMOC_Generated gets created (per project ofc) and added in CMake 3.12
> during the build.
> For CMake 3.13 it gets created, but not added (not visible in solution
> explorer) during build, gotta re-run CMake to include it.
>
> On Mon, Jan 28, 2019 at 11:04 PM Venedict Tchistopolskii <
> veny...@gmail.com> wrote:
>
>> tl;dr, the below does not work for me:
>>
>> The resulting moc_.cpp files are generated in custom
>> directories and automatically included in a generated
>> /mocs_compilation.cpp file, *which is compiled as
>> part of the target. (nope)*
>>
>> On Mon, Jan 28, 2019 at 10:06 PM Venedict Tchistopolskii <
>> veny...@gmail.com> wrote:
>>
>>> The first CMake generation pass: Generates but no inclusion
>>>
>>>
>>>
>>> *Forcing a second pass makes it include the newly generated moc.*
>>> It says *"AutoMoc: Generating 'X' because the MOC settings changed"*
>>>
>>> I'm not too clear on why this is happening, any ideas on how to fix it,
>>> or force it to reload whatever 'moc settings' are changing?
>>>
>>> Possibly related: https://gitlab.kitware.com/cmake/cmake/issues/17456
>>>
>>> e.g. mocs_compilation.cpp and include_ folder -> Created but not
>>> added until CMake re-run
>>>
>>
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] CMAKE_HOME_DIRECTORY vs CMAKE_SOURCE_DIR

2019-01-29 Thread Brad King via cmake-developers
On 1/29/19 5:37 AM, Joachim Wuttke wrote:
> how do these two relate to each other?

Their value is the same, but CMAKE_SOURCE_DIR is a normal CMake
variable intended for use by projects.  CMAKE_HOME_DIRECTORY
is an internal cache entry used to locate the source directory
when loading a `CMakeCache.txt` from a build tree.

CMAKE_HOME_DIRECTORY's presence in the modern documentation
looks historical and accidental.  It should either be removed
or updated to be described as internal to CMake.

Thanks,
-Brad
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake-developers


[cmake-developers] CMAKE_HOME_DIRECTORY vs CMAKE_SOURCE_DIR

2019-01-29 Thread Joachim Wuttke

how do these two relate to each other?

- Joachim



smime.p7s
Description: S/MIME Cryptographic Signature
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake-developers