set (TEST_FILES $) add_testheaders (TEST_FILES) macro (do_glib_test file) get_filename_component (name ${file} NAME_WE) set (SOURCES ${file} ${GELEKTRA_HDR_FILES} ${TEST_FILES}) add_executable (${name} ${SOURCES}) set_target_properties (${name} PROPERTIES COMPILE_DEFINITIONS HAVE_KDBCONFIG_H) target_link_libraries (${name} PRIVATE ${GELEKTRA_LIBRARY}) add_test (NAME ${name} COMMAND "${CMAKE_BINARY_DIR}/bin/${name}" "${CMAKE_CURRENT_SOURCE_DIR}") set_property (TEST ${name} PROPERTY ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/lib") set_property (TEST ${name} PROPERTY LABELS memleak bindings) if (${name} MATCHES ".*_kdb") set_property ( TEST ${name} APPEND PROPERTY LABELS kdbtests) set_property (TEST ${name} PROPERTY RUN_SERIAL TRUE) endif () endmacro (do_glib_test) file (GLOB TESTS testglib_*.c) foreach (file ${TESTS}) do_glib_test (${file}) endforeach (file ${TESTS})