diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2021-06-09 07:56:59 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-06-16 11:10:49 +0000 |
commit | 019d6783383eb0c0aa3d7dd59c0825250f93fb8d (patch) | |
tree | 104a3bbfcfb5122401a1c7388a92a21de88714a6 | |
parent | 8406a9e96a63e1cda7f14de457814fa31cad717c (diff) |
libpyside: Streamline CMakeLists.txt
Add the Qt libraries directly instead of building
the include paths by hand.
Task-number: PYSIDE-802
Change-Id: Iaeb2f8cfe6638b9e73a96f5c508d928e7e19aea5
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
(cherry picked from commit cd1022b1216dbf67bb553b7fc65106d91e95643d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | sources/pyside6/libpyside/CMakeLists.txt | 48 |
1 files changed, 7 insertions, 41 deletions
diff --git a/sources/pyside6/libpyside/CMakeLists.txt b/sources/pyside6/libpyside/CMakeLists.txt index 90f333e5d..dca469eb9 100644 --- a/sources/pyside6/libpyside/CMakeLists.txt +++ b/sources/pyside6/libpyside/CMakeLists.txt @@ -1,41 +1,19 @@ project(libpyside) -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() +set(QML_SUPPORT 0) +set(QML_PRIVATE_API_SUPPORT 0) -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(libpyside_libraries Qt::Core Qt::CorePrivate) -set(QML_PRIVATE_API_SUPPORT 0) if(Qt${QT_MAJOR_VERSION}Qml_FOUND) - # Used for registering custom QQuickItem classes defined in Python code. + list(APPEND libpyside_libraries Qt::Qml) set(QML_SUPPORT 1) - set(QML_INCLUDES ${Qt${QT_MAJOR_VERSION}Qml_INCLUDE_DIRS}) - set(QML_LIBRARIES ${Qt${QT_MAJOR_VERSION}Qml_LIBRARIES}) - if(Qt${QT_MAJOR_VERSION}Qml_PRIVATE_INCLUDE_DIRS) - # Used for transforming QML exceptions into Python exceptions. + list(APPEND libpyside_libraries Qt::QmlPrivate) set(QML_PRIVATE_API_SUPPORT 1) - 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() -else() - set(QML_SUPPORT 0) - set(QML_PRIVATE_API_SUPPORT 0) - set(QML_INCLUDES "") - set(QML_LIBRARIES "") endif() set(libpyside_SRC @@ -84,12 +62,6 @@ add_other_files(${other_files}) add_library(pyside6 SHARED ${libpyside_SRC} ${other_files}) add_library(PySide6::pyside6 ALIAS pyside6) -target_include_directories(pyside6 PRIVATE - ${QML_INCLUDES} - ${Qt${QT_MAJOR_VERSION}Core_PRIVATE_INCLUDE_DIRS} - ${Qt${QT_MAJOR_VERSION}Core_INCLUDE_DIRS} -) - target_include_directories(pyside6 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:include/PySide6> @@ -106,9 +78,7 @@ else() endif() target_link_libraries(pyside6 - PRIVATE Shiboken6::libshiboken - PRIVATE ${QML_LIBRARIES} - PRIVATE ${Qt${QT_MAJOR_VERSION}Core_LIBRARIES}) + PRIVATE Shiboken6::libshiboken ${libpyside_libraries}) set_target_properties(pyside6 PROPERTIES VERSION ${BINDING_API_VERSION} @@ -116,11 +86,7 @@ set_target_properties(pyside6 PROPERTIES OUTPUT_NAME "pyside6${pyside6_SUFFIX}${SHIBOKEN_PYTHON_SHARED_LIBRARY_SUFFIX}" DEFINE_SYMBOL BUILD_LIBPYSIDE) -if(${QT_MAJOR_VERSION} GREATER_EQUAL 6) - set_property(TARGET pyside6 PROPERTY CXX_STANDARD 17) -else() - set_property(TARGET pyside6 PROPERTY CXX_STANDARD 11) -endif() +set_property(TARGET pyside6 PROPERTY CXX_STANDARD 17) if(QML_SUPPORT) target_compile_definitions(pyside6 PUBLIC PYSIDE_QML_SUPPORT=1) |