[arch-commits] Commit in qt5-doc/trunk (PKGBUILD qt5-webengine-python3.patch)

Antonio Rojas arojas at gemini.archlinux.org
Sat Oct 16 22:32:38 UTC 2021


    Date: Saturday, October 16, 2021 @ 22:32:38
  Author: arojas
Revision: 426090

Build without Python 2, fix build with GCC 11

Added:
  qt5-doc/trunk/qt5-webengine-python3.patch
Modified:
  qt5-doc/trunk/PKGBUILD

-----------------------------+
 PKGBUILD                    |   20 +++--
 qt5-webengine-python3.patch |  150 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 164 insertions(+), 6 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-10-16 21:29:02 UTC (rev 426089)
+++ PKGBUILD	2021-10-16 22:32:38 UTC (rev 426090)
@@ -6,16 +6,22 @@
 pkgname=(qt5-doc qt5-examples)
 _qtver=5.15.2
 pkgver=${_qtver/-/}
-pkgrel=1
+pkgrel=2
 arch=('any')
 url='https://www.qt.io'
 license=('GPL3' 'LGPL3' 'FDL' 'custom')
-makedepends=('qt5-tools' 'python2' 'python' 'pciutils' 'libxtst' 'libxcursor' 'libxrandr' 'libxss' 'libxcomposite'
+makedepends=('qt5-tools' 'python' 'pciutils' 'libxtst' 'libxcursor' 'libxrandr' 'libxss' 'libxcomposite'
              'gperf' 'nss' 'clang')
 groups=('qt' 'qt5')
 _pkgfqn="qt-everywhere-src-${_qtver}"
-source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/single/${_pkgfqn}.tar.xz")
-sha256sums=('3a530d1b243b5dec00bc54937455471aaa3e56849d2593edb8ded07228202240')
+source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/single/${_pkgfqn}.tar.xz"
+         https://invent.kde.org/qt/qt/qtbase/-/commit/8252ef5f.patch
+         https://invent.kde.org/qt/qt/qtbase/-/commit/cb2da673.patch
+         qt5-webengine-python3.patch)
+sha256sums=('3a530d1b243b5dec00bc54937455471aaa3e56849d2593edb8ded07228202240'
+            '8ab742b991ed5c43e8da4b1ce1982fd38fe611aaac3d57ee37728b59932b518a'
+            '33304570431c0dd3becc22f3f0911ccfc781a1ce6c7926c3acb08278cd2e60c3'
+            '54de45621463a7c07f87482fbcbb9eacbc60d840bb69b34bc6c776d1df720453')
 
 prepare() {
   cd ${_pkgfqn}
@@ -23,13 +29,15 @@
   ln -s /usr/bin qttools/
   ln -s /usr/bin/{rcc,uic,moc} qtbase/bin/
 
-  sed -e 's|QMAKE_PYTHON2 = python|QMAKE_PYTHON2 = python2|' -i qtwebengine/mkspecs/features/functions.prf # Use python2
+  patch -d qtbase -p1 < "$srcdir"/8252ef5f.patch # Fix build with GCC 11
+  patch -d qtbase -p1 < "$srcdir"/cb2da673.patch
+  patch -d qtwebengine -p1 < "$srcdir"/qt5-webengine-python3.patch # Fix build with Python 3
 }
 
 build() {
   cd ${_pkgfqn}
 
-  QMAKE_PYTHON2=python2 ./configure -confirm-license -opensource \
+  ./configure -confirm-license -opensource \
     -prefix /usr \
     -docdir /usr/share/doc/qt \
     -headerdir /usr/include/qt \

Added: qt5-webengine-python3.patch
===================================================================
--- qt5-webengine-python3.patch	                        (rev 0)
+++ qt5-webengine-python3.patch	2021-10-16 22:32:38 UTC (rev 426090)
@@ -0,0 +1,150 @@
+diff --git a/configure.pri b/configure.pri
+index e072961f..5efe30bc 100644
+--- a/configure.pri
++++ b/configure.pri
+@@ -12,10 +12,6 @@ defineTest(isPythonVersionSupported) {
+     python_version ~= s/[()]//g
+     python_version = $$split(python_version, ',')
+     python_major_version = $$first(python_version)
+-    greaterThan(python_major_version, 2) {
+-        qtLog("Python version 3 is not supported by Chromium.")
+-        return(false)
+-    }
+     python_minor_version = $$member(python_version, 1)
+     python_patch_version = $$member(python_version, 2)
+     greaterThan(python_major_version, 1): greaterThan(python_minor_version, 6): greaterThan(python_patch_version, 4): return(true)
+@@ -52,10 +48,10 @@ defineTest(qtConfReport_jumboBuild) {
+     qtConfReportPadded($${1}, $$mergeLimit)
+ }
+ 
+-defineTest(qtConfTest_detectPython2) {
+-    python = $$qtConfFindInPath("python2$$EXE_SUFFIX")
++defineTest(qtConfTest_detectPython) {
++    python = $$qtConfFindInPath("python$$EXE_SUFFIX")
+     isEmpty(python) {
+-        qtLog("'python2$$EXE_SUFFIX' not found in PATH. Checking for 'python$$EXE_SUFFIX'.")
++        qtLog("'python$$EXE_SUFFIX' not found in PATH. Checking for 'python$$EXE_SUFFIX'.")
+         python = $$qtConfFindInPath("python$$EXE_SUFFIX")
+     }
+     isEmpty(python) {
+@@ -63,11 +59,11 @@ defineTest(qtConfTest_detectPython2) {
+         return(false)
+     }
+     !isPythonVersionSupported($$python) {
+-        qtLog("A suitable Python 2 executable could not be located.")
++        qtLog("A suitable Python executable could not be located.")
+         return(false)
+     }
+ 
+-    # Make tests.python2.location available in configure.json.
++    # Make tests.python.location available in configure.json.
+     $${1}.location = $$clean_path($$python)
+     export($${1}.location)
+     $${1}.cache += location
+diff --git a/mkspecs/features/functions.prf b/mkspecs/features/functions.prf
+index 2750d707..9fda13d0 100644
+--- a/mkspecs/features/functions.prf
++++ b/mkspecs/features/functions.prf
+@@ -39,11 +39,11 @@ defineReplace(which) {
+ 
+ # Returns the unquoted path to the python executable.
+ defineReplace(pythonPath) {
+-    isEmpty(QMAKE_PYTHON2) {
++    isEmpty(QMAKE_PYTHON) {
+         # Fallback for building QtWebEngine with Qt < 5.8
+-        QMAKE_PYTHON2 = python
++        QMAKE_PYTHON = python
+     }
+-    return($$QMAKE_PYTHON2)
++    return($$QMAKE_PYTHON)
+ }
+ 
+ # Returns the python executable for use with shell / make targets.
+diff --git a/src/buildtools/config/support.pri b/src/buildtools/config/support.pri
+index e7f869a1..1bf2c5d7 100644
+--- a/src/buildtools/config/support.pri
++++ b/src/buildtools/config/support.pri
+@@ -21,7 +21,7 @@ defineReplace(qtwebengine_checkWebEngineCoreError) {
+     !qtwebengine_checkForGperf(QtWebEngine):return(false)
+     !qtwebengine_checkForBison(QtWebEngine):return(false)
+     !qtwebengine_checkForFlex(QtWebEngine):return(false)
+-    !qtwebengine_checkForPython2(QtWebengine):return(false)
++    !qtwebengine_checkForPython(QtWebengine):return(false)
+     !qtwebengine_checkForSanitizer(QtWebEngine):return(false)
+     linux:!qtwebengine_checkForPkgCfg(QtWebEngine):return(false)
+     linux:!qtwebengine_checkForHostPkgCfg(QtWebEngine):return(false)
+@@ -50,7 +50,7 @@ defineReplace(qtwebengine_checkPdfError) {
+     !qtwebengine_checkForGperf(QtPdf):return(false)
+     !qtwebengine_checkForBison(QtPdf):return(false)
+     !qtwebengine_checkForFlex(QtPdf):return(false)
+-    !qtwebengine_checkForPython2(QtPdf):return(false)
++    !qtwebengine_checkForPython(QtPdf):return(false)
+     !qtwebengine_checkForSanitizer(QtPdf):return(false)
+     linux:!qtwebengine_checkForPkgCfg(QtPdf):return(false)
+     linux:!qtwebengine_checkForHostPkgCfg(QtPdf):return(false)
+@@ -142,10 +142,10 @@ defineTest(qtwebengine_checkForFlex) {
+     return(true)
+ }
+ 
+-defineTest(qtwebengine_checkForPython2) {
++defineTest(qtwebengine_checkForPython) {
+     module = $$1
+-    !qtConfig(webengine-python2) {
+-        qtwebengine_skipBuild("Python version 2 (2.7.5 or later) is required to build $${module}.")
++    !qtConfig(webengine-python) {
++        qtwebengine_skipBuild("Python is required to build $${module}.")
+         return(false)
+     }
+     return(true)
+diff --git a/src/buildtools/configure.json b/src/buildtools/configure.json
+index 88d1790c..032aa665 100644
+--- a/src/buildtools/configure.json
++++ b/src/buildtools/configure.json
+@@ -294,9 +294,9 @@
+             "label": "system ninja",
+             "type": "detectNinja"
+         },
+-        "webengine-python2": {
+-            "label": "python2",
+-            "type": "detectPython2",
++        "webengine-python": {
++            "label": "python",
++            "type": "detectPython",
+             "log": "location"
+         },
+         "webengine-winversion": {
+@@ -372,7 +372,7 @@
+                          && features.webengine-gperf
+                          && features.webengine-bison
+                          && features.webengine-flex
+-                         && features.webengine-python2
++                         && features.webengine-python
+                          && (!config.sanitizer || features.webengine-sanitizer)
+                          && (!config.linux || features.pkg-config)
+                          && (!config.linux || features.webengine-host-pkg-config)
+@@ -397,7 +397,7 @@
+                          && features.webengine-gperf
+                          && features.webengine-bison
+                          && features.webengine-flex
+-                         && features.webengine-python2
++                         && features.webengine-python
+                          && (!config.sanitizer || features.webengine-sanitizer)
+                          && (!config.linux || features.pkg-config)
+                          && (!config.linux || features.webengine-host-pkg-config)
+@@ -420,12 +420,12 @@
+             "autoDetect": "features.private_tests",
+             "output": [ "privateFeature" ]
+         },
+-        "webengine-python2": {
+-            "label": "python2",
+-            "condition": "tests.webengine-python2",
++        "webengine-python": {
++            "label": "python",
++            "condition": "tests.webengine-python",
+             "output": [
+                 "privateFeature",
+-                { "type": "varAssign", "name": "QMAKE_PYTHON2", "value": "tests.webengine-python2.location" }
++                { "type": "varAssign", "name": "QMAKE_PYTHON", "value": "tests.webengine-python.location" }
+             ]
+         },
+         "webengine-gperf": {



More information about the arch-commits mailing list