CMake/generate-ctest-packed-script.cmake (14 lines of code) (raw):

function(__GenerateStandaloneCTestScript DIR FILEPATH) get_property(TGTS DIRECTORY "${DIR}" PROPERTY TESTS) foreach(TGT IN LISTS TGTS) file(APPEND ${FILEPATH} "add_test(${TGT} \"./${TGT}\")\n") endforeach() get_property(SUBDIRS DIRECTORY "${DIR}" PROPERTY SUBDIRECTORIES) foreach(SUBDIR IN LISTS SUBDIRS) __GenerateStandaloneCTestScript("${SUBDIR}" ${FILEPATH}) endforeach() endfunction() function(GenerateStandaloneCTestScript DIR FILEPATH) file(WRITE ${FILEPATH} "") __GenerateStandaloneCTestScript(${DIR} ${FILEPATH}) endfunction()