Re: [cmake-developers] CMake 3.13 - Generated moc files not added to VStudio solution
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
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
*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
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
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