[arch-commits] Commit in qt5-base/repos/kde-unstable-x86_64 (6 files)

Antonio Rojas arojas at archlinux.org
Fri Mar 20 14:40:05 UTC 2020


    Date: Friday, March 20, 2020 @ 14:40:03
  Author: arojas
Revision: 377970

archrelease: copy kde-unstable to kde-unstable-x86_64

Added:
  qt5-base/repos/kde-unstable-x86_64/PKGBUILD
    (from rev 377969, qt5-base/kde-unstable/PKGBUILD)
  qt5-base/repos/kde-unstable-x86_64/qt5-base-cflags.patch
    (from rev 377969, qt5-base/kde-unstable/qt5-base-cflags.patch)
  qt5-base/repos/kde-unstable-x86_64/qtbug-82700.patch
    (from rev 377969, qt5-base/kde-unstable/qtbug-82700.patch)
Deleted:
  qt5-base/repos/kde-unstable-x86_64/PKGBUILD
  qt5-base/repos/kde-unstable-x86_64/qt5-base-cflags.patch
  qt5-base/repos/kde-unstable-x86_64/qtbug-82700.patch

-----------------------+
 PKGBUILD              |  212 +++++++++++++++++++++++-------------------------
 qt5-base-cflags.patch |   54 +++++-------
 qtbug-82700.patch     |  144 ++++++++++++++++----------------
 3 files changed, 201 insertions(+), 209 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD	2020-03-20 14:39:28 UTC (rev 377969)
