python3-pyside6/0001-build-Install-module-doc-snippet-files.patch

113 lines
5.4 KiB
Diff
Raw Normal View History

From cacc9c5803a6dec820dd46211a836453183c8dab Mon Sep 17 00:00:00 2001
From: Friedemann Kleint <Friedemann.Kleint@qt.io>
Date: Tue, 15 Oct 2024 08:11:46 +0200
Subject: [PATCH] build: Install module doc snippet files
Amends b55e221464c18053fa44f18132071ebdaee8f432.
Task-number: PYSIDE-1106
Fixes: PYSIDE-2893
Change-Id: I4a2688bfb5fcdddc5c6baea49d2fdc9c0f2381f1
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
(cherry picked from commit ad155e67a208d4ac4c20d7033701d6ddb3d2593e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
---
build_scripts/platforms/unix.py | 8 ++++----
build_scripts/platforms/windows_desktop.py | 7 +++----
build_scripts/wheel_files.py | 3 +++
sources/pyside6/cmake/Macros/PySideModules.cmake | 9 +++++++++
4 files changed, 19 insertions(+), 8 deletions(-)
Index: pyside-setup-everywhere-src-6.8.0/build_scripts/platforms/unix.py
===================================================================
--- pyside-setup-everywhere-src-6.8.0.orig/build_scripts/platforms/unix.py
+++ pyside-setup-everywhere-src-6.8.0/build_scripts/platforms/unix.py
@@ -199,10 +199,10 @@ def prepare_packages_posix(pyside_build,
# <install>/share/{st_package_name}/glue/* ->
# <setup>/{st_package_name}/glue
- copydir(
- "{install_dir}/share/{st_package_name}/glue",
- "{st_build_dir}/{st_package_name}/glue",
- _vars=_vars)
+ for glue in ['glue', 'doc']:
+ source = "{install_dir}/share/{st_package_name}/" + glue
+ target = "{st_build_dir}/{st_package_name}/" + glue
+ copydir(source, target, _vars=_vars)
if not is_android:
# <source>/pyside6/{st_package_name}/support/* ->
Index: pyside-setup-everywhere-src-6.8.0/build_scripts/platforms/windows_desktop.py
===================================================================
--- pyside-setup-everywhere-src-6.8.0.orig/build_scripts/platforms/windows_desktop.py
+++ pyside-setup-everywhere-src-6.8.0/build_scripts/platforms/windows_desktop.py
@@ -153,10 +153,9 @@ def prepare_packages_win32(pyside_build,
# <install>/share/{st_package_name}/glue/* ->
# <setup>/{st_package_name}/glue
- copydir(
- "{install_dir}/share/{st_package_name}/glue",
- destination_dir / "glue",
- _vars=_vars)
+ for glue in ['glue', 'doc']:
+ source = "{install_dir}/share/{st_package_name}/" + glue
+ copydir(source, destination_dir / glue, _vars=_vars)
# <source>/pyside6/{st_package_name}/support/* ->
# <setup>/{st_package_name}/support/*
Index: pyside-setup-everywhere-src-6.8.0/build_scripts/wheel_files.py
===================================================================
--- pyside-setup-everywhere-src-6.8.0.orig/build_scripts/wheel_files.py
+++ pyside-setup-everywhere-src-6.8.0/build_scripts/wheel_files.py
@@ -59,6 +59,7 @@ class ModuleData:
typesystems: list[str] = field(default_factory=list)
include: list[str] = field(default_factory=list)
glue: list[str] = field(default_factory=list)
+ doc_glue: list[str] = field(default_factory=list)
metatypes: list[str] = field(default_factory=list)
plugins: list[str] = field(default_factory=list)
@@ -87,6 +88,7 @@ class ModuleData:
self.typesystems.append(f"typesystem_{_lo}.xml")
self.include.append(f"Qt{self.name}/*.h")
self.glue.append(f"qt{_lo}.cpp")
+ self.doc_glue.append(f"qt{_lo}.rst")
if not len(self.metatypes):
self.metatypes.append(f"qt6{_lo}_relwithdebinfo_metatypes.json")
@@ -122,6 +124,7 @@ class ModuleData:
self.typesystems = [f"typesystems/{i}" for i in self.typesystems]
self.include = [f"include/{i}" for i in self.include]
self.glue = [f"glue/{i}" for i in self.glue]
+ self.doc_glue = [f"doc/{i}" for i in self.doc_glue]
def macos_pyside_wrappers_lib(self, s):
if s.startswith("Qt"):
Index: pyside-setup-everywhere-src-6.8.0/sources/pyside6/cmake/Macros/PySideModules.cmake
===================================================================
--- pyside-setup-everywhere-src-6.8.0.orig/sources/pyside6/cmake/Macros/PySideModules.cmake
+++ pyside-setup-everywhere-src-6.8.0/sources/pyside6/cmake/Macros/PySideModules.cmake
@@ -176,6 +176,14 @@ macro(create_pyside_module)
set(${module_NAME}_glue_dependency ${${module_NAME}_glue})
endif()
+ # Install module doc files.
+ set(${module_NAME}_doc "${CMAKE_CURRENT_SOURCE_DIR}/../doc/${lower_module_name}.rst")
+ set(${module_name}_doc_dependency "")
+ if(EXISTS ${${module_NAME}_doc})
+ install(FILES ${${module_NAME}_doc} DESTINATION share/PySide6${pyside6_SUFFIX}/doc)
+ set(${module_NAME}_doc_dependency ${${module_NAME}_doc})
+ endif()
+
# Install standalone glue files into typesystems subfolder, so that the resolved relative
# paths remain correct.
if (module_GLUE_SOURCES)
@@ -245,6 +253,7 @@ macro(create_pyside_module)
DEPENDS ${total_type_system_files}
${module_GLUE_SOURCES}
${${module_NAME}_glue_dependency}
+ ${${module_NAME}_doc_dependency}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMENT "Running generator for ${module_NAME}...")