Merge branch 'master' into f23
This commit is contained in:
commit
96362ae293
|
@ -8,16 +8,21 @@
|
|||
|
||||
%if ! 0%{?bootstrap}
|
||||
%ifarch %{arm} %{ix86} x86_64
|
||||
%define docs 1
|
||||
%global docs 1
|
||||
#global tests 1
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%ifarch %{ix86}
|
||||
%global nosse2_hack 1
|
||||
%endif
|
||||
|
||||
#define prerelease
|
||||
|
||||
Summary: Qt5 - QtDeclarative component
|
||||
Name: qt5-%{qt_module}
|
||||
Version: 5.6.0
|
||||
Release: 5%{?prerelease:.%{prerelease}}%{?dist}
|
||||
Release: 11%{?prerelease:.%{prerelease}}%{?dist}
|
||||
|
||||
# See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details
|
||||
License: LGPLv2 with exceptions or GPLv3 with exceptions
|
||||
|
@ -38,6 +43,16 @@ Patch8: 0008-Fix-crash-when-Canvas-has-negative-width-or-height.patch
|
|||
Patch19: 0019-Revert-Fix-crash-on-QQmlEngine-destruction.patch
|
||||
Patch29: 0029-Avoid-div-by-zero-when-nothing-is-rendered.patch
|
||||
|
||||
## upstreamable patches
|
||||
# use system double-conversation
|
||||
%if 0%{?fedora} || 0%{?rhel} > 6
|
||||
%global system_doubleconv 1
|
||||
BuildRequires: double-conversion-devel
|
||||
%endif
|
||||
Patch100: qtdeclarative-system_doubleconv.patch
|
||||
# https://bugs.kde.org/show_bug.cgi?id=346118#c108
|
||||
Patch101: qtdeclarative-kdebug346118.patch
|
||||
|
||||
## upstream patches under review
|
||||
# Check-for-NULL-from-glGetStrin
|
||||
Patch500: Check-for-NULL-from-glGetString.patch
|
||||
|
@ -53,6 +68,14 @@ BuildRequires: pkgconfig(Qt5XmlPatterns)
|
|||
%endif
|
||||
BuildRequires: python
|
||||
|
||||
%if 0%{?tests}
|
||||
BuildRequires: dbus-x11
|
||||
BuildRequires: mesa-dri-drivers
|
||||
BuildRequires: time
|
||||
BuildRequires: xorg-x11-server-Xvfb
|
||||
%endif
|
||||
|
||||
|
||||
%description
|
||||
%{summary}.
|
||||
|
||||
|
@ -92,23 +115,34 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
|
|||
|
||||
%prep
|
||||
%setup -q -n %{qt_module}-opensource-src-%{version}%{?prerelease:-%{prerelease}}
|
||||
%if 0%{?nosse2_hack}
|
||||
%patch1 -p1 -b .no_sse2
|
||||
%endif
|
||||
%patch2 -p1 -b .QQuickShaderEffectSource_deadlock
|
||||
|
||||
%patch8 -p1 -b .0008
|
||||
%patch19 -p1 -b .0019
|
||||
%patch29 -p1 -b .0029
|
||||
|
||||
%if 0%{?system_doubleconv}
|
||||
%patch100 -p1 -b .system_doubleconv
|
||||
rm -rfv src/3rdparty/double-conversion
|
||||
%endif
|
||||
%patch101 -p0 -b .kdebug346118
|
||||
|
||||
%patch500 -p1 -b .Check-for-NULL-from-glGetString
|
||||
|
||||
|
||||
%build
|
||||
|
||||
%if 0%{?fedora} > 23
|
||||
# build with -fno-delete-null-pointer-checks to workaround
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1303643
|
||||
CFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks"
|
||||
CXXFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks"
|
||||
# build with -fno-lifetime-dse to workaround
|
||||
# https://bugzilla.redhat.com/1331593
|
||||
CFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks -fno-lifetime-dse"
|
||||
CXXFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks -fno-lifetime-dse"
|
||||
export CFLAGS CXXFLAGS
|
||||
%endif
|
||||
|
||||
mkdir %{_target_platform}
|
||||
pushd %{_target_platform}
|
||||
|
@ -117,7 +151,7 @@ popd
|
|||
|
||||
make %{?_smp_mflags} -C %{_target_platform}
|
||||
|
||||
%ifarch %{ix86}
|
||||
%if 0%{?nosse2_hack}
|
||||
# build libQt5Qml with no_sse2
|
||||
mkdir -p %{_target_platform}-no_sse2
|
||||
pushd %{_target_platform}-no_sse2
|
||||
|
@ -135,7 +169,7 @@ make %{?_smp_mflags} docs -C %{_target_platform}
|
|||
%install
|
||||
make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}
|
||||
|
||||
%ifarch %{ix86}
|
||||
%if 0%{?nosse2_hack}
|
||||
mkdir -p %{buildroot}%{_qt5_libdir}/sse2
|
||||
mv %{buildroot}%{_qt5_libdir}/libQt5Qml.so.5* %{buildroot}%{_qt5_libdir}/sse2/
|
||||
make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}-no_sse2/src/qml
|
||||
|
@ -181,6 +215,19 @@ done
|
|||
popd
|
||||
|
||||
|
||||
%check
|
||||
%if 0%{?tests}
|
||||
export CTEST_OUTPUT_ON_FAILURE=1
|
||||
export PATH=%{buildroot}%{_qt5_bindir}:$PATH
|
||||
export LD_LIBRARY_PATH=%{buildroot}%{_qt5_libdir}
|
||||
make sub-tests-all %{?_smp_mflags} -C %{_target_platform}
|
||||
xvfb-run -a \
|
||||
dbus-launch --exit-with-session \
|
||||
time \
|
||||
make check -k -C %{_target_platform}/tests ||:
|
||||
%endif
|
||||
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
|
@ -188,7 +235,7 @@ popd
|
|||
%{!?_licensedir:%global license %%doc}
|
||||
%license LICENSE.LGPL* LGPL_EXCEPTION.txt
|
||||
%{_qt5_libdir}/libQt5Qml.so.5*
|
||||
%ifarch %{ix86}
|
||||
%if 0%{?nosse2_hack}
|
||||
%{_qt5_libdir}/sse2/libQt5Qml.so.5*
|
||||
%endif
|
||||
%{_qt5_libdir}/libQt5Quick.so.5*
|
||||
|
@ -207,7 +254,6 @@ popd
|
|||
%{_qt5_libdir}/libQt5Qml.so
|
||||
%{_qt5_libdir}/libQt5Qml.prl
|
||||
%{_qt5_libdir}/libQt5Quick*.so
|
||||
%{_qt5_libdir}/libQt5QuickWidgets.so.5
|
||||
%{_qt5_libdir}/libQt5Quick*.prl
|
||||
%dir %{_qt5_libdir}/cmake/Qt5Quick*/
|
||||
%{_qt5_libdir}/cmake/Qt5*/Qt5*Config*.cmake
|
||||
|
@ -232,6 +278,28 @@ popd
|
|||
|
||||
|
||||
%changelog
|
||||
* Tue May 31 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.6.0-11
|
||||
- include crasher workaround (#1259472,kde#346118)
|
||||
|
||||
* Sat May 28 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.6.0-10
|
||||
- macro'ize no_sse2 hack (to make it easier to enable/disable)
|
||||
- re-introduce -fno-delete-null-pointer-checks here (following upstream)
|
||||
- add -fno-lifetime-dse too, helps fix i686/qml crasher (#1331593)
|
||||
- disable tests (for now, not useful yet)
|
||||
|
||||
* Fri May 20 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.6.0-9
|
||||
- Use system double-conversion (#1078524)
|
||||
|
||||
* Thu May 19 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.6.0-8
|
||||
- -devel: don't own libQt5QuickWidgets.so.5 (#1337621)
|
||||
|
||||
* Thu May 05 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.6.0-7
|
||||
- BR: mesa-dri-drivers (tests)
|
||||
|
||||
* Thu May 05 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.6.0-6
|
||||
- drop local -fno-delete-null-pointer-checks hack, used in all Qt5 builds now
|
||||
- add %%check
|
||||
|
||||
* Sun Apr 17 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.6.0-5
|
||||
- BR: qt5-qtbase-private-devel, -devel: Provides: -private-devel
|
||||
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
--- src/qml/util/qqmladaptormodel.cpp.orig 2016-05-27 17:06:31.192332166 -0300
|
||||
+++ src/qml/util/qqmladaptormodel.cpp 2016-05-27 18:37:27.764552053 -0300
|
||||
@@ -163,8 +163,14 @@ public:
|
||||
signalIndexes.append(propertyId + signalOffset);
|
||||
}
|
||||
|
||||
- for (int i = 0, c = items.count(); i < c; ++i) {
|
||||
- QQmlDelegateModelItem *item = items.at(i);
|
||||
+ const QList<QQmlDelegateModelItem *> copy = items;
|
||||
+ for (int i = 0, c = copy.count(); i < c; ++i) {
|
||||
+ // Applying the same logic used in QQmlDelegateModel::_q_itemsRemoved().
|
||||
+ QQmlDelegateModelItem *item = copy.at(i);
|
||||
+ if (!items.contains(item)) {
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
const int idx = item->modelIndex();
|
||||
if (idx >= index && idx < index + count) {
|
||||
for (int i = 0; i < signalIndexes.count(); ++i)
|
|
@ -0,0 +1,22 @@
|
|||
diff -up qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/jsruntime.pri.system_doubleconv qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/jsruntime.pri
|
||||
--- qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/jsruntime.pri.system_doubleconv 2016-05-20 08:25:07.986878324 -0500
|
||||
+++ qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/jsruntime.pri 2016-05-20 11:21:05.059471545 -0500
|
||||
@@ -118,4 +118,5 @@ valgrind {
|
||||
|
||||
ios: DEFINES += ENABLE_ASSEMBLER_WX_EXCLUSIVE=1
|
||||
|
||||
-include(../../3rdparty/double-conversion/double-conversion.pri)
|
||||
+INCLUDEPATH += /usr/include/double-conversion
|
||||
+LIBS += -ldouble-conversion
|
||||
diff -up qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/qv4runtime.cpp.system_doubleconv qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/qv4runtime.cpp
|
||||
--- qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/qv4runtime.cpp.system_doubleconv 2016-02-26 03:34:34.000000000 -0600
|
||||
+++ qtdeclarative-opensource-src-5.6.0/src/qml/jsruntime/qv4runtime.cpp 2016-05-20 11:22:00.603641534 -0500
|
||||
@@ -60,7 +60,7 @@
|
||||
|
||||
#include <wtf/MathExtras.h>
|
||||
|
||||
-#include "../../3rdparty/double-conversion/double-conversion.h"
|
||||
+#include <double-conversion.h>
|
||||
|
||||
#ifdef QV4_COUNT_RUNTIME_FUNCTIONS
|
||||
# include <QtCore/QBuffer>
|
Loading…
Reference in New Issue