public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/python-pyside6] rawhide: Remove cmake config path sed and replace patches with upstream cherry-picks
@ 2026-06-08 12:34 Jan Grulich
0 siblings, 0 replies; only message in thread
From: Jan Grulich @ 2026-06-08 12:34 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/python-pyside6
Branch : rawhide
Commit : f492bf7b2cd2f0a4f02caf83b49d5ead83e2454c
Author : Jan Grulich <jgrulich@redhat.com>
Date : 2026-06-08T14:33:37+02:00
Stats : +446/-62 in 4 file(s)
URL : https://src.fedoraproject.org/rpms/python-pyside6/c/f492bf7b2cd2f0a4f02caf83b49d5ead83e2454c?branch=rawhide
Log:
Remove cmake config path sed and replace patches with upstream cherry-picks
---
diff --git a/0001-Fix-header-installation-path-to-follow-filesystem-st.patch b/0001-Fix-header-installation-path-to-follow-filesystem-st.patch
new file mode 100644
index 0000000..c9679fb
--- /dev/null
+++ b/0001-Fix-header-installation-path-to-follow-filesystem-st.patch
@@ -0,0 +1,304 @@
+From d252378a3980c99e23340e6b722631182814d8bb Mon Sep 17 00:00:00 2001
+From: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
+Date: Tue, 21 Apr 2026 14:21:35 +0200
+Subject: [PATCH] Fix header installation path to follow filesystem standards
+
+Amends 77c37b1937c9500a2af5a1bed2366058de74d1b7. Not a pure revert.
+
+- PREFIX/PySide6/include is non-standard. Correct path is
+ PREFIX/include/PySide6
+- Fixes system installs broken by the amended commit
+- Updates INSTALL_INTERFACE on imported targets to match
+(include/PySide6, include/shiboken6)
+- Wheel consumers still work. Cmake config lands 4 levels inside the
+ wheel package so _IMPORT_PREFIX resolves to site-packages/PySide6, and
+ INSTALL_INTERFACE:include/PySide6 gives the correct absolute path
+- Build scripts updated to copy headers into
+ include/<cmake_package_name>/ inside the wheel tree, matching what the
+ cmake target advertises
+
+Task-number: PYSIDE-3306
+Change-Id: I9babc5b63ea1fb2d4c23218b703e548ad7295ac6
+Reviewed-by: Ece Cinucen <ece.cinucen@qt.io>
+Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
+---
+ build_scripts/platforms/unix.py | 7 ++++---
+ build_scripts/platforms/windows_desktop.py | 7 ++++---
+ examples/utils/pyside_config.py | 9 ++++++---
+ sources/pyside6/PySide6/CMakeLists.txt | 2 +-
+ sources/pyside6/PySide6/QtCore/CMakeLists.txt | 2 +-
+ sources/pyside6/PySide6/QtDBus/CMakeLists.txt | 2 +-
+ .../pyside6/PySide6/QtDataVisualization/CMakeLists.txt | 2 +-
+ sources/pyside6/PySide6/QtDesigner/CMakeLists.txt | 2 +-
+ sources/pyside6/PySide6/QtGraphs/CMakeLists.txt | 2 +-
+ sources/pyside6/PySide6/QtGui/CMakeLists.txt | 2 +-
+ sources/pyside6/cmake/Macros/PySideModules.cmake | 2 +-
+ sources/pyside6/libpyside/CMakeLists.txt | 9 +++++----
+ sources/pyside6/libpysideqml/CMakeLists.txt | 2 +-
+ sources/pyside6/libpysideremoteobjects/CMakeLists.txt | 2 +-
+ sources/shiboken6/data/shiboken6.pc.in | 2 +-
+ sources/shiboken6/libshiboken/CMakeLists.txt | 9 +++++----
+ 16 files changed, 35 insertions(+), 28 deletions(-)
+
+diff --git a/build_scripts/platforms/unix.py b/build_scripts/platforms/unix.py
+index 59c63fda3..1d8ec9f08 100644
+--- a/build_scripts/platforms/unix.py
++++ b/build_scripts/platforms/unix.py
+@@ -109,10 +109,11 @@ def prepare_packages_posix(pyside_build, _vars, cross_build=False):
+ force=False, _vars=_vars)
+
+ if config.is_internal_shiboken_module_build() or config.is_internal_pyside_build():
+- # <install>/{cmake_package_name}/include/* -> <package_for_wheels>/{st_package_name}/include
++ # <install>/include/{cmake_package_name}/* ->
++ # <package_for_wheels>/{st_package_name}/include/{cmake_package_name}
+ copydir(
+- "{install_dir}/{cmake_package_name}/include",
+- destination_dir / "include",
++ "{install_dir}/include/{cmake_package_name}",
++ destination_dir / "include" / _vars["cmake_package_name"],
+ _vars=_vars)
+
+ if config.is_internal_pyside_build():
+diff --git a/build_scripts/platforms/windows_desktop.py b/build_scripts/platforms/windows_desktop.py
+index 55b92873a..3d5d53ff8 100644
+--- a/build_scripts/platforms/windows_desktop.py
++++ b/build_scripts/platforms/windows_desktop.py
+@@ -97,10 +97,11 @@ def prepare_packages_win32(pyside_build, _vars):
+ recursive=False, _vars=_vars)
+
+ if config.is_internal_shiboken_module_build() or config.is_internal_pyside_build():
+- # <install>/{cmake_package_name}/include/* -> <package_for_wheels>/{st_package_name}/include
++ # <install>/include/{cmake_package_name}/* ->
++ # <package_for_wheels>/{st_package_name}/include/{cmake_package_name}
+ copydir(
+- "{install_dir}/{cmake_package_name}/include",
+- destination_dir / "include",
++ "{install_dir}/include/{cmake_package_name}",
++ destination_dir / "include" / _vars["cmake_package_name"],
+ _vars=_vars)
+
+ if config.is_internal_pyside_build():
+diff --git a/examples/utils/pyside_config.py b/examples/utils/pyside_config.py
+index ec4cb61d1..536162fc9 100644
+--- a/examples/utils/pyside_config.py
++++ b/examples/utils/pyside_config.py
+@@ -273,9 +273,12 @@ def get_package_include_path(which_package):
+ if package_path is None:
+ return None
+
+- includes = f"{package_path}/include"
+-
+- return includes
++ # TODO: Switch to pathlib. Using this for consistency
++ pkg_name = os.path.basename(package_path)
++ subdir_path = f"{package_path}/include/{pkg_name}"
++ if os.path.isdir(subdir_path):
++ return subdir_path
++ return f"{package_path}/include"
+
+
+ def get_package_qmake_lflags(which_package):
+diff --git a/sources/pyside6/PySide6/CMakeLists.txt b/sources/pyside6/PySide6/CMakeLists.txt
+index c1934d9ca..ccfa8430f 100644
+--- a/sources/pyside6/PySide6/CMakeLists.txt
++++ b/sources/pyside6/PySide6/CMakeLists.txt
+@@ -119,7 +119,7 @@ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/templates/widgets_common.xml
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/templates/datavisualization_common.xml
+ DESTINATION share/PySide6${pyside_SUFFIX}/typesystems)
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pyside6_global.h
+- DESTINATION ${BINDING_NAME}${pyside6_SUFFIX}/include)
++ DESTINATION include/${BINDING_NAME}${pyside6_SUFFIX})
+
+ install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/QtAsyncio"
+ DESTINATION "${PYTHON_SITE_PACKAGES}/${BINDING_NAME}${pyside6_SUFFIX}")
+diff --git a/sources/pyside6/PySide6/QtCore/CMakeLists.txt b/sources/pyside6/PySide6/QtCore/CMakeLists.txt
+index 997b0fe0d..ac6b451e6 100644
+--- a/sources/pyside6/PySide6/QtCore/CMakeLists.txt
++++ b/sources/pyside6/PySide6/QtCore/CMakeLists.txt
+@@ -307,4 +307,4 @@ if (APPLE)
+ endif()
+
+ install(FILES ${pyside6_SOURCE_DIR}/qtcorehelper.h ${pyside6_SOURCE_DIR}/qiopipe.h
+- DESTINATION PySide6/include/QtCore/)
++ DESTINATION include/PySide6/QtCore/)
+diff --git a/sources/pyside6/PySide6/QtDBus/CMakeLists.txt b/sources/pyside6/PySide6/QtDBus/CMakeLists.txt
+index 49e86d121..5ee8dc67c 100644
+--- a/sources/pyside6/PySide6/QtDBus/CMakeLists.txt
++++ b/sources/pyside6/PySide6/QtDBus/CMakeLists.txt
+@@ -51,4 +51,4 @@ create_pyside_module(NAME QtDBus
+ TYPESYSTEM_PATH QtDBus_SOURCE_DIR
+ SOURCES QtDBus_SRC)
+
+-install(FILES ${pyside6_SOURCE_DIR}/qtdbushelper.h DESTINATION PySide6/include/QtDBus)
++install(FILES ${pyside6_SOURCE_DIR}/qtdbushelper.h DESTINATION include/PySide6/QtDBus)
+diff --git a/sources/pyside6/PySide6/QtDataVisualization/CMakeLists.txt b/sources/pyside6/PySide6/QtDataVisualization/CMakeLists.txt
+index 424799b22..1276b424f 100644
+--- a/sources/pyside6/PySide6/QtDataVisualization/CMakeLists.txt
++++ b/sources/pyside6/PySide6/QtDataVisualization/CMakeLists.txt
+@@ -68,4 +68,4 @@ create_pyside_module(NAME QtDataVisualization
+ STATIC_SOURCES QtDataVisualization_src)
+
+ install(FILES ${pyside6_SOURCE_DIR}/qtdatavisualization_helper.h
+- DESTINATION PySide6/include/QtDataVisualization)
++ DESTINATION include/PySide6/QtDataVisualization)
+diff --git a/sources/pyside6/PySide6/QtDesigner/CMakeLists.txt b/sources/pyside6/PySide6/QtDesigner/CMakeLists.txt
+index 570ed0f0b..e91532b87 100644
+--- a/sources/pyside6/PySide6/QtDesigner/CMakeLists.txt
++++ b/sources/pyside6/PySide6/QtDesigner/CMakeLists.txt
+@@ -67,4 +67,4 @@ create_pyside_module(NAME QtDesigner
+ STATIC_SOURCES QtDesigner_static_src
+ TYPESYSTEM_NAME ${QtDesigner_BINARY_DIR}/typesystem_designer.xml)
+
+-install(FILES ${pyside6_SOURCE_DIR}/qpydesignerextensions.h DESTINATION PySide6/include/QtDesigner)
++install(FILES ${pyside6_SOURCE_DIR}/qpydesignerextensions.h DESTINATION include/PySide6/QtDesigner)
+diff --git a/sources/pyside6/PySide6/QtGraphs/CMakeLists.txt b/sources/pyside6/PySide6/QtGraphs/CMakeLists.txt
+index 1846f59e6..768960718 100644
+--- a/sources/pyside6/PySide6/QtGraphs/CMakeLists.txt
++++ b/sources/pyside6/PySide6/QtGraphs/CMakeLists.txt
+@@ -97,4 +97,4 @@ create_pyside_module(NAME QtGraphs
+ DROPPED_ENTRIES QtGraphs_DROPPED_ENTRIES)
+
+ install(FILES ${pyside6_SOURCE_DIR}/qtgraphs_helper.h
+- DESTINATION PySide6/include/QtGraphs)
++ DESTINATION include/PySide6/QtGraphs)
+diff --git a/sources/pyside6/PySide6/QtGui/CMakeLists.txt b/sources/pyside6/PySide6/QtGui/CMakeLists.txt
+index 778b1d641..3dd93803b 100644
+--- a/sources/pyside6/PySide6/QtGui/CMakeLists.txt
++++ b/sources/pyside6/PySide6/QtGui/CMakeLists.txt
+@@ -367,4 +367,4 @@ create_pyside_module(NAME QtGui
+
+ install(FILES ${pyside6_SOURCE_DIR}/qpytextobject.h
+ ${pyside6_SOURCE_DIR}/qtguihelper.h
+- DESTINATION PySide6/include/QtGui/)
++ DESTINATION include/PySide6/QtGui/)
+diff --git a/sources/pyside6/cmake/Macros/PySideModules.cmake b/sources/pyside6/cmake/Macros/PySideModules.cmake
+index c54b86994..6dbc1fcf1 100644
+--- a/sources/pyside6/cmake/Macros/PySideModules.cmake
++++ b/sources/pyside6/cmake/Macros/PySideModules.cmake
+@@ -379,7 +379,7 @@ macro(create_pyside_module)
+
+
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/PySide6/${module_NAME}/pyside6_${lower_module_name}_python.h
+- DESTINATION PySide6${pyside6_SUFFIX}/include/${module_NAME}/)
++ DESTINATION include/PySide6${pyside6_SUFFIX}/${module_NAME}/)
+ file(GLOB typesystem_files ${CMAKE_CURRENT_SOURCE_DIR}/typesystem_*.xml ${typesystem_path})
+
+ # Copy typesystem files and remove module names from the <load-typesystem> element
+diff --git a/sources/pyside6/libpyside/CMakeLists.txt b/sources/pyside6/libpyside/CMakeLists.txt
+index 0fef50796..56b1bfe6d 100644
+--- a/sources/pyside6/libpyside/CMakeLists.txt
++++ b/sources/pyside6/libpyside/CMakeLists.txt
+@@ -103,7 +103,6 @@ append_size_optimization_flags(pyside6)
+
+ target_include_directories(pyside6 PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
+- $<INSTALL_INTERFACE:PySide6/include>
+ )
+
+ target_compile_definitions(pyside6 PRIVATE -DQT_LEAN_HEADERS=1 -DQT_NO_KEYWORDS=1)
+@@ -191,13 +190,14 @@ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/PySide6ConfigVersion.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/PySide6ConfigVersion.cmake" @ONLY)
+
+ install(FILES ${libpyside_HEADERS}
+- DESTINATION ${BINDING_NAME}${pyside6_SUFFIX}/include)
++ DESTINATION include/${BINDING_NAME}${pyside6_SUFFIX})
+
+ # build-time installation
+ install(TARGETS pyside6 EXPORT PySide6Targets
+ LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
+ ARCHIVE DESTINATION "${LIB_INSTALL_DIR}"
+- RUNTIME DESTINATION bin)
++ RUNTIME DESTINATION bin
++ INCLUDES DESTINATION "include/PySide6")
+
+ # wheel installation
+ set_target_properties(pyside6 PROPERTIES
+@@ -207,7 +207,8 @@ if(NOT is_pyside6_superproject_build)
+ install(TARGETS pyside6 EXPORT PySide6WheelTargets
+ LIBRARY DESTINATION "PySide6"
+ ARCHIVE DESTINATION "PySide6"
+- RUNTIME DESTINATION "PySide6")
++ RUNTIME DESTINATION "PySide6"
++ INCLUDES DESTINATION "pyside6/include/PySide6")
+
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/wheel/PySide6Config${SHIBOKEN_PYTHON_CONFIG_SUFFIX}.cmake"
+ DESTINATION "${LIB_INSTALL_DIR}/wheels/cmake/PySide6")
+diff --git a/sources/pyside6/libpysideqml/CMakeLists.txt b/sources/pyside6/libpysideqml/CMakeLists.txt
+index 4c6ef386c..f2ebe515f 100644
+--- a/sources/pyside6/libpysideqml/CMakeLists.txt
++++ b/sources/pyside6/libpysideqml/CMakeLists.txt
+@@ -86,7 +86,7 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_T
+ qfp_strip_library("pyside6qml")
+
+ install(FILES ${libpysideqml_HEADERS}
+- DESTINATION ${BINDING_NAME}${pyside6qml_SUFFIX}/include)
++ DESTINATION include/${BINDING_NAME}${pyside6qml_SUFFIX})
+
+ #built-time installation
+ install(TARGETS pyside6qml EXPORT PySide6Targets
+diff --git a/sources/pyside6/libpysideremoteobjects/CMakeLists.txt b/sources/pyside6/libpysideremoteobjects/CMakeLists.txt
+index 4196eb367..3857cd6bb 100644
+--- a/sources/pyside6/libpysideremoteobjects/CMakeLists.txt
++++ b/sources/pyside6/libpysideremoteobjects/CMakeLists.txt
+@@ -80,7 +80,7 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_T
+ #
+
+ install(FILES ${libpysideremoteobjects_HEADERS}
+- DESTINATION ${BINDING_NAME}${pyside6remoteobjects_SUFFIX}/include)
++ DESTINATION include/${BINDING_NAME}${pyside6remoteobjects_SUFFIX})
+
+ install(TARGETS pyside6remoteobjects EXPORT PySide6RemoteObjectsTargets
+ LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
+diff --git a/sources/shiboken6/data/shiboken6.pc.in b/sources/shiboken6/data/shiboken6.pc.in
+index 917b706a3..a82d23168 100644
+--- a/sources/shiboken6/data/shiboken6.pc.in
++++ b/sources/shiboken6/data/shiboken6.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
+ libdir=@CMAKE_INSTALL_PREFIX@/@LIB_INSTALL_DIR@
+-includedir=@CMAKE_INSTALL_PREFIX@/shiboken6/include
++includedir=@CMAKE_INSTALL_PREFIX@/include/shiboken6
+ python_interpreter=@Python_EXECUTABLE@
+ python_include_dir=@Python_INCLUDE_DIRS@
+
+diff --git a/sources/shiboken6/libshiboken/CMakeLists.txt b/sources/shiboken6/libshiboken/CMakeLists.txt
+index d3fef1bed..5713fe09c 100644
+--- a/sources/shiboken6/libshiboken/CMakeLists.txt
++++ b/sources/shiboken6/libshiboken/CMakeLists.txt
+@@ -115,7 +115,6 @@ endif()
+ target_include_directories(libshiboken PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
+- $<INSTALL_INTERFACE:shiboken6/include>
+ )
+
+ if (NOT "${NUMPY_INCLUDE_DIR}" STREQUAL "")
+@@ -203,11 +202,12 @@ install(FILES
+ signature.h
+ signature_p.h
+
+- DESTINATION shiboken6${shiboken6_SUFFIX}/include)
++ DESTINATION include/shiboken6${shiboken6_SUFFIX})
+ install(TARGETS libshiboken EXPORT Shiboken6Targets
+ LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
+ ARCHIVE DESTINATION "${LIB_INSTALL_DIR}"
+- RUNTIME DESTINATION bin)
++ RUNTIME DESTINATION bin
++ INCLUDES DESTINATION "include/shiboken6")
+ install(EXPORT Shiboken6Targets NAMESPACE Shiboken6::
+ DESTINATION ${LIB_INSTALL_DIR}/cmake/Shiboken6)
+
+@@ -220,7 +220,8 @@ if(NOT is_pyside6_superproject_build)
+ install(TARGETS libshiboken EXPORT Shiboken6WheelTargets
+ LIBRARY DESTINATION "shiboken6"
+ ARCHIVE DESTINATION "shiboken6"
+- RUNTIME DESTINATION "shiboken6")
++ RUNTIME DESTINATION "shiboken6"
++ INCLUDES DESTINATION "shiboken6/include/shiboken6")
+
+ install(EXPORT Shiboken6WheelTargets
+ NAMESPACE Shiboken6::
+--
+2.54.0
+
diff --git a/0001-Fix-header-packaging-and-include-path-regressions.patch b/0001-Fix-header-packaging-and-include-path-regressions.patch
new file mode 100644
index 0000000..54ae4a9
--- /dev/null
+++ b/0001-Fix-header-packaging-and-include-path-regressions.patch
@@ -0,0 +1,135 @@
+From 71c4d1750463c99ab9cbff7e1d7162210506f225 Mon Sep 17 00:00:00 2001
+From: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
+Date: Tue, 28 Apr 2026 13:16:05 +0200
+Subject: [PATCH] Fix header packaging and include-path regressions
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Amends 8e74e054f (previous commit)
+
+- Per-module headers (pyside6_qt*_python.h) were absent from wheels
+ - wheel_files.py globs still used the old layout: Qt{module}/*.h
+ - This patch uses the new layout
+- Also fix flat libpyside and qml extra header globs (pyside6 → PySide6)
+- pyside_config.py: return both include/PySide6 and include so cmake
+ callers that append /Qt{module} find headers regardless of old/new
+ wheel layout
+- libpyside CMakeLists: Fix pyside6 → PySide6
+- Shiboken6ToolsMacros: fall back to Release when Debug location absent
+ and vice versa
+
+Fixes: PYSIDE-3306
+Change-Id: I79bcf2d9549a0c38a8a702e0409feee63207b8d4
+Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
+---
+ build_scripts/wheel_files.py | 12 ++++++------
+ examples/utils/pyside_config.py | 8 ++++++--
+ sources/pyside6/libpyside/CMakeLists.txt | 2 +-
+ .../data/Shiboken6ToolsMacros.cmake | 9 ++++++++-
+ 4 files changed, 21 insertions(+), 10 deletions(-)
+
+diff --git a/build_scripts/wheel_files.py b/build_scripts/wheel_files.py
+index db59a9f81..103bd3481 100644
+--- a/build_scripts/wheel_files.py
++++ b/build_scripts/wheel_files.py
+@@ -87,7 +87,7 @@ class ModuleData:
+ self.qml.append(f"Qt{self.name}")
+ self.pyi.append(f"Qt{self.name}.pyi")
+ self.typesystems.append(f"typesystem_{_lo}.xml")
+- self.include.append(f"Qt{self.name}/*.h")
++ self.include.append(f"PySide6/Qt{self.name}/*.h")
+ self.glue.append(f"qt{_lo}.cpp")
+ self.doc_glue.append(f"qt{_lo}.rst")
+ if not len(self.metatypes):
+@@ -250,7 +250,7 @@ def module_QtCore() -> ModuleData:
+ ]
+
+ data.typesystems.extend(_typesystems)
+- data.include.append("*.h")
++ data.include.append("PySide6/*.h")
+ if sys.platform == "win32":
+ data.qtlib.append("pyside6.*")
+ data.extra_files.append("qt.conf")
+@@ -319,7 +319,7 @@ def module_QtCore() -> ModuleData:
+
+ # add the include folders for libpyside binaries
+ # this is useful for downstream cmake projects like QtBridges
+- data.include.append("pyside6/*.h")
++ data.include.append("PySide6/*.h")
+
+ return data
+
+@@ -485,9 +485,9 @@ def module_QtQml() -> ModuleData:
+ ]
+
+ _include = [
+- "pysideqml.h",
+- "pysideqmlmacros.h",
+- "pysideqmlregistertype.h",
++ "PySide6/pysideqml.h",
++ "PySide6/pysideqmlmacros.h",
++ "PySide6/pysideqmlregistertype.h",
+ ]
+
+ _metatypes = [
+diff --git a/examples/utils/pyside_config.py b/examples/utils/pyside_config.py
+index 536162fc9..c8c37039f 100644
+--- a/examples/utils/pyside_config.py
++++ b/examples/utils/pyside_config.py
+@@ -276,9 +276,13 @@ def get_package_include_path(which_package):
+ # TODO: Switch to pathlib. Using this for consistency
+ pkg_name = os.path.basename(package_path)
+ subdir_path = f"{package_path}/include/{pkg_name}"
++ base_path = f"{package_path}/include"
+ if os.path.isdir(subdir_path):
+- return subdir_path
+- return f"{package_path}/include"
++ # Return both the sub-package dir and the base include dir so
++ # that both new and old wheel layout works (also system installation
++ # paths)
++ return f"{subdir_path} {base_path}"
++ return base_path
+
+
+ def get_package_qmake_lflags(which_package):
+diff --git a/sources/pyside6/libpyside/CMakeLists.txt b/sources/pyside6/libpyside/CMakeLists.txt
+index 56b1bfe6d..2e578a84a 100644
+--- a/sources/pyside6/libpyside/CMakeLists.txt
++++ b/sources/pyside6/libpyside/CMakeLists.txt
+@@ -208,7 +208,7 @@ if(NOT is_pyside6_superproject_build)
+ LIBRARY DESTINATION "PySide6"
+ ARCHIVE DESTINATION "PySide6"
+ RUNTIME DESTINATION "PySide6"
+- INCLUDES DESTINATION "pyside6/include/PySide6")
++ INCLUDES DESTINATION "PySide6/include/PySide6")
+
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/wheel/PySide6Config${SHIBOKEN_PYTHON_CONFIG_SUFFIX}.cmake"
+ DESTINATION "${LIB_INSTALL_DIR}/wheels/cmake/PySide6")
+diff --git a/sources/shiboken6_generator/data/Shiboken6ToolsMacros.cmake b/sources/shiboken6_generator/data/Shiboken6ToolsMacros.cmake
+index 27a2ec533..5b1590790 100644
+--- a/sources/shiboken6_generator/data/Shiboken6ToolsMacros.cmake
++++ b/sources/shiboken6_generator/data/Shiboken6ToolsMacros.cmake
+@@ -25,11 +25,18 @@ function(shiboken_generator_create_binding)
+
+ get_target_property(shiboken_include_dirs Shiboken6::libshiboken INTERFACE_INCLUDE_DIRECTORIES)
+
+- # Get Shiboken path based on build type
++ # Get Shiboken path, falling back to the other config if the requested one is absent
++ # (e.g. consumer project is Release but wheel was built as Debug, or vice versa).
+ if(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ get_target_property(shiboken_path Shiboken6::shiboken6 IMPORTED_LOCATION_DEBUG)
++ if(NOT shiboken_path)
++ get_target_property(shiboken_path Shiboken6::shiboken6 IMPORTED_LOCATION_RELEASE)
++ endif()
+ else()
+ get_target_property(shiboken_path Shiboken6::shiboken6 IMPORTED_LOCATION_RELEASE)
++ if(NOT shiboken_path)
++ get_target_property(shiboken_path Shiboken6::shiboken6 IMPORTED_LOCATION_DEBUG)
++ endif()
+ endif()
+
+ # Basic shiboken options
+--
+2.54.0
+
diff --git a/0001-Fix-installation.patch b/0001-Fix-installation.patch
deleted file mode 100644
index 2643959..0000000
--- a/0001-Fix-installation.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 6d4ac91913f8dbc061a03fca1bd699a6248f3ad4 Mon Sep 17 00:00:00 2001
-From: Jan Grulich <jgrulich@redhat.com>
-Date: Wed, 15 Apr 2026 15:54:49 +0200
-Subject: [PATCH] Fix installation
-
-Upstream decided to install files in non-standard locations.
----
- sources/pyside6/CMakeLists.txt | 2 +-
- sources/shiboken6/libshiboken/CMakeLists.txt | 2 +-
- sources/shiboken6_generator/generator/CMakeLists.txt | 4 ++--
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/sources/pyside6/CMakeLists.txt b/sources/pyside6/CMakeLists.txt
-index bfe3956..b3f9946 100644
---- a/sources/pyside6/CMakeLists.txt
-+++ b/sources/pyside6/CMakeLists.txt
-@@ -40,7 +40,7 @@ install(EXPORT PySide6Targets
- if(NOT is_pyside6_superproject_build)
- install(EXPORT PySide6WheelTargets
- NAMESPACE PySide6::
-- DESTINATION "${LIB_INSTALL_DIR}/wheels/cmake/PySide6"
-+ DESTINATION "${LIB_INSTALL_DIR}/cmake/PySide6"
- FILE PySide6Targets.cmake)
- endif()
-
-diff --git a/sources/shiboken6/libshiboken/CMakeLists.txt b/sources/shiboken6/libshiboken/CMakeLists.txt
-index bc3569b..de7b06b 100644
---- a/sources/shiboken6/libshiboken/CMakeLists.txt
-+++ b/sources/shiboken6/libshiboken/CMakeLists.txt
-@@ -221,6 +221,6 @@ if(NOT is_pyside6_superproject_build)
-
- install(EXPORT Shiboken6WheelTargets
- NAMESPACE Shiboken6::
-- DESTINATION "${LIB_INSTALL_DIR}/wheels/cmake/Shiboken6"
-+ DESTINATION "${LIB_INSTALL_DIR}/cmake/Shiboken6"
- FILE Shiboken6Targets.cmake)
- endif()
-diff --git a/sources/shiboken6_generator/generator/CMakeLists.txt b/sources/shiboken6_generator/generator/CMakeLists.txt
-index 33bb413..fd2a9f3 100644
---- a/sources/shiboken6_generator/generator/CMakeLists.txt
-+++ b/sources/shiboken6_generator/generator/CMakeLists.txt
-@@ -72,11 +72,11 @@ install(EXPORT "${package_name}Targets"
- if(NOT is_pyside6_superproject_build)
- install(TARGETS shiboken6
- EXPORT "${package_name}WheelTargets"
-- DESTINATION "shiboken6_generator")
-+ DESTINATION "${BIN_INSTALL_DIR}")
-
- install(EXPORT "${package_name}WheelTargets"
- NAMESPACE "Shiboken6::"
-- DESTINATION "${LIB_INSTALL_DIR}/wheels/cmake/${package_name}"
-+ DESTINATION "${LIB_INSTALL_DIR}/cmake/${package_name}"
- FILE "${package_name}Targets.cmake")
- endif()
-
---
-2.53.0
-
diff --git a/python-pyside6.spec b/python-pyside6.spec
index af54b52..fec430e 100644
--- a/python-pyside6.spec
+++ b/python-pyside6.spec
@@ -10,7 +10,7 @@
Name: python-%{pypi_name}
Version: 6.11.1
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: Python bindings for the Qt 6 cross-platform application and UI framework
License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0
@@ -23,10 +23,10 @@ Source0: https://download.qt.io/official_releases/QtForPython/%{pypi_name
%global majmin %(echo %{version} | cut -d. -f1-2)
#Source1: https://download.qt.io/official_releases/qt/%{majmin}/%{qt6ver}/submodules/%{qt_module}-everywhere-src-%{qt6ver}.tar.xz
-# OpenSuse patches
-Patch: 0001-Revert-Modify-headers-installation-for-CMake-builds.patch
+# Upstream post-6.11.1 fixes for header install paths (PYSIDE-3306)
+Patch: 0001-Fix-header-installation-path-to-follow-filesystem-st.patch
+Patch: 0001-Fix-header-packaging-and-include-path-regressions.patch
Patch: 0001-Always-link-to-python-libraries.patch
-Patch: 0001-Fix-installation.patch
BuildRequires: cmake
BuildRequires: ninja-build
@@ -367,6 +367,9 @@ export LD_LIBRARY_PATH="%{buildroot}%{_libdir}"
%endif
%changelog
+* Mon Jun 08 2026 Jan Grulich <jgrulich@redhat.com> - 6.11.1-4
+- Remove cmake config path sed and replace patches with upstream cherry-picks
+
* Wed Jun 03 2026 Python Maint <python-maint@redhat.com> - 6.11.1-3
- Rebuilt for Python 3.15
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-06-08 12:34 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-08 12:34 [rpms/python-pyside6] rawhide: Remove cmake config path sed and replace patches with upstream cherry-picks Jan Grulich
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox