diff --git a/QtCommon.cmake b/QtCommon.cmake index 81beeaf..3bd187c 100644 --- a/QtCommon.cmake +++ b/QtCommon.cmake @@ -1,64 +1,64 @@ macro(fix_project_version) -if (NOT PROJECT_VERSION_PATCH) - set(PROJECT_VERSION_PATCH 0) -endif() + if (NOT PROJECT_VERSION_PATCH) + set(PROJECT_VERSION_PATCH 0) + endif() -if (NOT PROJECT_VERSION_TWEAK) - set(PROJECT_VERSION_TWEAK 0) -endif() + if (NOT PROJECT_VERSION_TWEAK) + set(PROJECT_VERSION_TWEAK 0) + endif() endmacro() macro(add_project_meta FILES_TO_INCLUDE) -if (NOT RESOURCE_FOLDER) - set(RESOURCE_FOLDER res) -endif() + if (NOT RESOURCE_FOLDER) + set(RESOURCE_FOLDER res) + endif() -if (NOT ICON_NAME) - set(ICON_NAME AppIcon) -endif() + if (NOT ICON_NAME) + set(ICON_NAME AppIcon) + endif() -if (APPLE) - set(ICON_FILE GUI/${RESOURCE_FOLDER}/${ICON_NAME}.icns) -elseif (WIN32) - set(ICON_FILE GUI/${RESOURCE_FOLDER}/${ICON_NAME}.ico) -endif() + if (APPLE) + set(ICON_FILE GUI/${RESOURCE_FOLDER}/${ICON_NAME}.icns) + elseif (WIN32) + set(ICON_FILE GUI/${RESOURCE_FOLDER}/${ICON_NAME}.ico) + endif() -if (WIN32) - configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/windows_metafile.rc.in" - "windows_metafile.rc" - ) - set(RES_FILES "windows_metafile.rc") - set(CMAKE_RC_COMPILER_INIT windres) - ENABLE_LANGUAGE(RC) - SET(CMAKE_RC_COMPILE_OBJECT " -O coff -i -o ") -endif() + # if (WIN32) + # configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/windows_metafile.rc.in" + # "windows_metafile.rc" + # ) + # set(RES_FILES "windows_metafile.rc") + # set(CMAKE_RC_COMPILER_INIT windres) + # ENABLE_LANGUAGE(RC) + # SET(CMAKE_RC_COMPILE_OBJECT " -O coff -i -o ") + # endif() -if (APPLE) - set_source_files_properties(${ICON_FILE} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) + if (APPLE) + set_source_files_properties(${ICON_FILE} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) - # Identify MacOS bundle - set(MACOSX_BUNDLE_BUNDLE_NAME ${PROJECT_NAME}) - set(MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}) - set(MACOSX_BUNDLE_LONG_VERSION_STRING ${PROJECT_VERSION}) - set(MACOSX_BUNDLE_SHORT_VERSION_STRING "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}") - set(MACOSX_BUNDLE_COPYRIGHT ${COPYRIGHT}) - set(MACOSX_BUNDLE_GUI_IDENTIFIER ${IDENTIFIER}) - set(MACOSX_BUNDLE_ICON_FILE ${ICON_NAME}) -endif() + # Identify MacOS bundle + set(MACOSX_BUNDLE_BUNDLE_NAME ${PROJECT_NAME}) + set(MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}) + set(MACOSX_BUNDLE_LONG_VERSION_STRING ${PROJECT_VERSION}) + set(MACOSX_BUNDLE_SHORT_VERSION_STRING "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}") + set(MACOSX_BUNDLE_COPYRIGHT ${COPYRIGHT}) + set(MACOSX_BUNDLE_GUI_IDENTIFIER ${IDENTIFIER}) + set(MACOSX_BUNDLE_ICON_FILE ${ICON_NAME}) + endif() -if (APPLE) - set(${FILES_TO_INCLUDE} ${ICON_FILE}) -elseif (WIN32) - set(${FILES_TO_INCLUDE} ${RES_FILES}) -endif() + if (APPLE) + set(${FILES_TO_INCLUDE} ${ICON_FILE}) + elseif (WIN32) + set(${FILES_TO_INCLUDE} ${RES_FILES}) + endif() endmacro() macro(init_os_bundle) -if (APPLE) - set(OS_BUNDLE MACOSX_BUNDLE) -elseif (WIN32) - set(OS_BUNDLE WIN32) -endif() + if (APPLE) + set(OS_BUNDLE MACOSX_BUNDLE) + elseif (WIN32) + set(OS_BUNDLE WIN32) + endif() endmacro() macro(fix_win_compiler) @@ -66,10 +66,10 @@ macro(fix_win_compiler) endmacro() macro(init_qt) -# Let's do the CMake job for us -set(CMAKE_AUTOMOC ON) # For meta object compiler -set(CMAKE_AUTORCC ON) # Resource files -set(CMAKE_AUTOUIC ON) # UI files + # Let's do the CMake job for us + set(CMAKE_AUTOMOC ON) # For meta object compiler + set(CMAKE_AUTORCC ON) # Resource files + set(CMAKE_AUTOUIC ON) # UI files endmacro() init_os_bundle() diff --git a/compiler.cmake b/compiler.cmake index 7396ab4..c893497 100644 --- a/compiler.cmake +++ b/compiler.cmake @@ -1,14 +1,24 @@ IF(WIN32) - SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MDd") - SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") + if(MINGW) + SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -std=c99 -g -fchar8_t") + SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -std=c++2a -g -fchar8_t -Wall") - SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MD") - SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") + SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -std=c99 -O2 -fchar8_t") + SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -std=c++2a -O2 -fchar8_t") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /std:c++14") + add_definitions(-D_WIN32_WINNT=0x0601) + else(MSVC) + SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MDd") + SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - add_definitions(-D_CRT_SECURE_NO_WARNINGS) + SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MD") + SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") + + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /std:c++latest") + + add_definitions(-D_CRT_SECURE_NO_WARNINGS) + endif() ELSE() IF(NOT ANDROID) @@ -24,8 +34,8 @@ ELSE() endif() ENDIF() - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++2a -fchar8_t") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 -fchar8_t") SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -ggdb3") SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -ggdb3")