Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] Qt for python: update stack to 5.14.2.1
@ 2020-05-10 15:09 yopito
  2020-05-11 18:20 ` [PR PATCH] [Merged]: " Hoshpak
  0 siblings, 1 reply; 2+ messages in thread
From: yopito @ 2020-05-10 15:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 548 bytes --]

There is a new pull request by yopito against master on the void-packages repository

https://github.com/yopito/void-packages qt.py.tools
https://github.com/void-linux/void-packages/pull/21814

Qt for python: update stack to 5.14.2.1
* personal build fine on x86_64, x86_musl, aarch64 and aarch64-musl
* "FreeCAD -t 0" is fine (no regression)
* FreeCAD does not need to get rebuilt. However, fixes are needed to rebuild it against this new pyside2 stack.

A patch file from https://github.com/void-linux/void-packages/pull/21814.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-qt.py.tools-21814.patch --]
[-- Type: text/x-diff, Size: 20175 bytes --]

From df3df99795e05dce351c2da23a8f46a41386939f Mon Sep 17 00:00:00 2001
From: yopito <pierre.bourgin@free.fr>
Date: Sun, 10 May 2020 17:03:12 +0200
Subject: [PATCH 1/4] shiboken2: update to 5.14.2.1, unbreak nocross

---
 .../cmake-fix-path-for-crossuild.patch        | 29 +++++++++++++++++
 srcpkgs/shiboken2/patches/qstringlist.patch   | 12 -------
 srcpkgs/shiboken2/template                    | 31 +++++++------------
 3 files changed, 41 insertions(+), 31 deletions(-)
 create mode 100644 srcpkgs/shiboken2/patches/cmake-fix-path-for-crossuild.patch
 delete mode 100644 srcpkgs/shiboken2/patches/qstringlist.patch

diff --git a/srcpkgs/shiboken2/patches/cmake-fix-path-for-crossuild.patch b/srcpkgs/shiboken2/patches/cmake-fix-path-for-crossuild.patch
new file mode 100644
index 00000000000..c33f6b22510
--- /dev/null
+++ b/srcpkgs/shiboken2/patches/cmake-fix-path-for-crossuild.patch
@@ -0,0 +1,29 @@
+
+* LIB_INSTALL_DIR must be set as a relative path.
+  If not, side-effect on shiboken2/CMakeList.txt: LIB_INSTALL_DIR is redefined,
+  so generated Shiboken2Targets.cmake contains absolute paths that are wrong for crossbuild.
+
+* bin/shiboken2 localization must be absolute for crossbuild.
+
+--- sources/shiboken2/ApiExtractor/CMakeLists.txt.ORIG
++++ sources/shiboken2/ApiExtractor/CMakeLists.txt
+@@ -84,7 +84,7 @@
+ 
+ target_compile_definitions(apiextractor PRIVATE CMAKE_CXX_COMPILER="${CMAKE_CXX_COMPILER}")
+ 
+-set(LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})" FORCE)
++set(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})" FORCE)
+ 
+ if (BUILD_TESTS)
+     find_package(Qt5Test 5.12 REQUIRED)
+--- sources/shiboken2/generator/CMakeLists.txt.ORIG
++++ sources/shiboken2/generator/CMakeLists.txt
+@@ -30,7 +30,7 @@
+ 
+ install(TARGETS shiboken2
+         EXPORT Shiboken2Targets
+-        DESTINATION bin)
++        DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
+ 
+ set(shiboken_generator_package_name "shiboken2_generator")
+ 
diff --git a/srcpkgs/shiboken2/patches/qstringlist.patch b/srcpkgs/shiboken2/patches/qstringlist.patch
deleted file mode 100644
index 2dc1e3d0885..00000000000
--- a/srcpkgs/shiboken2/patches/qstringlist.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Fixes build with Qt 5.13.
-
---- sources/shiboken2/ApiExtractor/clangparser/clangutils.h
-+++ sources/shiboken2/ApiExtractor/clangparser/clangutils.h
-@@ -33,6 +33,7 @@
- #include <QtCore/QPair>
- #include <QtCore/QString>
- #include <QtCore/QVector>
-+#include <QtCore/QStringList>
- 
- QT_FORWARD_DECLARE_CLASS(QDebug)
- 
diff --git a/srcpkgs/shiboken2/template b/srcpkgs/shiboken2/template
index 94a7961453e..0863f1893c1 100644
--- a/srcpkgs/shiboken2/template
+++ b/srcpkgs/shiboken2/template
@@ -1,11 +1,12 @@
 # Template file for 'shiboken2'
 pkgname=shiboken2
-version=5.14.1
-revision=2
+version=5.14.2.1
+revision=1
 _pkgname="pyside-setup-opensource-src-${version}"
-wrksrc="$_pkgname"
-configure_args="-DUSE_PYTHON_VERSION=3 -DCMAKE_INSTALL_PREFIX=/usr
- -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF"
+wrksrc="${_pkgname/%5.14.2.1/5.14.2}"
+build_wrksrc="sources/shiboken2"
+build_style=cmake
+configure_args="-DBUILD_TESTS=OFF"
 hostmakedepends="cmake python3-devel"
 makedepends="python3-devel qt5-devel qt5-xmlpatterns-devel clang libxml2-devel
  libxslt-devel python3-numpy"
@@ -14,22 +15,14 @@ maintainer="yopito <pierre.bourgin@free.fr>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.qt.io/Qt_for_Python/Shiboken"
 distfiles="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${version}-src/${_pkgname}.tar.xz"
-checksum=41ce931695567639c92acb68a9d66ed5609f067011af9a94b53fc0d697ad1d1c
-python_version=3
-nocross="clang installed on target but checks being broken etc."
+checksum=11f48956208a487dabf6f531e60fb88ad0e48f2979cfc9e79c1c986387c491fa
 
-do_build() {
-	[ ! -d build ] && mkdir build
-	pushd build
-	export CLANG_INSTALL_DIR=/usr
-	cmake ../sources/shiboken2 ${configure_args}
-	make ${makejobs}
-	popd
-}
+python_version=3
+export CLANG_INSTALL_DIR=${XBPS_CROSS_BASE}/usr
 
-do_install() {
-	make -C build DESTDIR=${DESTDIR} install
-}
+if [ ${CROSS_BUILD} ]; then
+	hostmakedepends+=" qt5-qmake qt5-host-tools shiboken2"
+fi
 
 libshiboken2-devel_package() {
 	depends="${sourcepkg}-${version}_${revision}

From 74a339fedb67e3841b937eb43e7121f7b81e7533 Mon Sep 17 00:00:00 2001
From: yopito <pierre.bourgin@free.fr>
Date: Sun, 10 May 2020 17:03:16 +0200
Subject: [PATCH 2/4] python3-pyside2: update to 5.14.2.1

[ci skip]
---
 .../patches/crossbuild-for-shiboken2.patch    | 11 ++++++
 .../crossbuild-no-pyi-generation.patch        | 31 +++++++++++++++
 srcpkgs/python3-pyside2/template              | 39 +++++++------------
 3 files changed, 57 insertions(+), 24 deletions(-)
 create mode 100644 srcpkgs/python3-pyside2/patches/crossbuild-for-shiboken2.patch
 create mode 100644 srcpkgs/python3-pyside2/patches/crossbuild-no-pyi-generation.patch

diff --git a/srcpkgs/python3-pyside2/patches/crossbuild-for-shiboken2.patch b/srcpkgs/python3-pyside2/patches/crossbuild-for-shiboken2.patch
new file mode 100644
index 00000000000..5a071a33d20
--- /dev/null
+++ b/srcpkgs/python3-pyside2/patches/crossbuild-for-shiboken2.patch
@@ -0,0 +1,11 @@
+--- sources/pyside2/cmake/Macros/PySideModules.cmake.ORIG
++++ sources/pyside2/cmake/Macros/PySideModules.cmake
+@@ -123,7 +123,7 @@
+                         BYPRODUCTS ${${module_SOURCES}}
+                         COMMAND Shiboken2::shiboken2 ${GENERATOR_EXTRA_FLAGS}
+                         "${pyside2_BINARY_DIR}/${module_NAME}_global.h"
+-                        --include-paths=${shiboken_include_dirs}
++                        --include-paths=${shiboken_include_dirs}${PATH_SEP}${CMAKE_FIND_ROOT_PATH}/usr/include
+                         ${shiboken_framework_include_dirs_option}
+                         --typesystem-paths=${pyside_binary_dir}${PATH_SEP}${pyside2_SOURCE_DIR}${PATH_SEP}${${module_TYPESYSTEM_PATH}}
+                         --output-directory=${CMAKE_CURRENT_BINARY_DIR}
diff --git a/srcpkgs/python3-pyside2/patches/crossbuild-no-pyi-generation.patch b/srcpkgs/python3-pyside2/patches/crossbuild-no-pyi-generation.patch
new file mode 100644
index 00000000000..b43838964b5
--- /dev/null
+++ b/srcpkgs/python3-pyside2/patches/crossbuild-no-pyi-generation.patch
@@ -0,0 +1,31 @@
+pyside2 cmake code does not handle crossbuild while generating pyi files.
+(stub files for type checker).
+From now, disable their generation.
+
+--- sources/pyside2/cmake/Macros/PySideModules.cmake.ORIG
++++ sources/pyside2/cmake/Macros/PySideModules.cmake
+@@ -201,18 +201,24 @@
+     endif()
+ 
+     # Add target to generate pyi file, which depends on the module target.
++    if(NOT CMAKE_CROSSCOMPILING)
+     add_custom_target("${module_NAME}_pyi" ALL
+                       COMMAND ${CMAKE_COMMAND} -E env ${ld_prefix}
+                       "${SHIBOKEN_PYTHON_INTERPRETER}"
+                       "${CMAKE_CURRENT_SOURCE_DIR}/../support/generate_pyi.py" ${generate_pyi_options})
+     add_dependencies("${module_NAME}_pyi" ${module_NAME})
++    else()
++      message(STATUS "crossbuild: disable generation of ${module_NAME}_pyi")
++    endif()
+ 
+     # install
+     install(TARGETS ${module_NAME} LIBRARY DESTINATION "${PYTHON_SITE_PACKAGES}/PySide2")
+ 
++    if(NOT CMAKE_CROSSCOMPILING)
+     file(GLOB hinting_stub_files RELATIVE "${CMAKE_CURRENT_BINARY_DIR}/PySide2" "${CMAKE_CURRENT_BINARY_DIR}/PySide2/*.pyi")
+     install(FILES ${hinting_stub_files}
+             DESTINATION "${PYTHON_SITE_PACKAGES}/PySide2")
++    endif()
+ 
+     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/PySide2/${module_NAME}/pyside2_${lower_module_name}_python.h
+             DESTINATION include/PySide2${pyside2_SUFFIX}/${module_NAME}/)
diff --git a/srcpkgs/python3-pyside2/template b/srcpkgs/python3-pyside2/template
index 20253c69c96..3538d3a7998 100644
--- a/srcpkgs/python3-pyside2/template
+++ b/srcpkgs/python3-pyside2/template
@@ -1,26 +1,34 @@
 # Template file for 'python3-pyside2'
 pkgname=python3-pyside2
-version=5.14.1
+version=5.14.2.1
 revision=1
 _pkgname="pyside-setup-opensource-src-${version}"
-wrksrc="$_pkgname"
-configure_args="-DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
- -DBUILD_TESTS=OFF -DPYTHON_EXECUTABLE=/usr/bin/python"
-hostmakedepends="cmake"
+wrksrc="${_pkgname/%5.14.2.1/5.14.2}"
+build_wrksrc="sources/pyside2"
+build_style=cmake
+configure_args="-DBUILD_TESTS=OFF -DPYTHON_EXECUTABLE=/usr/bin/python"
+hostmakedepends="cmake python3 shiboken2"
 makedepends="python3-devel libshiboken2-devel qt5-devel
  qt5-multimedia-devel qt5-tools-devel qt5-plugin-mysql qt5-plugin-odbc
  qt5-plugin-pgsql qt5-plugin-sqlite qt5-plugin-tds qt5-x11extras-devel
  qt5-xmlpatterns-devel qt5-location-devel qt5-declarative-devel qt5-scxml-devel
  qt5-script-devel qt5-sensors-devel qt5-speech-devel qt5-charts-devel
  qt5-svg-devel qt5-datavis3d-devel qt5-webchannel-devel qt5-websockets-devel
- qt5-3d-devel qt5-gamepad-devel qt5-remoteobjects-devel"
+ qt5-3d-devel qt5-gamepad-devel qt5-remoteobjects-devel
+ $(vopt_if webengine 'qt5-webengine-devel')"
 depends="python3-shiboken2"
 short_desc="Python3 bindings for the Qt5 toolkit"
 maintainer="yopito <pierre.bourgin@free.fr>"
 license="LGPL-3.0-or-later"
 homepage="https://wiki.qt.io/Qt_for_Python"
 distfiles="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${version}-src/${_pkgname}.tar.xz"
-checksum=41ce931695567639c92acb68a9d66ed5609f067011af9a94b53fc0d697ad1d1c
+checksum=11f48956208a487dabf6f531e60fb88ad0e48f2979cfc9e79c1c986387c491fa
+
+export CLANG_INSTALL_DIR=${XBPS_CROSS_BASE}/usr
+
+if [ ${CROSS_BUILD} ]; then
+	hostmakedepends+=" qt5-qmake qt5-host-tools qt5-tools qt5-remoteobjects qt5-scxml"
+fi
 
 build_options="webengine"
 desc_option_webengine="Build Qt5 WebEngine bindings"
@@ -29,10 +37,6 @@ if [ "$XBPS_TARGET_ENDIAN" = "le" ]; then
 	build_options_default="webengine"
 fi
 
-if [ "$build_option_webengine" ]; then
-	makedepends+=" qt5-webengine-devel"
-fi
-
 subpackages="libpyside2-python3-devel libpyside2-python3 libpyside-python3
  python3-pyside python3-pyside-phonon python3-pyenet"
 
@@ -40,19 +44,6 @@ if [ "$build_option_webengine" ]; then
 	subpackages+=" python3-pyside2-webengine"
 fi
 
-do_build() {
-	[ ! -d build ] && mkdir build
-	pushd build
-	export CLANG_INSTALL_DIR=/usr
-	cmake ../sources/pyside2 ${configure_args}
-	make ${makejobs}
-	popd
-}
-
-do_install() {
-	make -C build DESTDIR=${DESTDIR} install
-}
-
 python3-pyside2-webengine_package() {
 	depends="python3-pyside2-${version}_${revision}"
 	short_desc+=" - WebEngine component"

From af0f648f8a1519eef9c3ce0ada90d79bfac5587e Mon Sep 17 00:00:00 2001
From: yopito <pierre.bourgin@free.fr>
Date: Sun, 10 May 2020 17:03:24 +0200
Subject: [PATCH 3/4] pyside2-tools: update to 5.14.2.1

[ci skip]
---
 .../patches/dont-install-symlinks.patch       | 46 +++++++++++++++++++
 srcpkgs/pyside2-tools/template                | 30 +++++-------
 2 files changed, 57 insertions(+), 19 deletions(-)
 create mode 100644 srcpkgs/pyside2-tools/patches/dont-install-symlinks.patch

diff --git a/srcpkgs/pyside2-tools/patches/dont-install-symlinks.patch b/srcpkgs/pyside2-tools/patches/dont-install-symlinks.patch
new file mode 100644
index 00000000000..9f1bd43c312
--- /dev/null
+++ b/srcpkgs/pyside2-tools/patches/dont-install-symlinks.patch
@@ -0,0 +1,46 @@
+don't install these symlinks, it's not pyside2-tools business:
+* /usr/bin/designer -> /usr/bin/qtchooser
+* /usr/bin/rcc -> /usr/bin/qtchooser
+* /usr/bin/uic -> /usr/bin/qtchooser
+
+--- sources/pyside2-tools/CMakeLists.txt.ORIG
++++ sources/pyside2-tools/CMakeLists.txt
+@@ -55,38 +55,6 @@
+     set(DESIGNER_PATH "${TOOLS_PATH}/designer${EXE_EXT}")
+ endif()
+ 
+-install(FILES "${UIC_PATH}"
+-        DESTINATION bin
+-        PERMISSIONS
+-        OWNER_EXECUTE OWNER_WRITE OWNER_READ
+-        GROUP_EXECUTE GROUP_READ
+-        WORLD_EXECUTE WORLD_READ)
+-
+-install(FILES "${RCC_PATH}"
+-        DESTINATION bin
+-        PERMISSIONS
+-        OWNER_EXECUTE OWNER_WRITE OWNER_READ
+-        GROUP_EXECUTE GROUP_READ
+-        WORLD_EXECUTE WORLD_READ)
+-
+-if (EXISTS ${DESIGNER_PATH})
+-    if (APPLE)
+-        install(DIRECTORY "${DESIGNER_PATH}"
+-                DESTINATION bin
+-                FILE_PERMISSIONS
+-                OWNER_EXECUTE OWNER_WRITE OWNER_READ
+-                GROUP_EXECUTE GROUP_READ
+-                WORLD_EXECUTE WORLD_READ)
+-    else()
+-        install(FILES "${DESIGNER_PATH}"
+-                DESTINATION bin
+-                PERMISSIONS
+-                OWNER_EXECUTE OWNER_WRITE OWNER_READ
+-                GROUP_EXECUTE GROUP_READ
+-                WORLD_EXECUTE WORLD_READ)
+-    endif()
+-endif()
+-
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake"
+                "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
+                IMMEDIATE @ONLY)
diff --git a/srcpkgs/pyside2-tools/template b/srcpkgs/pyside2-tools/template
index e7f10cbee4f..1141a572a1f 100644
--- a/srcpkgs/pyside2-tools/template
+++ b/srcpkgs/pyside2-tools/template
@@ -1,14 +1,13 @@
 # Template file for 'pyside2-tools'
-# XXX keep pyside2-tools version 5.13.2 to support Qt 5.13.2:
-#     pyside2-tools 5.14 rely on rcc and ui tools provided by Qt 5.14
 pkgname=pyside2-tools
-version=5.13.2
+version=5.14.2.1
 revision=1
 _pkgname="pyside-setup-opensource-src-${version}"
-wrksrc="$_pkgname"
-configure_args="-DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
- -DBUILD_TESTS=OFF"
-hostmakedepends="cmake python3-devel"
+wrksrc="${_pkgname/%5.14.2.1/5.14.2}"
+build_wrksrc="sources/pyside2-tools"
+build_style=cmake
+configure_args="-DBUILD_TESTS=OFF"
+hostmakedepends="cmake python3-devel shiboken2"
 makedepends="python3-devel libshiboken2-devel qt5-devel
  libpyside2-python3-devel"
 short_desc="Python3 bindings for the Qt5 toolkit"
@@ -16,18 +15,11 @@ maintainer="yopito <pierre.bourgin@free.fr>"
 license="LGPL-3.0-or-later"
 homepage="https://wiki.qt.io/Qt_for_Python/Shiboken"
 distfiles="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${version}-src/${_pkgname}.tar.xz"
-checksum=3e255d64df08880d0281ebe86009d5ea45f24332b308954d967c33995f75e543
+checksum=11f48956208a487dabf6f531e60fb88ad0e48f2979cfc9e79c1c986387c491fa
 python_version=3
 
-do_build() {
-	[ ! -d build ] && mkdir build
-	pushd build
-	export CLANG_INSTALL_DIR=/usr
-	cmake ../sources/pyside2-tools ${configure_args}
-	make ${makejobs}
-	popd
-}
+export CLANG_INSTALL_DIR=${XBPS_CROSS_BASE}/usr
 
-do_install() {
-	make -C build DESTDIR=${DESTDIR} install
-}
+if [ ${CROSS_BUILD} ]; then
+	hostmakedepends+=" qt5-qmake qt5-host-tools"
+fi

From f818a8af3bad480bca423e22be23a9adf23a9063 Mon Sep 17 00:00:00 2001
From: yopito <pierre.bourgin@free.fr>
Date: Sun, 10 May 2020 17:03:30 +0200
Subject: [PATCH 4/4] freecad: fix build with pyside2 5.14.2.1 stack

[ci skip]
---
 ...00-detect-shiboken2-and-pyside2-5.14.patch | 33 +++++++++++++++++++
 .../101-pyside2-tool-5.14-support.patch       | 11 +++++++
 srcpkgs/freecad/template                      | 18 +++++-----
 3 files changed, 54 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/freecad/patches/100-detect-shiboken2-and-pyside2-5.14.patch
 create mode 100644 srcpkgs/freecad/patches/101-pyside2-tool-5.14-support.patch

diff --git a/srcpkgs/freecad/patches/100-detect-shiboken2-and-pyside2-5.14.patch b/srcpkgs/freecad/patches/100-detect-shiboken2-and-pyside2-5.14.patch
new file mode 100644
index 00000000000..14ce9d5fcf9
--- /dev/null
+++ b/srcpkgs/freecad/patches/100-detect-shiboken2-and-pyside2-5.14.patch
@@ -0,0 +1,33 @@
+source: https://svnweb.freebsd.org/ports/head/cad/freecad/files/patch-CMakeLists.txt?revision=504361&view=co
+
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -989,6 +989,13 @@ endif()
+             endif()
+         endif()
+ 
++        # pyside2 changed it's cmake files, this is the dance we have
++        # to dance to be compatible with the old and the new versions
++        if(SHIBOKEN_PYTHON_INCLUDE_DIRS AND NOT SHIBOKEN_INCLUDE_DIR)
++          get_property(SHIBOKEN_INCLUDE_DIR TARGET Shiboken2::libshiboken PROPERTY INTERFACE_INCLUDE_DIRECTORIES)
++            get_property(SHIBOKEN_LIBRARY TARGET Shiboken2::libshiboken PROPERTY IMPORTED_LOCATION_RELEASE)
++        endif(SHIBOKEN_PYTHON_INCLUDE_DIRS AND NOT SHIBOKEN_INCLUDE_DIR)
++
+         if(NOT SHIBOKEN_INCLUDE_DIR)
+             MESSAGE("====================\n"
+                     "shiboken2 not found.\n"
+@@ -996,6 +1003,14 @@ endif()
+         endif(NOT SHIBOKEN_INCLUDE_DIR)
+ 
+         find_package(PySide2 QUIET)# REQUIRED
++
++        # pyside2 changed it's cmake files, this is the dance we have
++        # to dance to be compatible with the old and the new versions
++        if(NOT PYSIDE_INCLUDE_DIR)
++          get_property(PYSIDE_INCLUDE_DIR TARGET PySide2::pyside2 PROPERTY INTERFACE_INCLUDE_DIRECTORIES)
++          get_property(PYSIDE_LIBRARY TARGET PySide2::pyside2 PROPERTY IMPORTED_LOCATION_RELEASE)
++        endif(NOT PYSIDE_INCLUDE_DIR)
++
+         if(NOT PYSIDE_INCLUDE_DIR)
+             MESSAGE("==================\n"
+                     "PySide2 not found.\n"
diff --git a/srcpkgs/freecad/patches/101-pyside2-tool-5.14-support.patch b/srcpkgs/freecad/patches/101-pyside2-tool-5.14-support.patch
new file mode 100644
index 00000000000..7aadc89220c
--- /dev/null
+++ b/srcpkgs/freecad/patches/101-pyside2-tool-5.14-support.patch
@@ -0,0 +1,11 @@
+--- cMake/FindPySide2Tools.cmake.ORIG
++++ cMake/FindPySide2Tools.cmake
+@@ -68,7 +68,7 @@
+         # pyside-rcc generates in comments at beginning, which is why
+         # we follow the tool command with in-place sed.
+         ADD_CUSTOM_COMMAND(OUTPUT "${outfile}"
+-          COMMAND "${PYSIDE2RCCBINARY}" "${infile}" ${PY_ATTRIBUTE} -o "${outfile}"
++          COMMAND "${PYSIDE2RCCBINARY}" "${infile}" --generator python -o "${outfile}"
+           COMMAND sed -i "/^# /d" "${outfile}"
+           MAIN_DEPENDENCY "${infile}"
+         )
diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template
index e57b74d7dd0..41ab8c1c896 100644
--- a/srcpkgs/freecad/template
+++ b/srcpkgs/freecad/template
@@ -1,7 +1,7 @@
 # Template file for 'freecad'
 pkgname=freecad
 version=0.18.4
-revision=4
+revision=5
 wrksrc="FreeCAD-${version}"
 build_style=cmake
 
@@ -12,7 +12,9 @@ configure_args="
  -DCMAKE_INSTALL_PREFIX=${_inst_prefix}
  -DCMAKE_INSTALL_LIBDIR=${_inst_prefix}/lib
  -DCMAKE_INSTALL_DATAROOTDIR=/usr/share
- -DMEDFILE_INCLUDE_DIRS=/usr/include/med"
+ -DMEDFILE_INCLUDE_DIRS=/usr/include/med
+ -DPYSIDE2RCCBINARY=/usr/bin/rcc-qt5
+ -DPYSIDE2UICBINARY=/usr/bin/uic-qt5"
 hostmakedepends="pkg-config swig doxygen graphviz"
 makedepends="python3-devel boost-devel libxerces-c-devel zlib-devel occt-devel
  vtk-devel hdf5-devel openmpi-devel libmed-devel eigen double-conversion-devel
@@ -21,12 +23,6 @@ makedepends="python3-devel boost-devel libxerces-c-devel zlib-devel occt-devel
  jsoncpp-devel qt5-devel qt5-svg-devel qt5-tools-devel qt5-webkit-devel
  qt5-x11extras-devel coin3-doc glew-devel"
 
-case "$XBPS_TARGET_MACHINE" in
-	*-musl) # SIGSEGV with musl, see https://github.com/void-linux/void-packages/issues/12595
-		makedepends=${makedepends/qt5-webkit-devel/}
-		;;
-esac
-
 # FreeCAD help: qt5/assistant with datas in SQLite format
 depends="python3-matplotlib python3-pyside2 qt5-plugin-sqlite python3-pivy"
 
@@ -40,6 +36,12 @@ homepage="https://freecadweb.org/"
 distfiles="https://github.com/FreeCAD/FreeCAD/archive/${version}.tar.gz"
 checksum=4e0cce447b31b8989a00cf68c49ae012ce8e5546a56c6e0874fbd8f7ddedffd2
 
+case "$XBPS_TARGET_MACHINE" in
+	*-musl) # SIGSEGV with musl, see https://github.com/void-linux/void-packages/issues/12595
+		makedepends=${makedepends/qt5-webkit-devel/}
+		;;
+esac
+
 post_extract() {
 	# Report exact minor version
 	sed -i -e "s,^\(set(PACKAGE_VERSION_MINOR\) .*,\1 \"${version#*.}\")," CMakeLists.txt

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PR PATCH] [Merged]: Qt for python: update stack to 5.14.2.1
  2020-05-10 15:09 [PR PATCH] Qt for python: update stack to 5.14.2.1 yopito
@ 2020-05-11 18:20 ` Hoshpak
  0 siblings, 0 replies; 2+ messages in thread
From: Hoshpak @ 2020-05-11 18:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 395 bytes --]

There's a merged pull request on the void-packages repository

Qt for python: update stack to 5.14.2.1
https://github.com/void-linux/void-packages/pull/21814

Description:
* personal build fine on x86_64, x86_musl, aarch64 and aarch64-musl
* "FreeCAD -t 0" is fine (no regression)
* FreeCAD does not need to get rebuilt. However, fixes are needed to rebuild it against this new pyside2 stack.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-05-11 18:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-10 15:09 [PR PATCH] Qt for python: update stack to 5.14.2.1 yopito
2020-05-11 18:20 ` [PR PATCH] [Merged]: " Hoshpak

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).