From 6304034d346b5d45dfec6dff34949b68ff58a965 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 26 Feb 2018 19:03:13 +0100 Subject: [PATCH] mixxx: fix build with Qt 5.10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Andreas Müller --- .../0005-Fix-release-build-with-Qt-5.10.patch | 54 +++++++++++++++++++ .../recipes-multimedia/mixxx/mixxx_git.bb | 1 + 2 files changed, 55 insertions(+) create mode 100644 recipes-misc/recipes-multimedia/mixxx/files/0005-Fix-release-build-with-Qt-5.10.patch diff --git a/recipes-misc/recipes-multimedia/mixxx/files/0005-Fix-release-build-with-Qt-5.10.patch b/recipes-misc/recipes-multimedia/mixxx/files/0005-Fix-release-build-with-Qt-5.10.patch new file mode 100644 index 00000000..edd540fc --- /dev/null +++ b/recipes-misc/recipes-multimedia/mixxx/files/0005-Fix-release-build-with-Qt-5.10.patch @@ -0,0 +1,54 @@ +From badaca1b793199578f36160101c1d3288193cdb0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Mon, 26 Feb 2018 14:39:52 +0100 +Subject: [PATCH] Fix release build with Qt 5.10 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Moving Qt from 5.9.4 -> 5.10.1 causes build failures for mixxx: + +| :0:20: error: call to non-constexpr function 'void qt_noop()' +| /usr/include/qt5/QtCore/qstringview.h:291:14: note: in expansion of macro 'Q_ASSERT' +| { return Q_ASSERT(int(size()) == size()), int(size()); } +| .. many-more errors of same kind + +This is caused by a different usage of Q_ASSERT in qtbase. For further details +see qtbase + +commit 8ea27bb1c669e21100a6a042b0378b3346bdf671 +Author: Marc Mutz +Date: Tue Mar 14 22:45:05 2017 +0100 + + Make Q_ASSERT() usable in constexpr functions + +Fix mixxx by copying/aliging the new definition of Q_ASSERT from qglobal.h +shipped with 5.10.1. + +Tested for Qt 5.9.4 and 5.10.1 + +Upstream-Status: Submitted [1] + +[1] https://github.com/mixxxdj/mixxx/pull/1526 + +Signed-off-by: Andreas Müller +--- + build/depends.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build/depends.py b/build/depends.py +index 4b88034f2..399a2c237 100644 +--- a/build/depends.py ++++ b/build/depends.py +@@ -1260,7 +1260,7 @@ class MixxxCore(Feature): + # that we include. We can't define QT_NO_DEBUG because that would + # mean turning off QDebug output. qt_noop() is what Qt defines + # Q_ASSERT to be when QT_NO_DEBUG is defined. +- build.env.Append(CPPDEFINES="'Q_ASSERT(x)=qt_noop()'") ++ build.env.Append(CPPDEFINES="'Q_ASSERT(cond)=static_cast(false&&(cond))'") + + if int(SCons.ARGUMENTS.get('debug_assertions_fatal', 0)): + build.env.Append(CPPDEFINES='MIXXX_DEBUG_ASSERTIONS_FATAL') +-- +2.14.3 + diff --git a/recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb b/recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb index 3baa7158..cf43425d 100644 --- a/recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb +++ b/recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb @@ -40,6 +40,7 @@ SRC_URI = " \ file://0002-force-using-system-soundtouch.patch \ file://0003-align-path-of-qt-build-tools-to-our-needs.patch \ file://0004-add-vamp-float-math-build-option-to-force-vamp-calcu.patch \ + file://0005-Fix-release-build-with-Qt-5.10.patch \ " SRCREV = "24028f2e8a28210fe45d8b67f2bb44d580587261" S = "${WORKDIR}/git"