cmake_minimum_required(VERSION 2.6) # cmake -G"Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug .. # project name project(speedcheck) set(CMAKE_BUILD_TYPE Debug) set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -Wall -Wextra -pedantic -Werror -Wno-multichar") set(CMAKE_CXX_FLAGS_RELEASE "-O2 -Wno-multichar") file(GLOB_RECURSE SPEEDCHECK_SOURCES src/*.cpp) file(GLOB_RECURSE SPEEDCHECK_MOC_HEADERS src/*.h) file(GLOB_RECURSE SPEEDCHECK_UIS src/ui/*.ui) file(GLOB_RECURSE SPEEDCHECK_RESOURCES src/*.qrc) file(GLOB_RECURSE SPEEDCHECK_TSS src/i18n/*.ts) include_directories(${CMAKE_CURRENT_BINARY_DIR} ./src) # # Qt4 # find_package(Qt4 4.7.0 REQUIRED) if(QT4_FOUND) message(STATUS "Qt4 found") else(QT4_FOUND) message(FATAL_ERROR "Qt4 not found") endif(QT4_FOUND) set(QT_USE_QTSVG TRUE) set(QT_USE_QTNETWORK TRUE) include(${QT_USE_FILE}) option(UPDATE_TRANSLATIONS "Update .ts files (WARNING: make clean will delete the .ts files!)") if(SPEEDCHECK_TSS) if (UPDATE_TRANSLATIONS) set (FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${SPEEDCHECK_SOURCES} ${SPEEDCHECK_UIS}) QT4_CREATE_TRANSLATION(SPEEDCHECK_QMS ${FILES_TO_TRANSLATE} ${SPEEDCHECK_TSS} OPTIONS -noobsolete) message(STATUS ".tr files have been updated") else (UPDATE_TRANSLATIONS) QT4_ADD_TRANSLATION(SPEEDCHECK_QMS ${SPEEDCHECK_TSS}) endif (UPDATE_TRANSLATIONS) # write a resource file for qm files set(resource_file_content "\n \n") foreach(file ${SPEEDCHECK_QMS}) get_filename_component(filename ${file} NAME) set(resource_file_content "${resource_file_content} ${filename}\n") endforeach(file) set(resource_file_content "${resource_file_content} \n\n") file(WRITE "${CMAKE_BINARY_DIR}/translation.qrc" "${resource_file_content}") set(SPEEDCHECK_RESOURCES ${SPEEDCHECK_RESOURCES} "${CMAKE_BINARY_DIR}/translation.qrc") #add_custom_target(translations_target DEPENDS ${SPEEDCHECK_QMS}) endif(SPEEDCHECK_TSS) QT4_ADD_RESOURCES(SPEEDCHECK_RC_SOURCES ${SPEEDCHECK_RESOURCES}) QT4_WRAP_UI(SPEEDCHECK_UI_HEADERS ${SPEEDCHECK_UIS}) QT4_WRAP_CPP(SPEEDCHECK_MOC_SOURCES ${SPEEDCHECK_MOC_HEADERS}) # # build speedcheck # add_executable(speedcheck ${SPEEDCHECK_SOURCES} ${SPEEDCHECK_MOC_SOURCES} ${SPEEDCHECK_UI_HEADERS} ${SPEEDCHECK_RC_SOURCES} ${SPEEDCHECK_QMS} ) target_link_libraries(speedcheck ${QT_LIBRARIES} ) install(TARGETS speedcheck RUNTIME DESTINATION bin)