CMAKE_MINIMUM_REQUIRED(VERSION 2.6) SET(fw_test "${fw_name}-test") INCLUDE(FindPkgConfig) pkg_check_modules(${fw_test} REQUIRED glib-2.0) FOREACH(flag ${${fw_test}_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") SET(modules "") SET(srcs "") FILE(GLOB children *) FOREACH(child ${children}) IF(IS_DIRECTORY ${child}) aux_source_directory(${child}/src mod_srcs) LIST(APPEND srcs ${mod_srcs}) GET_FILENAME_COMPONENT(child_name ${child} NAME_WE) LIST(APPEND modules ${child_name}) ENDIF() ENDFOREACH() INCLUDE_DIRECTORIES(../include) INCLUDE_DIRECTORIES(${modules}) aux_source_directory(. sources) FOREACH(src ${sources}) GET_FILENAME_COMPONENT(src_name ${src} NAME_WE) SET(srcs ${src} ${mod_srcs}) ADD_EXECUTABLE(${src_name} ${srcs}) TARGET_LINK_LIBRARIES(${src_name} ${${fw_test}_LDFLAGS} ${fw_name}) INSTALL(TARGETS ${src_name} DESTINATION bin) ENDFOREACH()