From 32b055a7ab2e346d2530a71a75adf71335407869 Mon Sep 17 00:00:00 2001 From: Yuhang Zhao <2546789017@qq.com> Date: Thu, 18 May 2023 20:38:05 +0800 Subject: [PATCH] cmake: dump more info Signed-off-by: Yuhang Zhao <2546789017@qq.com> --- CMakeLists.txt | 37 ++++++++++++++++++++++------ cmake | 2 +- examples/dialog/CMakeLists.txt | 2 ++ examples/mainwindow/CMakeLists.txt | 2 ++ examples/openglwidget/CMakeLists.txt | 2 ++ examples/quick/CMakeLists.txt | 2 ++ examples/widget/CMakeLists.txt | 2 ++ src/core/CMakeLists.txt | 2 ++ src/quick/CMakeLists.txt | 2 ++ src/widgets/CMakeLists.txt | 2 ++ 10 files changed, 46 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e1b1cfe..4a018c9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,15 +53,16 @@ option(FRAMELESSHELPER_ENABLE_CFGUARD "Enable Control Flow Guard (CFG)." OFF) option(FRAMELESSHELPER_EXAMPLES_STANDALONE "Build the demo projects as standalone CMake projects." OFF) cmake_dependent_option(FRAMELESSHELPER_ENABLE_UNIVERSAL_BUILD "macOS only: build universal library/exemple for Mac." ON APPLE OFF) -if(NOT DEFINED QT_VERSION) - find_package(QT NAMES Qt6 Qt5 REQUIRED) +query_qt_library_info(VERSION __qt_version) +if(NOT DEFINED __qt_version) + message(SEND_ERROR "Failed to query the Qt SDK version. Your toolchain is broken!") endif() if(NOT APPLE AND FRAMELESSHELPER_ENABLE_UNIVERSAL_BUILD) - message(WARNING "Your OS is not macOS, universal library will not be generated.") + message(WARNING "Current OS is not macOS, universal build will be disabled.") set(FRAMELESSHELPER_ENABLE_UNIVERSAL_BUILD OFF) -elseif(APPLE AND ((QT_VERSION VERSION_LESS "6.2" AND QT_VERSION VERSION_GREATER_EQUAL "6.0") OR QT_VERSION VERSION_LESS "5.15.9")) - message(WARNING "Your Qt version ${QT_VERSION} doesn't support universal build, universal library will not be generated.") +elseif(APPLE AND ((__qt_version VERSION_LESS "6.2" AND __qt_version VERSION_GREATER_EQUAL "6.0") OR (__qt_version VERSION_LESS "5.15.9"))) + message(WARNING "Your Qt version ${__qt_version} doesn't support universal build, it will be disabled.") set(FRAMELESSHELPER_ENABLE_UNIVERSAL_BUILD OFF) endif() @@ -162,11 +163,31 @@ if(NOT FRAMELESSHELPER_NO_SUMMARY) message("CMake version: ${CMAKE_VERSION} (${CMAKE_COMMAND})") message("Host system: ${CMAKE_HOST_SYSTEM}") message("Host processor: ${CMAKE_HOST_SYSTEM_PROCESSOR}") - #message("C compiler: ${CMAKE_C_COMPILER_ID} (${CMAKE_C_COMPILER})") # Currently we are not using any C compilers. - #message("C compiler version: ${CMAKE_C_COMPILER_VERSION}") + #[[message("C compiler: ${CMAKE_C_COMPILER_ID} (${CMAKE_C_COMPILER})") # Currently we are not using any C compilers. + message("C compiler version: ${CMAKE_C_COMPILER_VERSION}") + message("C common flags: ${CMAKE_C_FLAGS}") + message("C debug flags: ${CMAKE_C_FLAGS_DEBUG}") + message("C release flags: ${CMAKE_C_FLAGS_RELEASE}") + message("C minsizerel flags: ${CMAKE_C_FLAGS_MINSIZEREL}") + message("C relwithdebinfo flags: ${CMAKE_C_FLAGS_RELWITHDEBINFO}")]] message("C++ compiler: ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER})") message("C++ compiler version: ${CMAKE_CXX_COMPILER_VERSION}") + message("C++ common flags: ${CMAKE_CXX_FLAGS}") + message("C++ debug flags: ${CMAKE_CXX_FLAGS_DEBUG}") + message("C++ release flags: ${CMAKE_CXX_FLAGS_RELEASE}") + message("C++ minsizerel flags: ${CMAKE_CXX_FLAGS_MINSIZEREL}") + message("C++ relwithdebinfo flags: ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}") message("Linker: ${CMAKE_LINKER}") + message("Linker exe common flags: ${CMAKE_EXE_LINKER_FLAGS}") + message("Linker exe debug flags: ${CMAKE_EXE_LINKER_FLAGS_DEBUG}") + message("Linker exe release flags: ${CMAKE_EXE_LINKER_FLAGS_RELEASE}") + message("Linker exe minsizerel flags: ${CMAKE_EXE_LINKER_FLAGS_MINSIZEREL}") + message("Linker exe relwithdebinfo flags: ${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO}") + message("Linker dll common flags: ${CMAKE_SHARED_LINKER_FLAGS}") + message("Linker dll debug flags: ${CMAKE_SHARED_LINKER_FLAGS_DEBUG}") + message("Linker dll release flags: ${CMAKE_SHARED_LINKER_FLAGS_RELEASE}") + message("Linker dll minsizerel flags: ${CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL}") + message("Linker dll relwithdebinfo flags: ${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO}") message("Make program: ${CMAKE_MAKE_PROGRAM}") message("Generator: ${CMAKE_GENERATOR}") message("Build type: ${CMAKE_BUILD_TYPE}") @@ -176,7 +197,7 @@ if(NOT FRAMELESSHELPER_NO_SUMMARY) message("Toolchain file: ${CMAKE_TOOLCHAIN_FILE}") message("------------------------------ Qt -------------------------------") query_qt_paths(SDK_DIR __qt_inst_dir) - query_qt_library_info(VERSION __qt_version STATIC __qt_static_lib) + query_qt_library_info(STATIC __qt_static_lib) message("Qt SDK installation directory: ${__qt_inst_dir}") message("Qt SDK version: ${__qt_version}") if(__qt_static_lib) diff --git a/cmake b/cmake index 871298a..4929d8f 160000 --- a/cmake +++ b/cmake @@ -1 +1 @@ -Subproject commit 871298a4e303d5ff588e95db0ff799bd7677d2c4 +Subproject commit 4929d8f0d309f551a2ec9e26da8d73ce9b5d65a2 diff --git a/examples/dialog/CMakeLists.txt b/examples/dialog/CMakeLists.txt index 0add8e8..e41afe3 100644 --- a/examples/dialog/CMakeLists.txt +++ b/examples/dialog/CMakeLists.txt @@ -106,3 +106,5 @@ if(FRAMELESSHELPER_EXAMPLES_DEPLOYQT) endif() deploy_qt_runtime(TARGET ${DEMO_NAME} ${__extra_flags}) endif() + +dump_target_info(TARGETS ${DEMO_NAME}) diff --git a/examples/mainwindow/CMakeLists.txt b/examples/mainwindow/CMakeLists.txt index 7d789c2..7ea8b6a 100644 --- a/examples/mainwindow/CMakeLists.txt +++ b/examples/mainwindow/CMakeLists.txt @@ -111,3 +111,5 @@ if(FRAMELESSHELPER_EXAMPLES_DEPLOYQT) endif() deploy_qt_runtime(TARGET ${DEMO_NAME} ${__extra_flags}) endif() + +dump_target_info(TARGETS ${DEMO_NAME}) diff --git a/examples/openglwidget/CMakeLists.txt b/examples/openglwidget/CMakeLists.txt index 264d971..98f9459 100644 --- a/examples/openglwidget/CMakeLists.txt +++ b/examples/openglwidget/CMakeLists.txt @@ -121,3 +121,5 @@ if(FRAMELESSHELPER_EXAMPLES_DEPLOYQT) endif() deploy_qt_runtime(TARGET ${DEMO_NAME} ${__extra_flags}) endif() + +dump_target_info(TARGETS ${DEMO_NAME}) diff --git a/examples/quick/CMakeLists.txt b/examples/quick/CMakeLists.txt index 2d43d5a..e82e596 100644 --- a/examples/quick/CMakeLists.txt +++ b/examples/quick/CMakeLists.txt @@ -142,3 +142,5 @@ if(FRAMELESSHELPER_EXAMPLES_DEPLOYQT) ${__extra_flags} ) endif() + +dump_target_info(TARGETS ${DEMO_NAME}) diff --git a/examples/widget/CMakeLists.txt b/examples/widget/CMakeLists.txt index 437b929..4422e69 100644 --- a/examples/widget/CMakeLists.txt +++ b/examples/widget/CMakeLists.txt @@ -106,3 +106,5 @@ if(FRAMELESSHELPER_EXAMPLES_DEPLOYQT) endif() deploy_qt_runtime(TARGET ${DEMO_NAME} ${__extra_flags}) endif() + +dump_target_info(TARGETS ${DEMO_NAME}) diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index a0320f1..cb67cf5 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -378,3 +378,5 @@ if(NOT FRAMELESSHELPER_NO_INSTALL) INCLUDES DESTINATION "${__inc_dir}" ) endif() + +dump_target_info(TARGETS ${SUB_PROJ_NAME}) diff --git a/src/quick/CMakeLists.txt b/src/quick/CMakeLists.txt index 0ea23f1..e219545 100644 --- a/src/quick/CMakeLists.txt +++ b/src/quick/CMakeLists.txt @@ -358,3 +358,5 @@ if(NOT FRAMELESSHELPER_NO_INSTALL) INCLUDES DESTINATION "${__inc_dir}" ) endif() + +dump_target_info(TARGETS ${SUB_PROJ_NAME}) diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt index 2ce8753..524808c 100644 --- a/src/widgets/CMakeLists.txt +++ b/src/widgets/CMakeLists.txt @@ -249,3 +249,5 @@ if(NOT FRAMELESSHELPER_NO_INSTALL) INCLUDES DESTINATION "${__inc_dir}" ) endif() + +dump_target_info(TARGETS ${SUB_PROJ_NAME})