Browse Source

l/qt5: Upgraded to qt5-5.13.1.

current-20191101
Damien Goutte-Gattat 2 years ago
parent
commit
5d4e653294
  1. 7
      l/qt5/patches/qt5.mysql.h.diff
  2. 14
      l/qt5/patches/qt5.qtbase_cmake_isystem_includes.patch
  3. 35
      l/qt5/patches/qt5.qtbug-76255.patch
  4. 89
      l/qt5/patches/qt5.qtbug-77037.patch
  5. 13
      l/qt5/patches/qt5.qtbug-77364.patch
  6. 1
      l/qt5/qt-everywhere-opensource-src-5.9.6.tar.xz.sha256
  7. 1
      l/qt5/qt-everywhere-src-5.13.1.tar.xz.sha256
  8. 50
      l/qt5/qt5.SlackBuild

7
l/qt5/patches/qt5.mysql.h.diff

@ -1,7 +1,6 @@
diff -Naur qt-everywhere-opensource-src-5.1.0.orig/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h qt-everywhere-opensource-src-5.1.0/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h
--- qt-everywhere-opensource-src-5.1.0.orig/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h 2013-07-02 07:09:52.000000000 +0000
+++ qt-everywhere-opensource-src-5.1.0/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h 2013-07-21 21:21:01.190172379 +0000
@@ -60,7 +60,7 @@
--- qt-everywhere-opensource-src-5.9.0/qtbase/src/plugins/sqldrivers/mysql/qsql_mysql_p.h.orig 2017-05-26 14:43:31.000000000 +0200
+++ qt-everywhere-opensource-src-5.9.0/qtbase/src/plugins/sqldrivers/mysql/qsql_mysql_p.h 2017-06-17 22:11:34.211899826 +0200
@@ -57,7 +57,7 @@
#include <QtCore/qt_windows.h>
#endif

14
l/qt5/patches/qt5.qtbase_cmake_isystem_includes.patch

@ -0,0 +1,14 @@
diff -up qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in.foo qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in
--- qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in.foo 2019-04-30 15:18:24.886346423 -0500
+++ qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in 2019-04-30 15:19:48.303873296 -0500
@@ -66,8 +66,10 @@ unset(_GL_INCDIRS)
# Don\'t check for existence of the "_qt5gui_OPENGL_INCLUDE_DIR" because it is
# optional.
+if (NOT ${_qt5gui_OPENGL_INCLUDE_DIR} STREQUAL "/usr/include")
list(APPEND Qt5Gui_INCLUDE_DIRS ${_qt5gui_OPENGL_INCLUDE_DIR})
set_property(TARGET Qt5::Gui APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${_qt5gui_OPENGL_INCLUDE_DIR})
+endif()
unset(_qt5gui_OPENGL_INCLUDE_DIR CACHE)

35
l/qt5/patches/qt5.qtbug-76255.patch

