From c45b1f5c052e8f67fb3d54b5de8be2d783a2751f Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Tue, 31 Dec 2024 10:45:27 +0100 Subject: [PATCH 1/4] [cmake] Cleanup python libraries and includes --- cmake/SIPMacros.cmake | 2 +- python/CMakeLists.txt | 43 --------------------------------------- src/python/CMakeLists.txt | 5 +---- 3 files changed, 2 insertions(+), 48 deletions(-) diff --git a/cmake/SIPMacros.cmake b/cmake/SIPMacros.cmake index 1d58e900a45..bc30dbf9eec 100644 --- a/cmake/SIPMacros.cmake +++ b/cmake/SIPMacros.cmake @@ -191,7 +191,7 @@ MACRO(BUILD_SIP_PYTHON_MODULE MODULE_NAME SIP_FILES EXTRA_OBJECTS) SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES CXX_VISIBILITY_PRESET default) IF (NOT APPLE) - TARGET_LINK_LIBRARIES(${_logical_name} ${Python_LIBRARIES}) + TARGET_LINK_LIBRARIES(${_logical_name} Python::Python) ENDIF (NOT APPLE) TARGET_LINK_LIBRARIES(${_logical_name} ${EXTRA_LINK_LIBRARIES}) IF (APPLE) diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index cc382b200af..8522531c9e3 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -65,46 +65,6 @@ add_subdirectory(ext-libs) add_subdirectory(testing) add_subdirectory(processing) -include_directories(SYSTEM - ${Python_INCLUDE_DIRS} - ${QT_QTCORE_INCLUDE_DIR} - ${QT_QTGUI_INCLUDE_DIR} - ${QT_QTNETWORK_INCLUDE_DIR} - ${QT_QTSERIALPORT_INCLUDE_DIR} - ${QT_QTSVG_INCLUDE_DIR} - ${QT_QTXML_INCLUDE_DIR} - ${QWT_INCLUDE_DIR} - ${QCA_INCLUDE_DIR} - ${QTKEYCHAIN_INCLUDE_DIR} - ${SPATIALINDEX_INCLUDE_DIR} -) - -if (${SIP_VERSION_STR} VERSION_LESS 5) - include_directories(SYSTEM - ${SIP_INCLUDE_DIR} - ) -endif() - -if (WITH_GUI) - include_directories(SYSTEM - ${QSCINTILLA_INCLUDE_DIR} - ) -endif() - -include_directories( - ${CMAKE_SOURCE_DIR}/src/plugins - - ${CMAKE_BINARY_DIR} # qgsconfig.h, qgsversion.h - ${CMAKE_BINARY_DIR}/src/ui - ${CMAKE_BINARY_DIR}/src/analysis -) - -if (WITH_GUI) - include_directories( - - ) -endif() - if(NOT ENABLE_TESTS) set(SIP_DISABLE_FEATURES ${SIP_DISABLE_FEATURES} TESTS) endif() @@ -252,9 +212,6 @@ endif() # 3D module if (WITH_3D) - include_directories( - ${QT5_3DEXTRA_INCLUDE_DIR} - ) set(PY_MODULES ${PY_MODULES} 3d) file(GLOB_RECURSE sip_files_3d ${BINDING_FILES_ROOT_DIR}/3d/*.sip ${BINDING_FILES_ROOT_DIR}/3d/*.sip.in) diff --git a/src/python/CMakeLists.txt b/src/python/CMakeLists.txt index 308027a9405..806bd54ad4d 100644 --- a/src/python/CMakeLists.txt +++ b/src/python/CMakeLists.txt @@ -9,9 +9,6 @@ target_include_directories(qgispython PUBLIC ${CMAKE_SOURCE_DIR}/src/python ${CMAKE_BINARY_DIR}/src/python ) -target_include_directories(qgispython SYSTEM PRIVATE - ${Python_INCLUDE_DIRS} -) set_target_properties(qgispython PROPERTIES CLEAN_DIRECT_OUTPUT 1 @@ -27,7 +24,7 @@ endif() target_link_libraries(qgispython qgis_core - ${Python_LIBRARIES} + Python::Python ${OPENPTY_LIBRARY} ) From e73ff05233bcc819dfe32a7eeb813363a841cd0b Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Tue, 31 Dec 2024 10:50:19 +0100 Subject: [PATCH 2/4] Remove CLEAN_DIRECT_OUTPUT --- src/python/CMakeLists.txt | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/python/CMakeLists.txt b/src/python/CMakeLists.txt index 806bd54ad4d..3323d3985f1 100644 --- a/src/python/CMakeLists.txt +++ b/src/python/CMakeLists.txt @@ -10,10 +10,6 @@ target_include_directories(qgispython PUBLIC ${CMAKE_BINARY_DIR}/src/python ) -set_target_properties(qgispython PROPERTIES - CLEAN_DIRECT_OUTPUT 1 -) - #generate unversioned libs for android if (NOT ANDROID) set_target_properties(qgispython PROPERTIES From e22281d4db01710d745001a10b52cee10a40ddbe Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Tue, 31 Dec 2024 12:16:50 +0100 Subject: [PATCH 3/4] Fix building on apple --- cmake/SIPMacros.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/cmake/SIPMacros.cmake b/cmake/SIPMacros.cmake index bc30dbf9eec..5fd49ac0a09 100644 --- a/cmake/SIPMacros.cmake +++ b/cmake/SIPMacros.cmake @@ -190,9 +190,7 @@ MACRO(BUILD_SIP_PYTHON_MODULE MODULE_NAME SIP_FILES EXTRA_OBJECTS) ENDIF (${SIP_VERSION_STR} VERSION_LESS 5.0.0) SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES CXX_VISIBILITY_PRESET default) - IF (NOT APPLE) - TARGET_LINK_LIBRARIES(${_logical_name} Python::Python) - ENDIF (NOT APPLE) + TARGET_LINK_LIBRARIES(${_logical_name} Python::Python) TARGET_LINK_LIBRARIES(${_logical_name} ${EXTRA_LINK_LIBRARIES}) IF (APPLE) SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup") From 072aca8f1def3afe9d53a7dca76309195a79e856 Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Tue, 31 Dec 2024 12:18:16 +0100 Subject: [PATCH 4/4] No reason to handle undefined lookup --- cmake/SIPMacros.cmake | 3 --- 1 file changed, 3 deletions(-) diff --git a/cmake/SIPMacros.cmake b/cmake/SIPMacros.cmake index 5fd49ac0a09..e69e208b6a1 100644 --- a/cmake/SIPMacros.cmake +++ b/cmake/SIPMacros.cmake @@ -192,9 +192,6 @@ MACRO(BUILD_SIP_PYTHON_MODULE MODULE_NAME SIP_FILES EXTRA_OBJECTS) SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES CXX_VISIBILITY_PRESET default) TARGET_LINK_LIBRARIES(${_logical_name} Python::Python) TARGET_LINK_LIBRARIES(${_logical_name} ${EXTRA_LINK_LIBRARIES}) - IF (APPLE) - SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup") - ENDIF (APPLE) SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES PREFIX "" OUTPUT_NAME ${_child_module_name}) IF (WIN32)