From d4f10f9fe446da2aff65088e5236d6ffcdd034b5 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 24 Feb 2017 12:33:55 +0100 Subject: initial commit --- CMakeLists.txt | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 CMakeLists.txt (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..a642836 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,77 @@ +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) -- cgit v1.2.3-55-g7522