@ -0,0 +1,35 @@
From cc32a691936f37eaaec618a71edd62f896009c9d Mon Sep 17 00:00:00 2001
From: Joerg Bornemann <joerg.bornemann@qt.io>
Date: Fri, 06 Sep 2019 10:54:44 +0200
Subject: [PATCH] Fix CMake config files for -libdir different from "lib"
When Qt was configured with -libdir different from "lib", one could not
build with CMake whenever a static lib was pulled in (e.g. uitools).
Do not hard-code "/lib" but use the correct variable also for static
libraries.
Fixes: QTBUG-76255
Change-Id: I28c6861752e29e461247628d2b1f8a9ec32f0790
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Fabian Vogt <fabian@ritter-vogt.de>
---
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
index d4fd057..f4a34d6 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -53,7 +53,11 @@
set(_lib_deps)
set(_link_flags)
- get_filename_component(_qt5_install_libs \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib\" ABSOLUTE)
+!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+ set(_qt5_install_libs \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}\")
+!!ELSE
+ set(_qt5_install_libs \"$${CMAKE_LIB_DIR}\")
+!!ENDIF
if(EXISTS \"${prl_file_location}\")
file(STRINGS \"${prl_file_location}\" _prl_strings REGEX \"QMAKE_PRL_LIBS_FOR_CMAKE[ \\t]*=\")

89
l/qt5/patches/qt5.qtbug-77037.patch

@ -0,0 +1,89 @@
From 0b57f15958f07ef12c8944d6db7a33a6fe9d9c59 Mon Sep 17 00:00:00 2001
From: Allan Sandfeld Jensen <allan.jensen@qt.io>
Date: Mon, 23 Sep 2019 13:49:53 +0200
Subject: Fix building with pulseaudio 13
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The function signature changed though the ABI stayed the same.
Change-Id: I86ca361b5e4f0c523e1031910df438c23beee876
Fixes: QTBUG-77037
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
---
chromium/media/audio/pulse/pulse.sigs | 16 ++++++++--------
chromium/media/audio/pulse/pulse_stub_header.fragment | 11 +++++++++++
2 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/chromium/media/audio/pulse/pulse.sigs b/chromium/media/audio/pulse/pulse.sigs
index 8b5888786a9..daaeb149c13 100644
--- a/chromium/media/audio/pulse/pulse.sigs
+++ b/chromium/media/audio/pulse/pulse.sigs
@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info_by_index(pa_context* c, uint32_t idx, p
pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata);
pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata);
pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata);
-pa_context_state_t pa_context_get_state(pa_context* c);
+pa_context_state_t pa_context_get_state(const_pa_context_ptr c);
pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name);
pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata);
void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata);
-pa_operation_state_t pa_operation_get_state(pa_operation* o);
+pa_operation_state_t pa_operation_get_state(const_pa_operation_ptr o);
void pa_context_unref(pa_context* c);
void pa_operation_unref(pa_operation* o);
int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes);
@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* s, int b, pa_stream_success_cb_t cb, voi
int pa_stream_disconnect(pa_stream* s);
int pa_stream_drop(pa_stream *p);
pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata);
-uint32_t pa_stream_get_device_index(pa_stream* s);
+uint32_t pa_stream_get_device_index(const_pa_stream_ptr s);
int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative);
-pa_stream_state_t pa_stream_get_state(pa_stream* p);
+pa_stream_state_t pa_stream_get_state(const_pa_stream_ptr p);
pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map);
pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p);
pa_proplist* pa_proplist_new(void);
-int pa_proplist_contains(pa_proplist* p, const char* key);
+int pa_proplist_contains(const_pa_proplist_ptr p, const char* key);
void pa_proplist_free(pa_proplist* p);
-const char* pa_proplist_gets(pa_proplist* p, const char* key);
+const char* pa_proplist_gets(const_pa_proplist_ptr p, const char* key);
int pa_proplist_sets(pa_proplist* p, const char* key, const char* value);
-size_t pa_stream_readable_size(pa_stream *p);
+size_t pa_stream_readable_size(const_pa_stream_ptr p);
int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes);
void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata);
void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata);
int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek);
void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata);
void pa_stream_unref(pa_stream* s);
-int pa_context_errno(pa_context *c);
+int pa_context_errno(const_pa_context_ptr c);
const char* pa_strerror(int error);
pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v);
diff --git a/chromium/media/audio/pulse/pulse_stub_header.fragment b/chromium/media/audio/pulse/pulse_stub_header.fragment
index 2a2d3e7552b..cdaa841b29f 100644
--- a/chromium/media/audio/pulse/pulse_stub_header.fragment
+++ b/chromium/media/audio/pulse/pulse_stub_header.fragment
@@ -5,4 +5,15 @@ extern "C" {
#include <pulse/pulseaudio.h>
+#if PA_MAJOR > 12
+typedef const pa_context* const_pa_context_ptr;
+typedef const pa_operation* const_pa_operation_ptr;
+typedef const pa_proplist* const_pa_proplist_ptr;
+typedef const pa_stream* const_pa_stream_ptr;
+#else
+typedef pa_context* const_pa_context_ptr;
+typedef pa_operation* const_pa_operation_ptr;
+typedef pa_proplist* const_pa_proplist_ptr;
+typedef pa_stream* const_pa_stream_ptr;
+#endif
}
--
cgit v1.2.1

13
l/qt5/patches/qt5.qtbug-77364.patch

@ -0,0 +1,13 @@
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp
index 04290a4ce1..27773d5762 100644
--- a/src/widgets/kernel/qwidget.cpp
+++ b/src/widgets/kernel/qwidget.cpp
@@ -6446,7 +6446,7 @@ void QWidget::setFocusProxy(QWidget * w)
if (changingAppFocusWidget) {
QWidget *newDeepestFocusProxy = d_func()->deepestFocusProxy();
- QApplicationPrivate::focus_widget = newDeepestFocusProxy ? newDeepestFocusProxy : this;
+ QApplicationPrivate::setFocusWidget(newDeepestFocusProxy ? newDeepestFocusProxy : this, Qt::NoFocusReason);
}
}

1
l/qt5/qt-everywhere-opensource-src-5.9.6.tar.xz.sha256

@ -1 +0,0 @@
dacc995ae3a7cdad80eb9fdf6470299a8fac41f468a9bb941670ece523b62af4 qt-everywhere-opensource-src-5.9.6.tar.xz

1
l/qt5/qt-everywhere-src-5.13.1.tar.xz.sha256

@ -0,0 +1 @@
adf00266dc38352a166a9739f1a24a1e36f1be9c04bf72e16e142a256436974e qt-everywhere-src-5.13.1.tar.xz

50
l/qt5/qt5.SlackBuild

