[cmake-developers] can ctest script using CMAKE_CFG_INTDIR ?

comic fans comicfans44 at gmail.com
Sat Jul 15 20:37:05 EDT 2017


Thank you for explanation, I'm trying to makes this generator to pass
more test, but found test script didn't work well with multi-config
generator. as you pointed, CMAKE_CFG_INTDIR didn't work in ctest so I
need to find another way to make my generator pass test.

recent commits shows that QtAutogen is moving to create suffixed files
and folders for different config, but with this commit,
my generator test failed on Qt5Autogen as following:

Target "rccDepends" has source files which vary by configuration.  This is
 not supported by the "Fastbuild" generator.

 Config "Debug":

   /working/CMake/Tests/QtAutogen/rccDepends/main.cpp
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/res1.qrc
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/res2.qrc
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/rccDepends_autogen/EJRQKI7XPS/qrc_res1_Debug.cpp
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/rccDepends_autogen/EJRQKI7XPS/qrc_res2_Debug.cpp

 Config "Release":

   /working/CMake/Tests/QtAutogen/rccDepends/main.cpp
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/res1.qrc
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/res2.qrc
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/rccDepends_autogen/EJRQKI7XPS/qrc_res1_Release.cpp
   /working/CMake/fastbuild/Tests/Qt5Autogen/rccDepends/rccDepends_autogen/EJRQKI7XPS/qrc_res2_Release.cpp

How should I make my generator compatible with this ? or this feature
didn't complete ,I should wait it complete ?

On Thu, Jul 6, 2017 at 8:45 PM, Brad King <brad.king at kitware.com> wrote:
> On 07/05/2017 07:29 PM, comic fans wrote:
>> but when I changed test script as :
>>     --test-command ${CMAKE_CMAKE_COMMAND} -E compare_files
>>     ${CMake_SOURCE_DIR}/Tests/TargetName/scripts/hello_world
>> ${CMake_BINARY_DIR}/Tests/TargetName/scripts/${CMAKE_CFG_INTDIR}/hello_world)
>
> CMAKE_CFG_INTDIR expands to a placeholder that the native build tool
> will expand to the configuration chosen at build time.  It can only
> be used in contexts that will be evaluated by the native build tool.
>
> There are other means of referring to the configuration during testing.
> By "ctest script" do you mean "ctest -S somescript.cmake",
> "CTestTestfile.cmake", or something else?
>
> -Brad
>


More information about the cmake-developers mailing list