Make GUI able to compile on both Qt5 and Qt6 (#1576)

* Use QtPropertyBrowser for Qt5/6

* Fix cmake for python-console for consistency

* Make GUI compile for both Qt5 and Qt6

* Fix crash on init with Wayland on Qt6

* Cleanup

* disable deprecation warnings for now

* Relaxed cmake check for initial Qt6 test
This commit is contained in:
Miodrag Milanović
2025-10-15 12:19:20 +02:00
committed by GitHub
parent c7836625b9
commit 17d42e41db
15 changed files with 155 additions and 38 deletions
+19 -3
View File
@@ -2,7 +2,13 @@ cmake_minimum_required( VERSION 2.8 )
project( PythonInterpreter )
set(CMAKE_CXX_STANDARD 11)
find_package(Qt5 COMPONENTS Core Widgets REQUIRED)
find_package(Qt6 COMPONENTS Core Widgets REQUIRED)
if (Qt6_FOUND)
message(STATUS "Using Qt6")
else()
message(STATUS "Using Qt5")
find_package(Qt5 COMPONENTS Core Widgets REQUIRED)
endif()
find_package( PythonLibs REQUIRED )
include_directories( ${PYTHON_INCLUDE_DIRS} )
@@ -10,7 +16,12 @@ include_directories( ${PYTHON_INCLUDE_DIRS} )
add_executable( test_python_interpreter test_python_interpreter.cpp Interpreter.cpp )
target_link_libraries( test_python_interpreter ${PYTHON_LIBRARIES} )
qt5_wrap_cpp( Console_MOC Console.h )
if (Qt6_FOUND)
qt6_wrap_cpp( Console_MOC Console.h )
else()
qt5_wrap_cpp( Console_MOC Console.h )
endif()
add_executable( test_console test_console.cpp
Console.cpp ${Console_MOC}
ColumnFormatter.cpp
@@ -22,7 +33,12 @@ add_executable( test_console test_console.cpp
ParseMessage.cpp
)
target_compile_definitions( test_console PRIVATE QT_NO_KEYWORDS)
target_link_libraries( test_console Qt5::Widgets ${PYTHON_LIBRARIES} )
if (Qt6_FOUND)
target_link_libraries( test_console Qt6::Widgets ${PYTHON_LIBRARIES} )
else()
target_link_libraries( test_console Qt5::Widgets ${PYTHON_LIBRARIES} )
endif()
add_executable( test_parse_helper test_parse_helper.cpp
ParseHelper.cpp