From c3c7d5748578d268ae2b8cc076bc5a87479fc768 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Tue, 5 Dec 2017 11:29:26 +0100 Subject: Fix translations on Qt5 --- CMakeLists.txt | 83 ++++++++++++++++++++++++++++++---------------------------- 1 file changed, 43 insertions(+), 40 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 97116b0..a3a0b2b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,15 +3,15 @@ ################################################################################ PROJECT(pvs2) -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12 FATAL_ERROR) # set compiler optimizations for debug and release -SET(CMAKE_BUILD_TYPE Debug) SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -Wall -Wunused -Wunreachable-code -pedantic") SET(CMAKE_C_FLAGS_RELEASE "-O2") SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -Wall -Wextra -Wpedantic -std=c++0x -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment -Wconversion -Wdisabled-optimization -Wfloat-equal -Wformat -Wformat=2 -Wformat-nonliteral -Wformat-security -Wformat-y2k -Wimport -Winit-self -Winline -Winvalid-pch -Wunsafe-loop-optimizations -Wlong-long -Wmissing-braces -Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wpacked -Wparentheses -Wpointer-arith -Wredundant-decls -Wreturn-type -Wsequence-point -Wsign-compare -Wstack-protector -Wstrict-aliasing -Wstrict-aliasing=2 -Wswitch -Wswitch-default -Wswitch-enum -Wtrigraphs -Wuninitialized -Wunknown-pragmas -Wunreachable-code -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wvariadic-macros -Wvolatile-register-var -Wwrite-strings") # -Wshadow spams too much :/ -SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -std=c++0x" ) +SET(CMAKE_CXX_STANDARD 11) +SET(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -std=c++11) # local cmake modules SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) @@ -21,15 +21,14 @@ FIND_PACKAGE(Qt5 COMPONENTS Widgets Network X11Extras LinguistTools Svg REQUIRED FIND_PACKAGE(X11 REQUIRED) FIND_PACKAGE(VNC REQUIRED) +SET(CMAKE_INCLUDE_CURRENT_DIR ON) SET(CMAKE_AUTOMOC ON) # some includes INCLUDE_DIRECTORIES( - ${CMAKE_SOURCE_DIR} - ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} ${X11_INCLUDE_DIR} -# ${X11_XTest_INCLUDE_PATH} -# ${X11_Xinput_INCLUDE_PATH} ) IF(X11_Xscreensaver_FOUND) @@ -91,17 +90,6 @@ FILE(GLOB PVSCLIENT_RC_SRCS pvsclient.qrc ) -# includes all header files that should be treated with moc -#FILE(GLOB PVSMGR_MOC_HDRS -# src/server/*/*.h -#) - -#FILE(GLOB PVSCLIENT_MOC_HDRS -# src/client/*.h -# src/client/*/*.h -# src/client/*/*/*.h -#) - # i18n FILE(GLOB PVSMGR_TSS i18n/server/*.ts @@ -112,21 +100,6 @@ FILE(GLOB PVSCLIENT_TSS ) -# include Qt modules -#SET(QT_USE_QTDBUS TRUE) -#SET(QT_USE_QTNETWORK TRUE) -#SET(QT_USE_QTSVG TRUE) -#SET(QT_USE_QTWEBKIT TRUE) - -# add some useful macros and variables -# (QT_USE_FILE is a variable defined by FIND_PACKAGE( Qt4 ) that contains -# a path to CMake script) -#INCLUDE(${QT_USE_FILE}) - -# this will run rcc on .qrc files -QT5_ADD_RESOURCES(PVSMGR_RCS ${PVSMGR_RC_SRCS}) -QT5_ADD_RESOURCES(PVSCLIENT_RCS ${PVSCLIENT_RC_SRCS}) - # this will run uic on .ui files QT5_WRAP_UI(PVSMGR_UI_HDRS ${PVSMGR_UIS}) QT5_WRAP_UI(PVSCLIENT_UI_HDRS ${PVSCLIENT_UIS}) @@ -135,24 +108,54 @@ QT5_WRAP_UI(PVSCLIENT_UI_HDRS ${PVSCLIENT_UIS}) #QT4_WRAP_CPP(PVSMGR_MOC_SRCS ${PVSMGR_MOC_HDRS}) #QT4_WRAP_CPP(PVSCLIENT_MOC_SRCS ${PVSCLIENT_MOC_HDRS}) -option(UPDATE_TRANSLATIONS "Update .ts files (WARNING: make clean will delete the .ts files!)") +option(UPDATE_TRANSLATIONS "Update .ts files (WARNING: make clean will delete the .ts files!)" OFF) + if(PVSMGR_TSS) + if (UPDATE_TRANSLATIONS) - QT5_CREATE_TRANSLATION(PVSMGR_QMS ${PVSMGR_SRCS} ${PVSMGR_UI_HDRS} ${PVSMGR_TSS} OPTIONS -noobsolete) + set(FILES_TO_TRANSLATE ${PVSMGR_SRCS} ${PVSMGR_UIS}) + QT5_CREATE_TRANSLATION(PVSMGR_QMS ${FILES_TO_TRANSLATE} ${PVSMGR_TSS} OPTIONS -noobsolete) message(STATUS ".tr files have been updated") else (UPDATE_TRANSLATIONS) QT5_ADD_TRANSLATION(PVSMGR_QMS ${PVSMGR_TSS}) endif (UPDATE_TRANSLATIONS) + # # write a resource file for qm files + # set(resource_file_content "\n \n") + # foreach(file ${PVSMGR_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}/ts_pvsmgr.qrc" "${resource_file_content}") + # set(PVSMGR_RESOURCES ${PVSMGR_RESOURCES} "${CMAKE_BINARY_DIR}/ts_pvsmgr.qrc") + endif(PVSMGR_TSS) + if(PVSCLIENT_TSS) + if (UPDATE_TRANSLATIONS) - QT5_CREATE_TRANSLATION(PVSCLIENT_QMS ${PVSCLIENT_SRCS} ${PVSCLIENT_UI_HDRS} ${PVSCLIENT_TSS} OPTIONS -noobsolete) + set(FILES_TO_TRANSLATE ${PVSCLIENT_SRCS} ${PVSCLIENT_UIS}) + QT5_CREATE_TRANSLATION(PVSCLIENT_QMS ${FILES_TO_TRANSLATE} ${PVSCLIENT_TSS} OPTIONS -noobsolete) message(STATUS ".tr files have been updated") else (UPDATE_TRANSLATIONS) QT5_ADD_TRANSLATION(PVSCLIENT_QMS ${PVSCLIENT_TSS}) endif (UPDATE_TRANSLATIONS) + # # write a resource file for qm files + # set(resource_file_content "\n \n") + # foreach(file ${PVSCLIENT_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}/ts_pvsclient.qrc" "${resource_file_content}") + # set(PVSCLIENT_RESOURCES ${PVSCLIENT_RESOURCES} "${CMAKE_BINARY_DIR}/ts_pvsclient.qrc") + endif(PVSCLIENT_TSS) +# this will run rcc on .qrc files +QT5_ADD_RESOURCES(PVSMGR_RCS ${PVSMGR_RC_SRCS}) +QT5_ADD_RESOURCES(PVSCLIENT_RCS ${PVSCLIENT_RC_SRCS}) + ################################################################################ # Build ################################################################################ @@ -162,8 +165,8 @@ ADD_EXECUTABLE(pvsmgr ${PVSMGR_RCS} # ${PVSMGR_MOC_SRCS} ${PVSMGR_UI_HDRS} -# ${PVSMGR_RC_SRCS} -# ${PVSMGR_QMS} + ${PVSMGR_RC_SRCS} + ${PVSMGR_QMS} ) ADD_EXECUTABLE(pvsclient @@ -171,8 +174,8 @@ ADD_EXECUTABLE(pvsclient ${PVSCLIENT_RCS} # ${PVSCLIENT_MOC_SRCS} ${PVSCLIENT_UI_HDRS} -# ${PVSCLIENT_RC_SRCS} -# ${PVSCLIENT_QMS} + ${PVSCLIENT_RC_SRCS} + ${PVSCLIENT_QMS} ) # link -- cgit v1.2.3-55-g7522