diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-05-07 07:56:20 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-05-18 15:13:21 +0200 |
commit | 0c6e4506e5c0b6aacdf48fd777eb452d91732157 (patch) | |
tree | 92a94c6ad5f13a1fbece06896b11763b3c830769 /sources/pyside2/libpyside/CMakeLists.txt | |
parent | 59352c3ed2364e09b9c4dae91bd7a16755ea4d95 (diff) |
pyside2: Prepare build system for Qt 6
- Introduce a version variable to the CMakeLists.
- Emulate the Qt5Core_INCLUDE_DIRS, Qt5Core_LIBRARIES variables
by retrieving them from the INTERFACE
- Raise the language level
Task-number: PYSIDE-904
Change-Id: Ie4e43e7e6a9a2631d666038b80f306e2d9af47b1
Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/pyside2/libpyside/CMakeLists.txt')
-rw-r--r-- | sources/pyside2/libpyside/CMakeLists.txt | 42 |
1 files changed, 22 insertions, 20 deletions
diff --git a/sources/pyside2/libpyside/CMakeLists.txt b/sources/pyside2/libpyside/CMakeLists.txt index f83b7eeff..11342ec71 100644 --- a/sources/pyside2/libpyside/CMakeLists.txt +++ b/sources/pyside2/libpyside/CMakeLists.txt @@ -1,33 +1,33 @@ project(libpyside) -if(${Qt5Qml_FOUND}) - if(NOT "${Qt5Qml_PRIVATE_INCLUDE_DIRS}" MATCHES "/QtQml/") - string(REPLACE "/QtCore" "/QtQml" replaceme "${Qt5Core_PRIVATE_INCLUDE_DIRS}") - list(APPEND Qt5Qml_PRIVATE_INCLUDE_DIRS ${replaceme}) - list(REMOVE_DUPLICATES Qt5Qml_PRIVATE_INCLUDE_DIRS) +if(${Qt${QT_MAJOR_VERSION}Qml_FOUND}) + if(NOT "${Qt${QT_MAJOR_VERSION}Qml_PRIVATE_INCLUDE_DIRS}" MATCHES "/QtQml/") + string(REPLACE "/QtCore" "/QtQml" replaceme "${Qt${QT_MAJOR_VERSION}Core_PRIVATE_INCLUDE_DIRS}") + list(APPEND Qt${QT_MAJOR_VERSION}Qml_PRIVATE_INCLUDE_DIRS ${replaceme}) + list(REMOVE_DUPLICATES Qt${QT_MAJOR_VERSION}Qml_PRIVATE_INCLUDE_DIRS) endif() endif() -if(${Qt5Quick_FOUND}) - if(NOT "${Qt5Quick_PRIVATE_INCLUDE_DIRS}" MATCHES "/QtQuick/") - string(REPLACE "/QtCore" "/QtQuick" replaceme "${Qt5Core_PRIVATE_INCLUDE_DIRS}") - list(APPEND Qt5Quick_PRIVATE_INCLUDE_DIRS ${Qt5Qml_PRIVATE_INCLUDE_DIRS}) - list(APPEND Qt5Quick_PRIVATE_INCLUDE_DIRS ${replaceme}) - list(REMOVE_DUPLICATES Qt5Quick_PRIVATE_INCLUDE_DIRS) +if(${Qt${QT_MAJOR_VERSION}Quick_FOUND}) + if(NOT "${Qt${QT_MAJOR_VERSION}Quick_PRIVATE_INCLUDE_DIRS}" MATCHES "/QtQuick/") + string(REPLACE "/QtCore" "/QtQuick" replaceme "${Qt${QT_MAJOR_VERSION}Core_PRIVATE_INCLUDE_DIRS}") + list(APPEND Qt${QT_MAJOR_VERSION}Quick_PRIVATE_INCLUDE_DIRS ${Qt${QT_MAJOR_VERSION}Qml_PRIVATE_INCLUDE_DIRS}) + list(APPEND Qt${QT_MAJOR_VERSION}Quick_PRIVATE_INCLUDE_DIRS ${replaceme}) + list(REMOVE_DUPLICATES Qt${QT_MAJOR_VERSION}Quick_PRIVATE_INCLUDE_DIRS) endif() endif() set(QML_PRIVATE_API_SUPPORT 0) -if(Qt5Qml_FOUND) +if(Qt${QT_MAJOR_VERSION}Qml_FOUND) # Used for registering custom QQuickItem classes defined in Python code. set(QML_SUPPORT 1) - set(QML_INCLUDES ${Qt5Qml_INCLUDE_DIRS}) - set(QML_LIBRARIES ${Qt5Qml_LIBRARIES}) + set(QML_INCLUDES ${Qt${QT_MAJOR_VERSION}Qml_INCLUDE_DIRS}) + set(QML_LIBRARIES ${Qt${QT_MAJOR_VERSION}Qml_LIBRARIES}) - if(Qt5Qml_PRIVATE_INCLUDE_DIRS) + if(Qt${QT_MAJOR_VERSION}Qml_PRIVATE_INCLUDE_DIRS) # Used for transforming QML exceptions into Python exceptions. set(QML_PRIVATE_API_SUPPORT 1) - set(QML_INCLUDES ${QML_INCLUDES} ${Qt5Qml_PRIVATE_INCLUDE_DIRS}) + set(QML_INCLUDES ${QML_INCLUDES} ${Qt${QT_MAJOR_VERSION}Qml_PRIVATE_INCLUDE_DIRS}) else() message(WARNING "QML private API include files could not be found, support for catching QML exceptions inside Python code will not work.") endif() @@ -80,8 +80,8 @@ add_library(PySide2::pyside2 ALIAS pyside2) target_include_directories(pyside2 PRIVATE ${QML_INCLUDES} - ${Qt5Core_PRIVATE_INCLUDE_DIRS} - ${Qt5Core_INCLUDE_DIRS} + ${Qt${QT_MAJOR_VERSION}Core_PRIVATE_INCLUDE_DIRS} + ${Qt${QT_MAJOR_VERSION}Core_INCLUDE_DIRS} ) target_include_directories(pyside2 PUBLIC @@ -92,7 +92,7 @@ target_include_directories(pyside2 PUBLIC target_link_libraries(pyside2 PRIVATE Shiboken2::libshiboken PRIVATE ${QML_LIBRARIES} - PRIVATE ${Qt5Core_LIBRARIES}) + PRIVATE ${Qt${QT_MAJOR_VERSION}Core_LIBRARIES}) set_target_properties(pyside2 PROPERTIES VERSION ${BINDING_API_VERSION} @@ -100,7 +100,9 @@ set_target_properties(pyside2 PROPERTIES OUTPUT_NAME "pyside2${pyside2_SUFFIX}${SHIBOKEN_PYTHON_SHARED_LIBRARY_SUFFIX}" DEFINE_SYMBOL PYSIDE_EXPORTS) -if(Qt5Core_VERSION VERSION_GREATER "5.7.1") +if(${QT_MAJOR_VERSION} GREATER_EQUAL 6) + set_property(TARGET pyside2 PROPERTY CXX_STANDARD 17) +else() set_property(TARGET pyside2 PROPERTY CXX_STANDARD 11) endif() |