Qt_Circular_Menu_Example/_cmake/common.cmake

53 lines
1.6 KiB
CMake

# Общие настройки для всех типов проектов
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
if (CMAKE_COMPILER_IS_GNUCXX)
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "9.0.0")
set(CMAKE_CXX_STANDARD 20)
else()
set(CMAKE_CXX_STANDARD 23)
endif()
else()
set(CMAKE_CXX_STANDARD 23)
endif()
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Поиск библиотек Qt:
find_package(QT NAMES Qt6 Qt5 REQUIRED)
# Настройки каталогов:
include(${CMAKE_CURRENT_LIST_DIR}/setup_directories.cmake)
# Определение разрядности:
if (${CMAKE_SIZEOF_VOID_P} STREQUAL 4)
set(DIR_PREFIX "32")
elseif (${CMAKE_SIZEOF_VOID_P} STREQUAL 8)
set(DIR_PREFIX "64")
endif ()
# Каталог для готовых приложений и библиотек после компиляции:
set(DISTRIB_DIR
${ROOT_PROJECT_DIR}_distrib/${CMAKE_SYSTEM_NAME}_Qt${QT_VERSION}_${DIR_PREFIX}-bit
)
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
set(IS_DEBUG TRUE)
set(IS_RELEASE FALSE)
else()
set(IS_DEBUG FALSE)
set(IS_RELEASE TRUE)
endif()
message(STATUS "Project '${PROJECT_NAME}' compiler ${CMAKE_CXX_COMPILER} version: ${CMAKE_CXX_COMPILER_VERSION}")
message(STATUS "Project '${PROJECT_NAME}' distrib dir: '${DISTRIB_DIR}'")
message(STATUS "Project '${PROJECT_NAME}' IS_RELEASE: ${IS_RELEASE}, IS_DEBUG: ${IS_DEBUG}")
message(STATUS "Project '${PROJECT_NAME}' CMAKE_PREFIX_PATH: '${CMAKE_PREFIX_PATH}'")
message(STATUS "Project '${PROJECT_NAME}' CMAKE_SYSTEM_LIBRARY_PATH: '${CMAKE_SYSTEM_LIBRARY_PATH}'")