@ -29,9 +29,9 @@
# Source package infos
NAMESRC=${NAMESRC:-qt}
VERSION=${VERSION:-5.9.6}
ARCHIVE=${ARCHIVE:-$NAMESRC-everywhere-opensource-src-$VERSION.tar.xz}
WGET=${WGET:-http://download.qt.io/archive/qt/5.9/$VERSION/single/$ARCHIVE}
VERSION=${VERSION:-5.13.1}
ARCHIVE=${ARCHIVE:-$NAMESRC-everywhere-src-$VERSION.tar.xz}
WGET=${WGET:-http://download.qt.io/archive/qt/5.13/$VERSION/single/$ARCHIVE}
# Build infos
NAMEPKG=${NAMEPKG:-qt5}
@ -113,27 +113,36 @@ else
fi
# Fix path to mysql header.
cat $CWD/patches/qt5.mysql.h.diff | patch -p1 --verbose || exit 1
cat $CWD/patches/qt5.mysql.h.diff | patch -p1 || exit 1
# Fix missing private includes: QTBUG-37417
sed -e '/CMAKE_NO_PRIVATE_INCLUDES\ \=\ true/d' \
-i qtbase/mkspecs/features/create_cmake.prf
# Fix keyboard input in webengine
(cd qtbase
cat $CWD/patches/qt5.qtbug-77364.patch | patch -p1 || exit 1
)
# Use custom compiler and linker flags.
sed -i -e "s/-O2/$SLKCFLAGS/" qtbase/mkspecs/common/gcc-base.conf || exit 1
sed -i -e "s/-O3/$SLKCFLAGS/" qtbase/mkspecs/common/gcc-base.conf || exit 1
sed -i -e "/^QMAKE_LFLAGS\s/s,+=,+= $SLKLDFLAGS,g" qtbase/mkspecs/common/gcc-base.conf || exit 1
# Fix hardcoded lib/ dir on x86_64
(cd qtbase
cat $CWD/patches/qt5.qtbug-76255.patch | patch -p1 || exit 1
)
# Fix incorrect CMake settings
(cd qtbase
cat $CWD/patches/qt5.qtbase_cmake_isystem_includes.patch | patch -p1 || exit 1
)
# Enable h.264 codec support:
echo "WEBENGINE_CONFIG += use_proprietary_codecs" >> qtwebengine/.qmake.conf
# Fix compilation against PulseAudio 13
(cd qtwebengine/src/3rdparty
cat $CWD/patches/qt5.qtbug-77037.patch | patch -p1 || exit 1
)
# Enable all languages in the virtual keyboard (required by Plasma 5.11):
echo "CONFIG += lang-all" >> qtvirtualkeyboard/.qmake.conf
# Use custom compiler and linker flags.
sed -i -e "s/^\(QMAKE_CFLAGS_RELEASE.*\)/\1 $SLKCFLAGS/" qtbase/mkspecs/common/gcc-base.conf || exit 1
sed -i -e "s/^\(QMAKE_CFLAGS_RELEASE.*\)/\1 $SLKCFLAGS/" qtbase/mkspecs/common/g++-unix.conf || exit 1
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
export OPENSOURCE_CXXFLAGS="$SLKCFLAGS"
export QTDIR="${TMP}/qt-everywhere-opensource-src-${PKGSRC}"
export QTDIR="${TMP}/qt-everywhere-src-${PKGSRC}"
export LD_LIBRARY_PATH="${QTDIR}/qtbase/lib:${QTDIR}/qttools/lib:${LD_LIBRARY_PATH}"
export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins"
./configure \
@ -148,6 +157,7 @@ export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins"
-archdatadir /usr/lib${LIBDIRSUFFIX}/qt5 \
-docdir /usr/doc/qt5-$PKGVER \
-examplesdir /usr/doc/qt5-$PKGVER/examples \
-proprietary-codecs \
-system-libpng \
-system-libjpeg \
-system-sqlite \
@ -168,13 +178,13 @@ export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins"
-xcb \
-nomake examples \
-nomake tests \
-no-mimetype-database \
-no-separate-debug-info \
-no-strip \
-no-use-gold-linker \
-webengine-proprietary-codecs \
${RELOCATIONS} \
-no-pch \
OPENSSL_INCDIR="/usr/include/openssl-1.0" \
OPENSSL_LIBDIR="/usr/lib${LIBDIRSUFFIX}/openssl-1.0"
-no-pch
# Sometimes a failure happens when parallelizing make. Try again if make fails,
# but make a failure the second time around (single threaded) a fatal error:
@ -294,7 +304,7 @@ EOF
# Add a documentation directory:
mkdir -p $PKG/usr/doc/$NAMEPKG-$VERSION
cp -a \
README qtbase/{header*,LGPL_EXCEPTION.txt,LICENSE*} \
README qtbase/{header*,LICENSE*} \
$PKG/usr/doc/$NAMEPKG-$VERSION
if [ -d $PKG/usr/lib$LIBDIRSUFFIX/qt5/doc/html ]; then
( cd $PKG/usr/doc/$NAMEPKG-$VERSION

Loading…
Cancel
Save