+++ PKGBUILD	2020-03-20 14:40:03 UTC (rev 377970)
@@ -1,109 +0,0 @@
-# Maintainer: Felix Yan <felixonmars at archlinux.org>
-# Contributor: Andrea Scarpino <andrea at archlinux.org>
-
-pkgbase=qt5-base
-pkgname=(qt5-base qt5-xcb-private-headers)
-_qtver=5.15.0-beta1
-pkgver=${_qtver/-/}
-pkgrel=3
-arch=('x86_64')
-url='https://www.qt.io'
-license=('GPL3' 'LGPL3' 'FDL' 'custom')
-pkgdesc='A cross-platform application and UI framework'
-depends=('libjpeg-turbo' 'xcb-util-keysyms' 'xcb-util-renderutil' 'libgl' 'fontconfig' 'xdg-utils'
-         'shared-mime-info' 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'mesa'
-         'tslib' 'libinput' 'libxkbcommon-x11' 'libproxy' 'libcups' 'double-conversion' 'md4c')
-makedepends=('libfbclient' 'mariadb-libs' 'sqlite' 'unixodbc' 'postgresql-libs' 'alsa-lib' 'gst-plugins-base-libs'
-             'gtk3' 'libpulse' 'cups' 'freetds' 'vulkan-headers')
-optdepends=('qt5-svg: to use SVG icon themes'
-            'qt5-wayland: to run Qt applications in a Wayland session'
-            'qt5-translations: for some native UI translations'
-            'postgresql-libs: PostgreSQL driver'
-            'mariadb-libs: MariaDB driver'
-            'unixodbc: ODBC driver'
-            'libfbclient: Firebird/iBase driver'
-            'freetds: MS SQL driver'
-            'gtk3: GTK platform plugin'
-            'perl: for fixqt4headers and syncqt')
-conflicts=('qtchooser')
-groups=('qt' 'qt5')
-_pkgfqn="${pkgbase/5-/}-everywhere-src-${_qtver}"
-source=("https://download.qt.io/development_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
-         qt5-base-cflags.patch
-         qtbug-82547a.patch::"https://code.qt.io/cgit/qt/qtbase.git/patch/?id=ede85452"
-         qtbug-82547b.patch::"https://code.qt.io/cgit/qt/qtbase.git/patch/?id=1edf586e"
-         qtbug-82700.patch)
-sha256sums=('d835c6ba15e1a443bb0114a5eeea4efd512bc74700bb1ae003514d1465cd7b94'
-            '7cbf56fd6076f0c193f06715d1dfdae61905504cb01bd907ac33cc487f48d8c6'
-            'd829a91b91f2f0c8c7e50b24ca98a3dca931f5e89f61e5dbd2cbe45ae8d47632'
-            '83ed9cf370078a87ae2dceabc602baccd9a23e6d1aec376344a29cf168ed72d7'
-            '38c28c63e86dbae8d27db38d274bb9b5f4d2702feab9023f86d50555c84a96af')
-
-prepare() {
-  cd ${_pkgfqn}
-
-  patch -p1 -i ../qt5-base-cflags.patch # Use system CFLAGS
-  patch -p1 -i ../qtbug-82547a.patch # fix build with system mimetype database
-  patch -p1 -i ../qtbug-82547b.patch
-  patch -p1 -i ../qtbug-82700.patch # Fix binary incompatible change in QJsonObject and QJsonArray
-}
-
-build() {
-  cd ${_pkgfqn}
-
-  ./configure -confirm-license -opensource -v \
-    -prefix /usr \
-    -docdir /usr/share/doc/qt \
-    -headerdir /usr/include/qt \
-    -archdatadir /usr/lib/qt \
-    -datadir /usr/share/qt \
-    -sysconfdir /etc/xdg \
-    -examplesdir /usr/share/doc/qt/examples \
-    -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \
-    -system-sqlite \
-    -openssl-linked \
-    -nomake examples \
-    -no-rpath \
-    -dbus-linked \
-    -system-harfbuzz \
-    -journald \
-    -no-mimetype-database \
-    -no-use-gold-linker \
-    -reduce-relocations
-  make
-}
-
-package_qt5-base() {
-  pkgdesc='A cross-platform application and UI framework'
-
-  cd ${_pkgfqn}
-  make INSTALL_ROOT="${pkgdir}" install
-
-  install -Dm644 LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase
-
-  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
-  find "${pkgdir}/usr/lib" -type f -name '*.prl' \
-    -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
-  # Fix wrong qmake path in pri file
-  sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \
-    "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri
-
-  # Symlinks for backwards compatibility
-  for b in "${pkgdir}"/usr/bin/*; do
-    ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
-  done
-}
-
-package_qt5-xcb-private-headers() {
-  pkgdesc='Private headers for Qt5 Xcb'
-
-  depends=("qt5-base=$pkgver")
-  optdepends=()
-  groups=()
-  conflicts=()
-
-  cd ${_pkgfqn}
-  install -d -m755 "$pkgdir"/usr/include/qtxcb-private
-  cp -r src/plugins/platforms/xcb/*.h "$pkgdir"/usr/include/qtxcb-private/
-}

Copied: qt5-base/repos/kde-unstable-x86_64/PKGBUILD (from rev 377969, qt5-base/kde-unstable/PKGBUILD)
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2020-03-20 14:40:03 UTC (rev 377970)
@@ -0,0 +1,103 @@
+# Maintainer: Felix Yan <felixonmars at archlinux.org>
+# Contributor: Andrea Scarpino <andrea at archlinux.org>
+
+pkgbase=qt5-base
+pkgname=(qt5-base qt5-xcb-private-headers)
+_qtver=5.15.0-beta2
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='https://www.qt.io'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='A cross-platform application and UI framework'
+depends=('libjpeg-turbo' 'xcb-util-keysyms' 'xcb-util-renderutil' 'libgl' 'fontconfig' 'xdg-utils'
+         'shared-mime-info' 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'mesa'
+         'tslib' 'libinput' 'libxkbcommon-x11' 'libproxy' 'libcups' 'double-conversion' 'md4c')
+makedepends=('libfbclient' 'mariadb-libs' 'sqlite' 'unixodbc' 'postgresql-libs' 'alsa-lib' 'gst-plugins-base-libs'
+             'gtk3' 'libpulse' 'cups' 'freetds' 'vulkan-headers')
+optdepends=('qt5-svg: to use SVG icon themes'
+            'qt5-wayland: to run Qt applications in a Wayland session'
+            'qt5-translations: for some native UI translations'
+            'postgresql-libs: PostgreSQL driver'
+            'mariadb-libs: MariaDB driver'
+            'unixodbc: ODBC driver'
+            'libfbclient: Firebird/iBase driver'
+            'freetds: MS SQL driver'
+            'gtk3: GTK platform plugin'
+            'perl: for fixqt4headers and syncqt')
+conflicts=('qtchooser')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgbase/5-/}-everywhere-src-${_qtver}"
+source=("https://download.qt.io/development_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
+         qt5-base-cflags.patch
+         qtbug-82700.patch)
+sha256sums=('4b07983d9b8ae611bbb65388beea0629990080b99813788e4e7db56cb7897677'
+            'c70640499637314df68cc7a56519f0bf8b65dd808dd982c96c6f045bba993adf'
+            '38c28c63e86dbae8d27db38d274bb9b5f4d2702feab9023f86d50555c84a96af')
+
+prepare() {
+  cd ${_pkgfqn}
+
+  patch -p1 -i ../qt5-base-cflags.patch # Use system CFLAGS
+  patch -p1 -i ../qtbug-82700.patch # Fix binary incompatible change in QJsonObject and QJsonArray
+}
+
+build() {
+  cd ${_pkgfqn}
+
+  ./configure -confirm-license -opensource -v \
+    -prefix /usr \
+    -docdir /usr/share/doc/qt \
+    -headerdir /usr/include/qt \
+    -archdatadir /usr/lib/qt \
+    -datadir /usr/share/qt \
+    -sysconfdir /etc/xdg \
+    -examplesdir /usr/share/doc/qt/examples \
+    -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \
+    -system-sqlite \
+    -openssl-linked \
+    -nomake examples \
+    -no-rpath \
+    -dbus-linked \
+    -system-harfbuzz \
+    -journald \
+    -no-mimetype-database \
+    -no-use-gold-linker \
+    -reduce-relocations
+  make
+}
+
+package_qt5-base() {
+  pkgdesc='A cross-platform application and UI framework'
+
+  cd ${_pkgfqn}
+  make INSTALL_ROOT="${pkgdir}" install
+
+  install -Dm644 LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase
+
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+  find "${pkgdir}/usr/lib" -type f -name '*.prl' \
+    -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+  # Fix wrong qmake path in pri file
+  sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \
+    "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri
+
+  # Symlinks for backwards compatibility
+  for b in "${pkgdir}"/usr/bin/*; do
+    ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
+  done
+}
+
+package_qt5-xcb-private-headers() {
+  pkgdesc='Private headers for Qt5 Xcb'
+
+  depends=("qt5-base=$pkgver")
+  optdepends=()
+  groups=()
+  conflicts=()
+
+  cd ${_pkgfqn}
+  install -d -m755 "$pkgdir"/usr/include/qtxcb-private
+  cp -r src/plugins/platforms/xcb/*.h "$pkgdir"/usr/include/qtxcb-private/
+}

Deleted: qt5-base-cflags.patch
===================================================================
--- qt5-base-cflags.patch	2020-03-20 14:39:28 UTC (rev 377969)
+++ qt5-base-cflags.patch	2020-03-20 14:40:03 UTC (rev 377970)
@@ -1,28 +0,0 @@
-diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf
-index a493cd5984..79f2d2fff9 100644
---- a/mkspecs/common/g++-unix.conf
-+++ b/mkspecs/common/g++-unix.conf
-@@ -10,5 +10,6 @@
- 
- include(g++-base.conf)
- 
--QMAKE_LFLAGS_RELEASE   += -Wl,-O1
-+ENV_LDFLAGS = $$(LDFLAGS)
-+QMAKE_LFLAGS_RELEASE   += $$split(ENV_LDFLAGS, " ")
- QMAKE_LFLAGS_NOUNDEF   += -Wl,--no-undefined
-diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
-index 4d82321cba..4a61fc9d25 100644
---- a/mkspecs/common/gcc-base.conf
-+++ b/mkspecs/common/gcc-base.conf
-@@ -40,8 +40,9 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os
- QMAKE_CFLAGS_DEPS          += -M
- QMAKE_CFLAGS_WARN_ON       += -Wall -Wextra
- QMAKE_CFLAGS_WARN_OFF      += -w
--QMAKE_CFLAGS_RELEASE       += $$QMAKE_CFLAGS_OPTIMIZE
--QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g
-+ENV_CFLAGS = $$(CFLAGS)
-+QMAKE_CFLAGS_RELEASE       += $$split(ENV_CFLAGS, " ")
-+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -g $$split(ENV_CFLAGS, " ")
- QMAKE_CFLAGS_DEBUG         += -g
- QMAKE_CFLAGS_SHLIB         += $$QMAKE_CFLAGS_PIC
- QMAKE_CFLAGS_STATIC_LIB    += $$QMAKE_CFLAGS_PIC

Copied: qt5-base/repos/kde-unstable-x86_64/qt5-base-cflags.patch (from rev 377969, qt5-base/kde-unstable/qt5-base-cflags.patch)
===================================================================
--- qt5-base-cflags.patch	                        (rev 0)
+++ qt5-base-cflags.patch	2020-03-20 14:40:03 UTC (rev 377970)
@@ -0,0 +1,26 @@
+diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf
+index a493cd5984..79f2d2fff9 100644
+--- a/mkspecs/common/g++-unix.conf
++++ b/mkspecs/common/g++-unix.conf
+@@ -10,5 +10,5 @@
+ 
+ include(g++-base.conf)
+ 
+-QMAKE_LFLAGS_RELEASE   += -Wl,-O1
++eval(QMAKE_LFLAGS_RELEASE += $$(LDFLAGS))
+ QMAKE_LFLAGS_NOUNDEF   += -Wl,--no-undefined
+diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
+index 4d82321cba..4a61fc9d25 100644
+--- a/mkspecs/common/gcc-base.conf
++++ b/mkspecs/common/gcc-base.conf
+@@ -40,8 +40,8 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os
+ QMAKE_CFLAGS_DEPS          += -M
+ QMAKE_CFLAGS_WARN_ON       += -Wall -Wextra
+ QMAKE_CFLAGS_WARN_OFF      += -w
+-QMAKE_CFLAGS_RELEASE       += $$QMAKE_CFLAGS_OPTIMIZE
+-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g
++eval(QMAKE_CFLAGS_RELEASE += $$(CFLAGS))
++eval(QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CFLAGS))
+ QMAKE_CFLAGS_DEBUG         += -g
+ QMAKE_CFLAGS_SHLIB         += $$QMAKE_CFLAGS_PIC
+ QMAKE_CFLAGS_STATIC_LIB    += $$QMAKE_CFLAGS_PIC

Deleted: qtbug-82700.patch
===================================================================
--- qtbug-82700.patch	2020-03-20 14:39:28 UTC (rev 377969)
+++ qtbug-82700.patch	2020-03-20 14:40:03 UTC (rev 377970)
@@ -1,72 +0,0 @@
-From 8ac10bea1fac5dad30bf9ff8a1d43eddc271bfb5 Mon Sep 17 00:00:00 2001
-From: Thiago Macieira <thiago.macieira at intel.com>
-Date: Thu, 05 Mar 2020 15:31:38 -0800
-Subject: [PATCH] Fix binary compatibility issue in QJson{Array,Object} initializer_list
-
-The rewrite using CBOR internals replaced one of the two naked pointers
-that were members of QJsonArray and QJsonObject with a
-QExplicitlySharedDataPointer. The problem is that its operator= will
-read the current value to decrement the refcount and possibly delete the
-pointed object.
-
-But QJson{Array,Object}::initialize() are called from inlined code,
-without initialization. So we can't call operator=. We need to memcpy to
-write a nullptr.
-
-This is not unit-testable because it requires compiling against 5.14 or
-earlier, then running against 5.15.
-
-Fixes: QTBUG-82700
-Change-Id: Iaa63461109844e978376fffd15f98c62656d197c
----
-
-diff --git a/src/corelib/serialization/qjsonarray.cpp b/src/corelib/serialization/qjsonarray.cpp
-index 0870277..05138ad 100644
---- a/src/corelib/serialization/qjsonarray.cpp
-+++ b/src/corelib/serialization/qjsonarray.cpp
-@@ -167,7 +167,11 @@
-  */
- void QJsonArray::initialize()
- {
--    a = nullptr;
-+    // Because we're being called with uninitialized state, we can't do:
-+    //    a = nullptr;
-+    // QExplicitlyDataSharedPointer::operator= will read the current value
-+    void *ptr = &a;
-+    memset(ptr, 0, sizeof(a));
- }
- 
- /*!
-@@ -177,7 +181,6 @@
- 
- QJsonArray::QJsonArray(std::initializer_list<QJsonValue> args)
- {
--    initialize();
-     for (const auto & arg : args)
-         append(arg);
- }
-diff --git a/src/corelib/serialization/qjsonobject.cpp b/src/corelib/serialization/qjsonobject.cpp
-index a698727..4f0b5cd 100644
---- a/src/corelib/serialization/qjsonobject.cpp
-+++ b/src/corelib/serialization/qjsonobject.cpp
-@@ -150,7 +150,11 @@
- 
- void QJsonObject::initialize()
- {
--    o = nullptr;
-+    // Because we're being called with uninitialized state, we can't do:
-+    //    o = nullptr;
-+    // QExplicitlyDataSharedPointer::operator= will read the current value
-+    void *ptr = &o;
-+    memset(ptr, 0, sizeof(o));
- }
- 
- /*!
-@@ -160,7 +164,6 @@
- 
- QJsonObject::QJsonObject(std::initializer_list<QPair<QString, QJsonValue> > args)
- {
--    initialize();
-     for (const auto &arg : args)
-         insert(arg.first, arg.second);
- }

Copied: qt5-base/repos/kde-unstable-x86_64/qtbug-82700.patch (from rev 377969, qt5-base/kde-unstable/qtbug-82700.patch)
===================================================================
--- qtbug-82700.patch	                        (rev 0)
+++ qtbug-82700.patch	2020-03-20 14:40:03 UTC (rev 377970)
@@ -0,0 +1,72 @@
+From 8ac10bea1fac5dad30bf9ff8a1d43eddc271bfb5 Mon Sep 17 00:00:00 2001
+From: Thiago Macieira <thiago.macieira at intel.com>
+Date: Thu, 05 Mar 2020 15:31:38 -0800
+Subject: [PATCH] Fix binary compatibility issue in QJson{Array,Object} initializer_list
+
+The rewrite using CBOR internals replaced one of the two naked pointers
+that were members of QJsonArray and QJsonObject with a
+QExplicitlySharedDataPointer. The problem is that its operator= will
+read the current value to decrement the refcount and possibly delete the
+pointed object.
+
+But QJson{Array,Object}::initialize() are called from inlined code,
+without initialization. So we can't call operator=. We need to memcpy to
+write a nullptr.
+
+This is not unit-testable because it requires compiling against 5.14 or
+earlier, then running against 5.15.
+
+Fixes: QTBUG-82700
+Change-Id: Iaa63461109844e978376fffd15f98c62656d197c
+---
+
+diff --git a/src/corelib/serialization/qjsonarray.cpp b/src/corelib/serialization/qjsonarray.cpp
+index 0870277..05138ad 100644
+--- a/src/corelib/serialization/qjsonarray.cpp
++++ b/src/corelib/serialization/qjsonarray.cpp
+@@ -167,7 +167,11 @@
+  */
+ void QJsonArray::initialize()
+ {
+-    a = nullptr;
++    // Because we're being called with uninitialized state, we can't do:
++    //    a = nullptr;
++    // QExplicitlyDataSharedPointer::operator= will read the current value
++    void *ptr = &a;
++    memset(ptr, 0, sizeof(a));
+ }
+ 
+ /*!
+@@ -177,7 +181,6 @@
+ 
+ QJsonArray::QJsonArray(std::initializer_list<QJsonValue> args)
+ {
+-    initialize();
+     for (const auto & arg : args)
+         append(arg);
+ }
+diff --git a/src/corelib/serialization/qjsonobject.cpp b/src/corelib/serialization/qjsonobject.cpp
+index a698727..4f0b5cd 100644
+--- a/src/corelib/serialization/qjsonobject.cpp
++++ b/src/corelib/serialization/qjsonobject.cpp
+@@ -150,7 +150,11 @@
+ 
+ void QJsonObject::initialize()
+ {
+-    o = nullptr;
++    // Because we're being called with uninitialized state, we can't do:
++    //    o = nullptr;
++    // QExplicitlyDataSharedPointer::operator= will read the current value
++    void *ptr = &o;
++    memset(ptr, 0, sizeof(o));
+ }
+ 
+ /*!
+@@ -160,7 +164,6 @@
+ 
+ QJsonObject::QJsonObject(std::initializer_list<QPair<QString, QJsonValue> > args)
+ {
+-    initialize();
+     for (const auto &arg : args)
+         insert(arg.first, arg.second);
+ }



More information about the arch-commits mailing list