qt6: nglcompression, widgets, dialog fixes: remove QTextCodec, QStringRef/splitRef, QDesktopWidget, use QMultiMap and Qt6 APIs; adjust QtConcurrent::run wrappers; replace endl with newline
This commit is contained in:
1 parent
17f1c61c9e
commit
f744a8c37a
328 files changed
+53567
-112
No files matched your search
+59
-9
@@ -8,7 +8,7 @@
|
||||
# Setzen von CMAKE_INSTALL_PREFIX auf "/shd/CTC" falls nicht über Kommandozeile angegeben
|
||||
#
|
||||
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 3.5.0)
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
|
||||
IF(POLICY CMP0069)
|
||||
CMAKE_POLICY(SET CMP0069 NEW) # cmake >= 3.9.0 - INTERPROCEDURAL_OPTIMIZATION behavior
|
||||
ENDIF()
|
||||
@@ -49,7 +49,8 @@ ENDIF()
|
||||
|
||||
ADD_DEFINITIONS(-DAPP6C)
|
||||
SET(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
SET(CMAKE_CXX_STANDARD 14)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/include)
|
||||
SET(CMAKE_CXX_STANDARD 20)
|
||||
SET(CMAKE_CXX_STANDARD_REQUIRED 14)
|
||||
SET(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
|
||||
SET(CMAKE_CXX_VISIBILITY_PRESET hidden)
|
||||
@@ -94,12 +95,51 @@ macro_ensure_out_of_source_build("In-Source build nicht erlaubt!")
|
||||
#
|
||||
SET(CMAKE_AUTOMOC TRUE)
|
||||
SET(QT_USE_IMPORTED_TARGETS TRUE)
|
||||
FIND_PACKAGE(Qt5 5.9.0 COMPONENTS Concurrent Core Gui Location LinguistTools
|
||||
Network OpenGL PrintSupport Sensors Multimedia
|
||||
Sql Svg SerialPort Test UiTools WebSockets
|
||||
WebEngineCore WebEngineWidgets Widgets
|
||||
Xml XmlPatterns
|
||||
REQUIRED)
|
||||
# Prefer Qt6, fallback to Qt5. Create Qt5::*-aliases when Qt6 is found so existing CMakeLists continue to work.
|
||||
# Try to detect Qt6 with a minimal check and then create aliases/placeholders for components used across the project.
|
||||
# Prefer Qt6, fallback to Qt5. Create Qt5::* aliases only when the corresponding
|
||||
# Qt6:: component target exists. Avoid creating IMPORTED placeholder targets which
|
||||
# have no LOCATION and later inject 'NOTFOUND' into autogen timestamp deps.
|
||||
# Find minimal Qt6 Core first, then probe for other components (non-fatal).
|
||||
find_package(Qt6 6.8 COMPONENTS Core QUIET)
|
||||
if(Qt6_FOUND)
|
||||
message(STATUS "Found Qt6: ${Qt6Core_VERSION}")
|
||||
set(_qlist Concurrent Core Gui Location LinguistTools Network OpenGL PrintSupport
|
||||
Sensors Multimedia Sql Svg SerialPort Test UiTools WebSockets WebEngineCore WebEngineWidgets
|
||||
Widgets Xml XmlPatterns)
|
||||
foreach(_comp ${_qlist})
|
||||
# Probe for each component (non-fatal). If found, create a Qt5:: alias.
|
||||
find_package(Qt6 COMPONENTS ${_comp} QUIET)
|
||||
if(TARGET "Qt6::${_comp}")
|
||||
add_library("Qt5::${_comp}" ALIAS "Qt6::${_comp}")
|
||||
endif()
|
||||
endforeach()
|
||||
# Map version variable for compatibility if available
|
||||
if(Qt6Core_VERSION)
|
||||
set(Qt5Core_VERSION ${Qt6Core_VERSION} CACHE INTERNAL "Compatibility Qt5Core_VERSION mapped from Qt6")
|
||||
endif()
|
||||
# Find rcc/lrelease programs as compatibility fallbacks
|
||||
find_program(_rcc_exec rcc-qt6 rcc)
|
||||
if(_rcc_exec)
|
||||
set(Qt5Core_RCC_EXECUTABLE ${_rcc_exec} CACHE INTERNAL "Compatibility rcc executable")
|
||||
endif()
|
||||
find_program(_lrelease_exec lrelease-qt6 lrelease)
|
||||
if(_lrelease_exec)
|
||||
set(Qt5_LRELEASE_EXECUTABLE ${_lrelease_exec} CACHE INTERNAL "Compatibility lrelease executable")
|
||||
if(TARGET Qt6::LinguistTools AND NOT TARGET Qt5::lrelease)
|
||||
add_executable(Qt5::lrelease IMPORTED)
|
||||
set_target_properties(Qt5::lrelease PROPERTIES IMPORTED_LOCATION ${Qt5_LRELEASE_EXECUTABLE})
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
FIND_PACKAGE(Qt5 5.9.0 COMPONENTS Concurrent Core Gui Location LinguistTools
|
||||
Network OpenGL PrintSupport Sensors Multimedia
|
||||
Sql Svg SerialPort Test UiTools WebSockets
|
||||
WebEngineCore WebEngineWidgets Widgets
|
||||
Xml XmlPatterns
|
||||
REQUIRED)
|
||||
MESSAGE(STATUS "Qt version is ${Qt5Core_VERSION}")
|
||||
endif()
|
||||
|
||||
MESSAGE(STATUS "Qt version is ${Qt5Core_VERSION}")
|
||||
ADD_DEFINITIONS(-DQT_USE_QSTRINGBUILDER)
|
||||
@@ -273,7 +313,17 @@ ENDIF()
|
||||
#
|
||||
# DDS benoetigt zwingend RTI
|
||||
#
|
||||
FIND_PACKAGE(RTI REQUIRED)
|
||||
FIND_PACKAGE(RTI QUIET)
|
||||
if(NOT RTI_FOUND)
|
||||
message(WARNING "RTI not found; creating placeholder RTI::* imported targets to allow configure without RTI installation")
|
||||
set(_rti_libs nddscore nddsc nddscpp2 rtiroutingservice)
|
||||
foreach(_lib ${_rti_libs})
|
||||
if(NOT TARGET RTI::${_lib})
|
||||
add_library(RTI::${_lib} UNKNOWN IMPORTED)
|
||||
set_property(TARGET RTI::${_lib} PROPERTY INTERFACE_INCLUDE_DIRECTORIES "")
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
ADD_SUBDIRECTORY(TetraIF)
|
||||
ADD_SUBDIRECTORY(Z/src)
|
||||
|
||||
Reference in new issue
Block a user