if (GTEST_SRC_DIR) set(UNITY_SRC ${CMAKE_SOURCE_DIR}/plugins/unityshell/src) add_custom_command(OUTPUT GestureEngine.cpp GestureEngine.h UBusMessages.h COMMAND cp ${UNITY_SRC}/GestureEngine.cpp ${UNITY_SRC}/GestureEngine.h ${UNITY_SRC}/UBusMessages.h ${CMAKE_CURRENT_BINARY_DIR} COMMAND sed -f ${CMAKE_CURRENT_SOURCE_DIR}/sed_script ${UNITY_SRC}/GestureEngine.cpp > ${CMAKE_CURRENT_BINARY_DIR}/GestureEngine.cpp COMMAND sed -f ${CMAKE_CURRENT_SOURCE_DIR}/sed_script ${UNITY_SRC}/GestureEngine.h > ${CMAKE_CURRENT_BINARY_DIR}/GestureEngine.h DEPENDS ${UNITY_SRC}/GestureEngine.cpp ${UNITY_SRC}/GestureEngine.h ${UNITY_SRC}/UBusMessages.h COMMENT "Copying GestureEngine source.") # Clean-up includes and definitions made in ../CmakeLists.txt remove_definitions(${CFLAGS}) set_directory_properties(PROPERTY INCLUDE_DIRECTORIES "") # And make our own pkg_check_modules (TEST_GESTURE_ENGINE_DEPS REQUIRED QUIET "${UNITY_PLUGIN_DEPS}") set(TEST_GESTURE_ENGINE_CFLAGS "-g" "-I${CMAKE_CURRENT_SOURCE_DIR}" "-I${CMAKE_CURRENT_BINARY_DIR}" ${TEST_GESTURE_ENGINE_DEPS_CFLAGS} ) add_definitions(${TEST_GESTURE_ENGINE_CFLAGS}) pkg_check_modules (COMPIZ REQUIRED QUIET compiz) link_directories (${COMPIZ_LIBDIR}) add_executable(test-gesture-engine test_gesture_engine.cpp X11_mock.cpp GestureEngine.cpp PluginAdapterMock.cpp GeisAdapterMock.cpp ubus-server-mock.cpp ) target_link_libraries(test-gesture-engine gtest ${TEST_GESTURE_ENGINE_DEPS_LIBRARIES} -lcompiz_core) add_test(UnityGTestGestureEngine test-gesture-engine) add_dependencies(test-gesture-engine gtest unity-core-${UNITY_API_VERSION}) add_custom_target (check-gesture-engine COMMAND ./test-gesture-engine DEPENDS test-gesture-engine) endif (GTEST_SRC_DIR)