1 # This file is in charge of the unit testing in SimGrid.
2 # See http://simgrid.gforge.inria.fr/simgrid/3.13/doc/inside_tests.html#inside_tests_add_units
4 # To register a file containing unit tests, simply add it to
5 # FILES_CONTAINING_UNITTESTS and have a pleasant day.
7 set(FILES_CONTAINING_UNITTESTS
19 set(FILES_CONTAINING_UNITTESTS ${FILES_CONTAINING_UNITTESTS}
21 src/mc/mc_snapshot.cpp
25 #### Nothing to change below this line to add a new tested file
26 ################################################################
28 foreach(file ${FILES_CONTAINING_UNITTESTS})
29 get_filename_component(basename ${file} NAME_WE)
30 get_filename_component(ext ${file} EXT)
31 set(EXTRACTED_TEST_SOURCE_FILES ${EXTRACTED_TEST_SOURCE_FILES} ${CMAKE_CURRENT_BINARY_DIR}/src/${basename}_unit${ext})
34 set(EXTRACTED_TEST_SOURCE_FILES ${EXTRACTED_TEST_SOURCE_FILES} ${CMAKE_CURRENT_BINARY_DIR}/src/simgrid_units_main.c)
36 set_source_files_properties(${EXTRACTED_TEST_SOURCE_FILES} PROPERTIES GENERATED true)
39 OUTPUT ${EXTRACTED_TEST_SOURCE_FILES}
40 DEPENDS ${CMAKE_HOME_DIRECTORY}/tools/sg_unit_extractor.pl ${FILES_CONTAINING_UNITTESTS}
41 COMMENT "Generating *_units files for testall..."
43 WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
44 COMMAND ${CMAKE_COMMAND} -E remove -f ${EXTRACTED_TEST_SOURCE_FILES}
45 COMMAND chmod +x ${CMAKE_HOME_DIRECTORY}/tools/sg_unit_extractor.pl
46 COMMAND ${CMAKE_HOME_DIRECTORY}/tools/sg_unit_extractor.pl --root=src/ --outdir=${CMAKE_CURRENT_BINARY_DIR}/src/ ${FILES_CONTAINING_UNITTESTS}
49 add_executable (testall ${EXTRACTED_TEST_SOURCE_FILES})
50 target_link_libraries(testall simgrid)