Hi all, As requested by Brad King I've written a small (ish?) design proposal for #16633 [1]. I've written it as a reStructuredText document here [2].
I'll give a short summary here: I wish to be able to have the CTestTestfile.cmake output files generated at an alternative location. The primary reason is to create a separate dir-tree from the build output dir containing no intermediate build products (unlinked object files/static archives) to save on space for parallel CI systems. The two primary requirements I have for a solution to this are: 1. Generate files in the alternate location to allow ctest to be executed from that location 2. Runtime behaviour in ${CMAKE_BINARY_DIR} (build output dir) should stay equivalent to when this option isn't used - execution order may change, what gets executed must not My design proposal addresses this as follows: 1. Add a new CTEST_OUTPUT_DIRECTORY test property - similar to the RUNTIME_OUTPUT_DIRECTORY target property 2. Change CTestTestfile.cmake generation to: a. Write its output to the new location specified in that test property b. At the "old" location write a "redirect" statement to the new location (using "SUBDIRS(${CTEST_OUTPUT_DIRECTORY})"). More details are in [2], but this is the gist of it. Do you think this design idea has merit, have any suggestions for improvements? [1]: https://gitlab.kitware.com/cmake/cmake/issues/16633 [2]: https://gitlab.kitware.com/muggenhor/cmake/blob/ctest-alt-dir/Help/ctest_alt_dir.rst -- Met vriendelijke groet, With kind regards, Giel van Schijndel -- "There are only two kinds of languages: the ones people complain about and the ones nobody uses." -- Bjarne Stroustrup
signature.asc
Description: PGP 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: http://public.kitware.com/mailman/listinfo/cmake-developers