From 9337c16cb69fd47ca31ebe184d2a37028b978249 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 8 Dec 2020 22:18:30 +0100 Subject: gnu: ghostscript: Fix build with FreeType 2.10.4. This fixes a build failure from 79b31767d084a2feeb2edcb41ae863a0d534b847. * gnu/packages/patches/ghostscript-freetype-compat.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/ghostscript.scm (ghostscript)[source](patches): Add it. --- .../patches/ghostscript-freetype-compat.patch | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 gnu/packages/patches/ghostscript-freetype-compat.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/ghostscript-freetype-compat.patch b/gnu/packages/patches/ghostscript-freetype-compat.patch new file mode 100644 index 0000000000..cc225b5ad6 --- /dev/null +++ b/gnu/packages/patches/ghostscript-freetype-compat.patch @@ -0,0 +1,35 @@ +Fix build with FreeType 2.10.3 and newer. + +Taken from upstream: +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=41ef9a0bc36b9db7115fbe9623f989bfb47bbade + +diff --git a/base/fapi_ft.c b/base/fapi_ft.c +--- a/base/fapi_ft.c ++++ b/base/fapi_ft.c +@@ -125,7 +125,7 @@ static void + delete_inc_int_info(gs_fapi_server * a_server, + FT_IncrementalRec * a_inc_int_info); + +-FT_CALLBACK_DEF(void *) ++static void * + FF_alloc(FT_Memory memory, long size) + { + gs_memory_t *mem = (gs_memory_t *) memory->user; +@@ -133,7 +133,7 @@ FF_alloc(FT_Memory memory, long size) + return (gs_malloc(mem, size, 1, "FF_alloc")); + } + +-FT_CALLBACK_DEF(void *) ++static void * + FF_realloc(FT_Memory memory, long cur_size, long new_size, void *block) + { + gs_memory_t *mem = (gs_memory_t *) memory->user; +@@ -153,7 +153,7 @@ FT_CALLBACK_DEF(void *) + return (tmp); + } + +-FT_CALLBACK_DEF(void) ++static void + FF_free(FT_Memory memory, void *block) + { + gs_memory_t *mem = (gs_memory_t *) memory->user; -- cgit v1.2.3 From 3bd218e8d4abde56e7ce9149311df5e60db0e321 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 8 Dec 2020 21:11:19 +0100 Subject: gnu: ghostscript: Fix CVE-2020-15900. * gnu/packages/patches/ghostscript-CVE-2020-15900.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/ghostscript.scm (ghostscript)[source](patches): Add it. --- gnu/local.mk | 1 + gnu/packages/ghostscript.scm | 1 + .../patches/ghostscript-CVE-2020-15900.patch | 36 ++++++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 gnu/packages/patches/ghostscript-CVE-2020-15900.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 97dd9a74d0..7f0b69cacf 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1055,6 +1055,7 @@ dist_patch_DATA = \ %D%/packages/patches/ghc-monad-par-fix-tests.patch \ %D%/packages/patches/ghc-pandoc-fix-html-tests.patch \ %D%/packages/patches/ghc-pandoc-fix-latex-test.patch \ + %D%/packages/patches/ghostscript-CVE-2020-15900.patch \ %D%/packages/patches/ghostscript-freetype-compat.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-no-header-uuid.patch \ diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index b132fba7eb..03a516dc52 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -171,6 +171,7 @@ (define-public ghostscript (base32 "0z1w42y2jmcpl2m1l3z0sfii6zmvzcwcgzn6bydklia6ig7jli2p")) (patches (search-patches "ghostscript-freetype-compat.patch" + "ghostscript-CVE-2020-15900.patch" "ghostscript-no-header-creationdate.patch" "ghostscript-no-header-id.patch" "ghostscript-no-header-uuid.patch")) diff --git a/gnu/packages/patches/ghostscript-CVE-2020-15900.patch b/gnu/packages/patches/ghostscript-CVE-2020-15900.patch new file mode 100644 index 0000000000..b6658d7c7f --- /dev/null +++ b/gnu/packages/patches/ghostscript-CVE-2020-15900.patch @@ -0,0 +1,36 @@ +Fix CVE-2020-15900. + +https://cve.circl.lu/cve/CVE-2020-15900 +https://artifex.com/security-advisories/CVE-2020-15900 + +Taken from upstream: +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=5d499272b95a6b890a1397e11d20937de000d31b + +diff --git a/psi/zstring.c b/psi/zstring.c +--- a/psi/zstring.c ++++ b/psi/zstring.c +@@ -142,13 +142,18 @@ search_impl(i_ctx_t *i_ctx_p, bool forward) + return 0; + found: + op->tas.type_attrs = op1->tas.type_attrs; +- op->value.bytes = ptr; +- r_set_size(op, size); ++ op->value.bytes = ptr; /* match */ ++ op->tas.rsize = size; /* match */ + push(2); +- op[-1] = *op1; +- r_set_size(op - 1, ptr - op[-1].value.bytes); +- op1->value.bytes = ptr + size; +- r_set_size(op1, count + (!forward ? (size - 1) : 0)); ++ op[-1] = *op1; /* pre */ ++ op[-3].value.bytes = ptr + size; /* post */ ++ if (forward) { ++ op[-1].tas.rsize = ptr - op[-1].value.bytes; /* pre */ ++ op[-3].tas.rsize = count; /* post */ ++ } else { ++ op[-1].tas.rsize = count; /* pre */ ++ op[-3].tas.rsize -= count + size; /* post */ ++ } + make_true(op); + return 0; + } -- cgit v1.2.3 From f936a300b48955faecce028ac9ac509b1b83906c Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 8 Dec 2020 22:48:19 +0100 Subject: gnu: Python: Fix CVE-2020-26116. * gnu/packages/patches/python-CVE-2020-26116.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/python.scm (python-3.8)[source](patches): Add it. --- gnu/local.mk | 1 + gnu/packages/patches/python-CVE-2020-26116.patch | 47 ++++++++++++++++++++++++ gnu/packages/python.scm | 1 + 3 files changed, 49 insertions(+) create mode 100644 gnu/packages/patches/python-CVE-2020-26116.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 7f0b69cacf..897de3eaf9 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1515,6 +1515,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-3-fix-tests.patch \ %D%/packages/patches/python-3.8-fix-tests.patch \ %D%/packages/patches/python-CVE-2018-14647.patch \ + %D%/packages/patches/python-CVE-2020-26116.patch \ %D%/packages/patches/python-aionotify-0.2.0-py3.8.patch \ %D%/packages/patches/python-argcomplete-1.11.1-fish31.patch \ %D%/packages/patches/python-axolotl-AES-fix.patch \ diff --git a/gnu/packages/patches/python-CVE-2020-26116.patch b/gnu/packages/patches/python-CVE-2020-26116.patch new file mode 100644 index 0000000000..dc0571e964 --- /dev/null +++ b/gnu/packages/patches/python-CVE-2020-26116.patch @@ -0,0 +1,47 @@ +Fix CVE-2020-26116: + +https://cve.circl.lu/cve/CVE-2020-26116 +https://bugs.python.org/issue39603 + +Taken from upstream (sans test and NEWS update): +https://github.com/python/cpython/commit/668d321476d974c4f51476b33aaca870272523bf + +diff --git a/Lib/http/client.py b/Lib/http/client.py +--- a/Lib/http/client.py ++++ b/Lib/http/client.py +@@ -147,6 +147,10 @@ + # _is_allowed_url_pchars_re = re.compile(r"^[/!$&'()*+,;=:@%a-zA-Z0-9._~-]+$") + # We are more lenient for assumed real world compatibility purposes. + ++# These characters are not allowed within HTTP method names ++# to prevent http header injection. ++_contains_disallowed_method_pchar_re = re.compile('[\x00-\x1f]') ++ + # We always set the Content-Length header for these methods because some + # servers will otherwise respond with a 411 + _METHODS_EXPECTING_BODY = {'PATCH', 'POST', 'PUT'} +@@ -1087,6 +1091,8 @@ def putrequest(self, method, url, skip_host=False, + else: + raise CannotSendRequest(self.__state) + ++ self._validate_method(method) ++ + # Save the method for use later in the response phase + self._method = method + +@@ -1177,6 +1183,15 @@ def _encode_request(self, request): + # ASCII also helps prevent CVE-2019-9740. + return request.encode('ascii') + ++ def _validate_method(self, method): ++ """Validate a method name for putrequest.""" ++ # prevent http header injection ++ match = _contains_disallowed_method_pchar_re.search(method) ++ if match: ++ raise ValueError( ++ f"method can't contain control characters. {method!r} " ++ f"(found at least {match.group()!r})") ++ + def _validate_path(self, url): + """Validate a url for putrequest.""" + # Prevent CVE-2019-9740. diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 43704bccae..533b2bdeff 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -370,6 +370,7 @@ (define-public python-3.8 (uri (string-append "https://www.python.org/ftp/python/" version "/Python-" version ".tar.xz")) (patches (search-patches + "python-CVE-2020-26116.patch" "python-3-fix-tests.patch" "python-3.8-fix-tests.patch" "python-3-deterministic-build-info.patch" -- cgit v1.2.3 From f04dca8eb750e44df9cda997089ee5657ce17516 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 9 Dec 2020 09:21:27 +0200 Subject: gnu: libssh2: Fix CVE-2019-17498. * gnu/packages/patches/ssh.scm (libssh2)[source]: Add patch. * gnu/packages/patches/libssh2-CVE-2019-17498.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/patches/libssh2-CVE-2019-17498.patch | 126 ++++++++++++++++++++++ gnu/packages/ssh.scm | 5 +- 3 files changed, 130 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/libssh2-CVE-2019-17498.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 897de3eaf9..6297c8e1d6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1283,6 +1283,7 @@ dist_patch_DATA = \ %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \ %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \ %D%/packages/patches/libquicktime-ffmpeg.patch \ + %D%/packages/patches/libssh2-CVE-2019-17498.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \ %D%/packages/patches/libtgvoip-disable-sse2.patch \ %D%/packages/patches/libtgvoip-disable-webrtc.patch \ diff --git a/gnu/packages/patches/libssh2-CVE-2019-17498.patch b/gnu/packages/patches/libssh2-CVE-2019-17498.patch new file mode 100644 index 0000000000..6f69e562e2 --- /dev/null +++ b/gnu/packages/patches/libssh2-CVE-2019-17498.patch @@ -0,0 +1,126 @@ +https://github.com/libssh2/libssh2/commit/dedcbd106f8e52d5586b0205bc7677e4c9868f9c.patch + +From dedcbd106f8e52d5586b0205bc7677e4c9868f9c Mon Sep 17 00:00:00 2001 +From: Will Cosgrove +Date: Fri, 30 Aug 2019 09:57:38 -0700 +Subject: [PATCH] packet.c: improve message parsing (#402) + +* packet.c: improve parsing of packets + +file: packet.c + +notes: +Use _libssh2_get_string API in SSH_MSG_DEBUG/SSH_MSG_DISCONNECT. Additional uint32 bounds check in SSH_MSG_GLOBAL_REQUEST. +--- + src/packet.c | 68 ++++++++++++++++++++++------------------------------ + 1 file changed, 29 insertions(+), 39 deletions(-) + +diff --git a/src/packet.c b/src/packet.c +index 38ab62944..2e01bfc5d 100644 +--- a/src/packet.c ++++ b/src/packet.c +@@ -419,8 +419,8 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + size_t datalen, int macstate) + { + int rc = 0; +- char *message = NULL; +- char *language = NULL; ++ unsigned char *message = NULL; ++ unsigned char *language = NULL; + size_t message_len = 0; + size_t language_len = 0; + LIBSSH2_CHANNEL *channelp = NULL; +@@ -472,33 +472,23 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + + case SSH_MSG_DISCONNECT: + if(datalen >= 5) { +- size_t reason = _libssh2_ntohu32(data + 1); ++ uint32_t reason = 0; ++ struct string_buf buf; ++ buf.data = (unsigned char *)data; ++ buf.dataptr = buf.data; ++ buf.len = datalen; ++ buf.dataptr++; /* advance past type */ + +- if(datalen >= 9) { +- message_len = _libssh2_ntohu32(data + 5); ++ _libssh2_get_u32(&buf, &reason); ++ _libssh2_get_string(&buf, &message, &message_len); ++ _libssh2_get_string(&buf, &language, &language_len); + +- if(message_len < datalen-13) { +- /* 9 = packet_type(1) + reason(4) + message_len(4) */ +- message = (char *) data + 9; +- +- language_len = +- _libssh2_ntohu32(data + 9 + message_len); +- language = (char *) data + 9 + message_len + 4; +- +- if(language_len > (datalen-13-message_len)) { +- /* bad input, clear info */ +- language = message = NULL; +- language_len = message_len = 0; +- } +- } +- else +- /* bad size, clear it */ +- message_len = 0; +- } + if(session->ssh_msg_disconnect) { +- LIBSSH2_DISCONNECT(session, reason, message, +- message_len, language, language_len); ++ LIBSSH2_DISCONNECT(session, reason, (const char *)message, ++ message_len, (const char *)language, ++ language_len); + } ++ + _libssh2_debug(session, LIBSSH2_TRACE_TRANS, + "Disconnect(%d): %s(%s)", reason, + message, language); +@@ -539,24 +529,24 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + int always_display = data[1]; + + if(datalen >= 6) { +- message_len = _libssh2_ntohu32(data + 2); +- +- if(message_len <= (datalen - 10)) { +- /* 6 = packet_type(1) + display(1) + message_len(4) */ +- message = (char *) data + 6; +- language_len = _libssh2_ntohu32(data + 6 + +- message_len); +- +- if(language_len <= (datalen - 10 - message_len)) +- language = (char *) data + 10 + message_len; +- } ++ struct string_buf buf; ++ buf.data = (unsigned char *)data; ++ buf.dataptr = buf.data; ++ buf.len = datalen; ++ buf.dataptr += 2; /* advance past type & always display */ ++ ++ _libssh2_get_string(&buf, &message, &message_len); ++ _libssh2_get_string(&buf, &language, &language_len); + } + + if(session->ssh_msg_debug) { +- LIBSSH2_DEBUG(session, always_display, message, +- message_len, language, language_len); ++ LIBSSH2_DEBUG(session, always_display, ++ (const char *)message, ++ message_len, (const char *)language, ++ language_len); + } + } ++ + /* + * _libssh2_debug will actually truncate this for us so + * that it's not an inordinate about of data +@@ -579,7 +569,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + uint32_t len = 0; + unsigned char want_reply = 0; + len = _libssh2_ntohu32(data + 1); +- if(datalen >= (6 + len)) { ++ if((len <= (UINT_MAX - 6)) && (datalen >= (6 + len))) { + want_reply = data[5 + len]; + _libssh2_debug(session, + LIBSSH2_TRACE_CONN, diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 146177f7f3..0f2434d7c5 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2013, 2014 Andreas Enge ;;; Copyright © 2014, 2015, 2016 Mark H Weaver -;;; Copyright © 2015, 2016, 2018, 2019 Efraim Flashner +;;; Copyright © 2015, 2016, 2018, 2019, 2020 Efraim Flashner ;;; Copyright © 2016, 2019 Leo Famulari ;;; Copyright © 2016 Nicolas Goaziou ;;; Copyright © 2016 Christopher Allan Webber @@ -165,7 +165,8 @@ (define-public libssh2 version ".tar.gz")) (sha256 (base32 - "1zfsz9nldakfz61d2j70pk29zlmj7w2vv46s9l3x2prhcgaqpyym")))) + "1zfsz9nldakfz61d2j70pk29zlmj7w2vv46s9l3x2prhcgaqpyym")) + (patches (search-patches "libssh2-CVE-2019-17498.patch")))) (build-system gnu-build-system) ;; The installed libssh2.pc file does not include paths to libgcrypt and ;; zlib libraries, so we need to propagate the inputs. -- cgit v1.2.3 From 18daba93d3fcec0e5fd9e54b6c4c7e5b979f1a6e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 29 Nov 2020 20:18:44 +0100 Subject: gnu: Qt: Update to 5.15.2. * gnu/packages/qt.scm (qtbase, qtsvg, qtimageformats, qtx11extras, qtxmlpatterns, qtdeclarative, qtconnectivity, qtwebsockets, qtsensors, qtmultimedia, qtwayland, qtserialport, qtserialbus, qtwebchannel, qtwebglplugin, qtwebview, qtlocation, qttools, qtscript, qtquickcontrols, qtquickcontrols2, qtgraphicaleffects, qtgamepad, qtscxml, qtpurchasing, qtcharts, qtdatavis3d, qtnetworkauth, qtremoteobjects, qtspeech, qtwebengine): Update to 5.15.2. (qtbase)[source](patches): Remove obsolete patch. (qtwayland)[source](modules, snippet): Remove. [inputs]: Add VULKAN-HEADERS. (qtwebengine)[source](snippet): Adjust preserved files. [arguments]: Remove two obsolete phases. * gnu/packages/patches/qtbase-fix-krita-deadlock.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. --- gnu/local.mk | 1 - .../patches/qtbase-fix-krita-deadlock.patch | 110 ------------- gnu/packages/qt.scm | 183 ++++++++++----------- 3 files changed, 89 insertions(+), 205 deletions(-) delete mode 100644 gnu/packages/patches/qtbase-fix-krita-deadlock.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index ee8aecf4a1..91039ed9f8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1555,7 +1555,6 @@ dist_patch_DATA = \ %D%/packages/patches/qrcodegen-cpp-make-install.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtbase-absolute-runpath.patch \ - %D%/packages/patches/qtbase-fix-krita-deadlock.patch \ %D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ diff --git a/gnu/packages/patches/qtbase-fix-krita-deadlock.patch b/gnu/packages/patches/qtbase-fix-krita-deadlock.patch deleted file mode 100644 index d3554be3c9..0000000000 --- a/gnu/packages/patches/qtbase-fix-krita-deadlock.patch +++ /dev/null @@ -1,110 +0,0 @@ -Fix a deadlock in Krita: - -https://bugreports.qt.io/browse/QTBUG-83207 - -Patch copied from Qt bug tracker: - -https://codereview.qt-project.org/c/qt/qtbase/+/296034 - -From 276fa8383a7535765be7182883ef4aade17ce013 Mon Sep 17 00:00:00 2001 -From: Thiago Macieira -Date: Thu, 02 Apr 2020 12:08:41 -0300 -Subject: [PATCH] QLibrary: fix deadlock caused by fix to QTBUG-39642 - -Commit ae6f73e8566fa76470937aca737141183929a5ec inserted a mutex around -the entire load_sys(). We had reasoed that deadlocks would only occur if -the object creation in instance() recursed into its own instance(), -which was already a bug. But we had forgotten that dlopen()/ -LoadLibrary() executes initialization code from the module being loaded, -which could cause a recursion back into the same QPluginLoader or -QLibrary object. This recursion is benign because the module *is* loaded -and dlopen()/LoadLibrary() returns the same handle. - -[ChangeLog][QtCore][QLibrary and QPluginLoader] Fixed a deadlock that -would happen if the plugin or library being loaded has load-time -initialization code (C++ global variables) that recursed back into the -same QLibrary or QPluginLoader object. - -PS: QLibraryPrivate::loadPlugin() updates pluginState outside a mutex -lock, so pluginState should be made an atomic variable. Once that is -done, we'll only need locking the mutex to update errorString (no -locking before loading). - -Fixes: QTBUG-83207 -Task-number: QTBUG-39642 -Change-Id: Ibdc95e9af7bd456a94ecfffd160209304e5ab2eb -Reviewed-by: Volker Hilsheimer -Reviewed-by: David Faure ---- - -diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp -index ddb053c..be9d92b 100644 ---- a/src/corelib/plugin/qlibrary.cpp -+++ b/src/corelib/plugin/qlibrary.cpp -@@ -576,9 +576,7 @@ - - Q_TRACE(QLibraryPrivate_load_entry, fileName); - -- mutex.lock(); - bool ret = load_sys(); -- mutex.unlock(); - if (qt_debug_component()) { - if (ret) { - qDebug() << "loaded library" << fileName; -diff --git a/src/corelib/plugin/qlibrary_unix.cpp b/src/corelib/plugin/qlibrary_unix.cpp -index 017aa97..a5c72f8 100644 ---- a/src/corelib/plugin/qlibrary_unix.cpp -+++ b/src/corelib/plugin/qlibrary_unix.cpp -@@ -123,6 +123,7 @@ - - bool QLibraryPrivate::load_sys() - { -+ QMutexLocker locker(&mutex); - QString attempt; - QFileSystemEntry fsEntry(fileName); - -@@ -213,6 +214,7 @@ - } - #endif - -+ locker.unlock(); - bool retry = true; - Handle hnd = nullptr; - for (int prefix = 0; retry && !hnd && prefix < prefixes.size(); prefix++) { -@@ -273,6 +275,8 @@ - } - } - #endif -+ -+ locker.relock(); - if (!hnd) { - errorString = QLibrary::tr("Cannot load library %1: %2").arg(fileName, qdlerror()); - } -diff --git a/src/corelib/plugin/qlibrary_win.cpp b/src/corelib/plugin/qlibrary_win.cpp -index 000bf76..ef58724 100644 ---- a/src/corelib/plugin/qlibrary_win.cpp -+++ b/src/corelib/plugin/qlibrary_win.cpp -@@ -78,6 +78,7 @@ - // fileName - // - // NB If it's a plugin we do not ever try the ".dll" extension -+ QMutexLocker locker(&mutex); - QStringList attempts; - - if (pluginState != IsAPlugin) -@@ -95,6 +96,7 @@ - attempts.prepend(QDir::rootPath() + fileName); - #endif - -+ locker.unlock(); - Handle hnd = nullptr; - for (const QString &attempt : qAsConst(attempts)) { - #ifndef Q_OS_WINRT -@@ -115,6 +117,7 @@ - #ifndef Q_OS_WINRT - SetErrorMode(oldmode); - #endif -+ locker.relock(); - if (!hnd) { - errorString = QLibrary::tr("Cannot load library %1: %2").arg( - QDir::toNativeSeparators(fileName), qt_error_string()); diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 2e621e758c..09945b2ffb 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -345,7 +345,7 @@ (define-public qt-4 (define-public qtbase (package (name "qtbase") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -354,12 +354,11 @@ (define-public qtbase version ".tar.xz")) (sha256 (base32 - "12mjsahlma9rw3vz9a6b5h2s6ylg8b34hxc2vnlna5ll429fgfa8")) + "1y70libf2x52lpbqvhz10lpk7nyl1ajjwzjxly9pjdpfj4jsv7wh")) ;; Use TZDIR to avoid depending on package "tzdata". (patches (search-patches "qtbase-use-TZDIR.patch" "qtbase-moc-ignore-gcc-macro.patch" - "qtbase-absolute-runpath.patch" - "qtbase-fix-krita-deadlock.patch")) + "qtbase-absolute-runpath.patch")) (modules '((guix build utils))) (snippet ;; corelib uses bundled harfbuzz, md4, md5, sha3 @@ -607,7 +606,7 @@ (define-deprecated qt qtbase) (define-public qtsvg (package (inherit qtbase) (name "qtsvg") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -616,7 +615,7 @@ (define-public qtsvg version ".tar.xz")) (sha256 (base32 - "18dmfc8s428fzbk7k5vl3212b25455ayrz7s716nwyiy3ahgmmy7")))) + "0pjqrdmd1991x9h4rl8sf81pkd89hfd5h1a2gp3fjw96pk0w5hwb")))) (propagated-inputs `()) (native-inputs `(("perl" ,perl))) (inputs @@ -682,7 +681,7 @@ (define-public qtsvg (define-public qtimageformats (package (inherit qtsvg) (name "qtimageformats") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -691,7 +690,7 @@ (define-public qtimageformats version ".tar.xz")) (sha256 (base32 - "132g4rlm61pdcpcrclr1rwpbrxn7va4wjfb021mh8pn1cl0wlgkk")) + "1msk8a0z8rr16hkp2fnv668vf6wayiydqgc2mcklaa04rv3qb0mz")) (modules '((guix build utils))) (snippet '(begin @@ -723,7 +722,7 @@ (define-public qtimageformats (define-public qtx11extras (package (inherit qtsvg) (name "qtx11extras") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -732,7 +731,7 @@ (define-public qtx11extras version ".tar.xz")) (sha256 (base32 - "0njlh6d327nll7d8qaqrwr5x15m9yzgyar2j45qigs1f7ah896my")))) + "0gkfzj195v9flwljnqpdz3a532618yn4h2577nlsai56x4p7053h")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -747,7 +746,7 @@ (define-public qtx11extras (define-public qtxmlpatterns (package (inherit qtsvg) (name "qtxmlpatterns") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -756,7 +755,7 @@ (define-public qtxmlpatterns version ".tar.xz")) (sha256 (base32 - "1dyg1z4349k04yyzn8xbp4f5qjgm60gz6wgzp80khpilcmk8g6i1")))) + "1ypj5jpa31rlx8yfw3y9jia212lfnxvnqkvygs6ihjf3lxi23skn")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f) ; TODO: Enable the tests @@ -778,7 +777,7 @@ (define-public qtxmlpatterns (define-public qtdeclarative (package (inherit qtsvg) (name "qtdeclarative") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -787,7 +786,7 @@ (define-public qtdeclarative version ".tar.xz")) (sha256 (base32 - "0l0nhc2si6dl9r4s1bs45z90qqigs8jnrsyjjdy38q4pvix63i53")))) + "0lancdn7y0lrlmyn5cbdm0izd5yprvd5n77nhkb7a3wl2sbx0066")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f) ;TODO: Enable the tests @@ -822,7 +821,7 @@ (define-public qtdeclarative (define-public qtconnectivity (package (inherit qtsvg) (name "qtconnectivity") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -831,7 +830,7 @@ (define-public qtconnectivity version ".tar.xz")) (sha256 (base32 - "0a5wzin635b926b8prdwfazgy1vhyf8m6an64wp2lpkp78z7prmb")))) + "185zci61ip1wpjrygcw2m6v55lvninc0b8y2p3jh6qgpf5w35003")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -846,7 +845,7 @@ (define-public qtconnectivity (define-public qtwebsockets (package (inherit qtsvg) (name "qtwebsockets") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -855,7 +854,7 @@ (define-public qtwebsockets version ".tar.xz")) (sha256 (base32 - "116amx4mnv50k0fpswgpr5x8wjny8nbffrjmld01pzhkhfqn4vph")))) + "0gr399fn5n8j3m9d3vv01vcbr1cb7pw043j04cnnxzrlvn2jvd50")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -873,7 +872,7 @@ (define-public qtwebsockets (define-public qtsensors (package (inherit qtsvg) (name "qtsensors") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -882,7 +881,7 @@ (define-public qtsensors version ".tar.xz")) (sha256 (base32 - "0qccpgbhyg9k4x5nni7xm0pyvaqia3zrcd42cn7ksf5h21lwmkxw")))) + "0fa81r7bn1mf9ynwsx524a55dx1q0jb4vda6j48ssb4lx7wi201z")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:parallel-tests? _ #f) #f) ; can lead to race condition @@ -906,7 +905,7 @@ (define-public qtsensors (define-public qtmultimedia (package (inherit qtsvg) (name "qtmultimedia") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -915,7 +914,7 @@ (define-public qtmultimedia version ".tar.xz")) (sha256 (base32 - "1sczzcvk3c5gczz53yvp8ma6gp8aixk5pcq7wh344c9md3g8xkbs")) + "1xbd6kc7i0iablqdkvfrajpi32cbq7j6ajbfyyyalcai1s0mhdqc")) (modules '((guix build utils))) (snippet '(begin @@ -957,7 +956,7 @@ (define-public qtmultimedia (define-public qtwayland (package (inherit qtsvg) (name "qtwayland") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -966,13 +965,7 @@ (define-public qtwayland version ".tar.xz")) (sha256 (base32 - "0al3yypy3fin62n8d1859jh0mn0fbpa161l7f37hgd4gf75365nk")) - (modules '((guix build utils))) - (snippet - ;; The examples try to build and cause the build to fail - '(begin - (delete-file-recursively "examples") - #t)))) + "1ddfx4nak16xx0zh1kl836zxvpbixmmjyplsmfmg65pqkwi34dqr")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1009,6 +1002,7 @@ (define-public qtwayland ("mesa" ,mesa) ("mtdev" ,mtdev) ("qtbase" ,qtbase) + ("vulkan-headers" ,vulkan-headers) ("wayland" ,wayland))) (synopsis "Qt Wayland module") (description "The Qt Wayland module provides the QtWayland client and @@ -1017,7 +1011,7 @@ (define-public qtwayland (define-public qtserialport (package (inherit qtsvg) (name "qtserialport") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1026,7 +1020,7 @@ (define-public qtserialport version ".tar.xz")) (sha256 (base32 - "08ga9a1lwj83872nxablk602z1dq0la6jqsiicvd7m1sfbfpgnd6")))) + "17gp5qzg4wdg8qlxk2p3mh8x1vk33rf33wic3fy0cws193bmkiar")))) (native-inputs `(("perl" ,perl))) (inputs `(("qtbase" ,qtbase) @@ -1051,7 +1045,7 @@ (define-public qtserialport (define-public qtserialbus (package (inherit qtsvg) (name "qtserialbus") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1060,7 +1054,7 @@ (define-public qtserialbus version ".tar.xz")) (sha256 (base32 - "14bahg82jciciqkl74q9hvf3a8kp3pk5v731vp2416k4b8bn4xqb")))) + "125x6756fjpldqy6wbw6cg7ngjh2016aiq92bchh719z1mf7xsxf")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases '%standard-phases) @@ -1086,7 +1080,7 @@ (define-public qtserialbus (define-public qtwebchannel (package (inherit qtsvg) (name "qtwebchannel") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1095,7 +1089,7 @@ (define-public qtwebchannel version ".tar.xz")) (sha256 (base32 - "0x7q66994pw6cd0f505bmirw1sssqs740zaw8lyqqqr32m2ch7bx")))) + "1h9y634phvvk557mhmf9z4lmxr41rl8x9mqy2lzp31mk8ffffzqj")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative) @@ -1110,7 +1104,7 @@ (define-public qtwebchannel (define-public qtwebglplugin (package (inherit qtsvg) (name "qtwebglplugin") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1119,7 +1113,7 @@ (define-public qtwebglplugin version ".tar.xz")) (sha256 (base32 - "05rl657848fsprsnabdqb5z363c6drjc32k59223vl351f8ihhgb")))) + "0ihlnhv8ldkqz82v3j7j22lrhk17b6ghra8sx85y2agd2ysq5rw1")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1146,7 +1140,7 @@ (define-public qtwebglplugin (define-public qtwebview (package (inherit qtsvg) (name "qtwebview") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1155,7 +1149,7 @@ (define-public qtwebview version ".tar.xz")) (sha256 (base32 - "0jzzcm7z5njkddzfhmyjz4dbbzq8h93980cci4479zc4xq9r47y6")))) + "1rw1wibmbxlj6xc86qs3y8h42al1vczqiksyxzaylxs9gqb4d7xy")))) (native-inputs `(("perl" ,perl))) (inputs @@ -1169,7 +1163,7 @@ (define-public qtwebview (define-public qtlocation (package (inherit qtsvg) (name "qtlocation") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1178,7 +1172,7 @@ (define-public qtlocation version ".tar.xz")) (sha256 (base32 - "1k3m8zhbv04yrqvj7jlnh8f9xczdsmla59j9gcwsqvbg76y0hxy3")))) + "184jychnlfhplpwc5cdcsapwljgwvzk5qpf3val4kpq8w44wnkwq")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1199,7 +1193,7 @@ (define-public qtlocation (define-public qttools (package (inherit qtsvg) (name "qttools") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1208,7 +1202,7 @@ (define-public qttools version ".tar.xz")) (sha256 (base32 - "1iakl3hlyg51ri1czmis8mmb257b0y1zk2a2knybd3mq69wczc2v")))) + "1k618f7v6jaj0ygy8d7jvgb8zjr47sn55kiskbdkkizp3z7d12f1")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1227,7 +1221,7 @@ (define-public qttools (define-public qtscript (package (inherit qtsvg) (name "qtscript") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1236,7 +1230,7 @@ (define-public qtscript version ".tar.xz")) (sha256 (base32 - "1zlvg3hc6h70d789g3kv6dxbwswzkskkm00bdgl01grwrdy4izg9")) + "0gk74hk488k9ldacxbxcranr3arf8ifqg8kz9nm1rgdgd59p36d2")) (patches (search-patches "qtscript-disable-tests.patch")))) (native-inputs `(("perl" ,perl) @@ -1251,7 +1245,7 @@ (define-public qtscript (define-public qtquickcontrols (package (inherit qtsvg) (name "qtquickcontrols") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1260,7 +1254,7 @@ (define-public qtquickcontrols version ".tar.xz")) (sha256 (base32 - "0qa4dlhn3iv9yvaic8hw86v6h8rn9sgq8xjfdaym04pfshfyypfm")))) + "1dczakl868mg0lnwpf082jjc5976ycn879li1vqlgw5ihirzp4y3")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1275,7 +1269,7 @@ (define-public qtquickcontrols (define-public qtquickcontrols2 (package (inherit qtsvg) (name "qtquickcontrols2") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1284,7 +1278,7 @@ (define-public qtquickcontrols2 version ".tar.xz")) (sha256 (base32 - "0q0mk2mjlf9ll0gdrdzxy8096s6g9draaqiwrlvdpa7lv14x7xzs")))) + "06c9vrwvbjmzapmfa25y34lgjkzg57xxbm92nr6wkv5qykjnq6v7")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1300,7 +1294,7 @@ (define-public qtquickcontrols2 (define-public qtgraphicaleffects (package (inherit qtsvg) (name "qtgraphicaleffects") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1309,7 +1303,7 @@ (define-public qtgraphicaleffects version ".tar.xz")) (sha256 (base32 - "03xmwhapv0b2qj661iaqqrvhxc7qiid0acrp6rj85824ha2pyyj8")))) + "1r6zfc0qga2ax155js7c8y5rx6vgayf582s921j09mb797v6g3gc")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1327,7 +1321,7 @@ (define-public qtgraphicaleffects (define-public qtgamepad (package (inherit qtsvg) (name "qtgamepad") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1336,7 +1330,7 @@ (define-public qtgamepad version ".tar.xz")) (sha256 (base32 - "00wd3h465waxdghg2vdhs5pkj0xikwjn88l12477dksm8zdslzgp")))) + "0p07bg93fdfn4gr2kv38qgnws5znhswajrxdfs8xc9l3i7vi2xn7")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config))) @@ -1357,7 +1351,7 @@ (define-public qtgamepad (define-public qtscxml (package (inherit qtsvg) (name "qtscxml") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1366,7 +1360,7 @@ (define-public qtscxml version ".tar.xz")) (sha256 (base32 - "141pfschv6zmcvvn3pi7f5vb4nf96zpngy80f9bly1sn58syl303")) + "1p5771b9hnpchfcdgy0zkhwg09a6xq88934aggp0rij1k85mkfb0")) (modules '((guix build utils))) (snippet '(begin @@ -1388,7 +1382,7 @@ (define-public qtscxml (define-public qtpurchasing (package (inherit qtsvg) (name "qtpurchasing") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1397,7 +1391,7 @@ (define-public qtpurchasing version ".tar.xz")) (sha256 (base32 - "0lg8x7g7dkf95xwxq8b4yw4ypdz68igkscya96xwbklg3q08gc39")))) + "09rjx53519dfk4qj2gbn3vlxyriasyb747wpg1p11y7jkwqhs4l7")))) (inputs `(("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) @@ -1408,7 +1402,7 @@ (define-public qtpurchasing (define-public qtcharts (package (inherit qtsvg) (name "qtcharts") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1417,7 +1411,7 @@ (define-public qtcharts version ".tar.xz")) (sha256 (base32 - "1drvm15i6n10b6a1acgarig120ppvqh3r6fqqdn8i3blx81m5cmd")))) + "049x7z8zcp9jixmdv2fjscy2ggpd6za9hkdbb2bqp2mxjm0hwxg0")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1435,7 +1429,7 @@ (define-public qtcharts (define-public qtdatavis3d (package (inherit qtsvg) (name "qtdatavis3d") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1444,7 +1438,7 @@ (define-public qtdatavis3d version ".tar.xz")) (sha256 (base32 - "080fkpxg70m3c697wfnkjhca58b7r1xsqd559jzb21985pdh6g3j")))) + "1zdn3vm0nfy9ny7c783aabp3mhlnqhi9fw2rljn7ibbksmsnasi2")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1462,7 +1456,7 @@ (define-public qtdatavis3d (define-public qtnetworkauth (package (inherit qtsvg) (name "qtnetworkauth") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1471,7 +1465,7 @@ (define-public qtnetworkauth version ".tar.xz")) (sha256 (base32 - "0pi6p7bq54kzij2p69cgib7n55k69jsq0yqq09yli645s4ym202g")))) + "11fdgacv4syr8bff2vdw7rb0dg1gcqpdf37hm3pn31d6z91frhpw")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1491,7 +1485,7 @@ (define-public qtnetworkauth (define-public qtremoteobjects (package (inherit qtsvg) (name "qtremoteobjects") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1500,7 +1494,7 @@ (define-public qtremoteobjects version ".tar.xz")) (sha256 (base32 - "1mhlws5w0igf5hw0l90p6dz6k7w16dqfbnk2li0zxdmayk2039m6")))) + "1hngbp0vkr35rpsrac7b9vx6f360v8v2g0fffzm590l8j2ybd0b7")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1528,7 +1522,7 @@ (define-public qtremoteobjects (define-public qtspeech (package (inherit qtsvg) (name "qtspeech") - (version "5.14.2") + (version "5.15.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1537,7 +1531,7 @@ (define-public qtspeech version ".tar.xz")) (sha256 (base32 - "1nn6kspbp8hfkz1jhzc1qx1m9z7r1bgkdqgi9n4vl1q25yk8x7jy")))) + "1xc3x3ghnhgchsg1kgj156yg69wn4rwjx8r28i1jd05hxjggn468")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) @@ -1602,7 +1596,7 @@ (define-public qtwebengine version ".tar.xz")) (sha256 (base32 - "0iy9lsl6zxlkca6x2p1506hbj3wmhnaipg23z027wfccbnkxcsg1")) + "1q4idxdm81sx102xc12ixj0xpfx52d6vwvs3jpapnkyq8c7cmby8")) (modules '((ice-9 ftw) (ice-9 match) (srfi srfi-1) @@ -1611,8 +1605,9 @@ (define-public qtwebengine (snippet '(begin (let ((preserved-third-party-files - '("base/third_party/cityhash" - "base/third_party/dmg_fp" + '("base/third_party/double_conversion" + "base/third_party/cityhash" + "base/third_party/cityhash_v103" "base/third_party/dynamic_annotations" "base/third_party/icu" "base/third_party/libevent" @@ -1635,19 +1630,26 @@ (define-public qtwebengine "third_party/blink" "third_party/boringssl" "third_party/boringssl/src/third_party/fiat" - "third_party/boringssl/src/third_party/sike" - "third_party/boringssl/linux-x86_64/crypto/third_party/sike" - "third_party/boringssl/linux-aarch64/crypto/third_party/sike" "third_party/breakpad" "third_party/brotli" "third_party/ced" "third_party/cld_3" + "third_party/closure_compiler" + "third_party/crashpad" + "third_party/crashpad/crashpad/third_party/lss" + "third_party/crashpad/crashpad/third_party/zlib" "third_party/crc32c" "third_party/dav1d" "third_party/dawn" + "third_party/devtools-frontend" + "third_party/devtools-frontend/src/front_end/third_party/fabricjs" + "third_party/devtools-frontend/src/front_end/third_party/lighthouse" + "third_party/devtools-frontend/src/front_end/third_party/wasmparser" + "third_party/devtools-frontend/src/third_party/axe-core" "third_party/emoji-segmenter" "third_party/ffmpeg" "third_party/googletest" + "third_party/harfbuzz-ng/utils" "third_party/hunspell" "third_party/iccjpeg" "third_party/icu" @@ -1658,8 +1660,9 @@ (define-public qtwebengine "third_party/khronos" "third_party/leveldatabase" "third_party/libaddressinput" + "third_party/libgifcodec" "third_party/libjingle_xmpp" - "third_party/libjpeg" + "third_party/libjpeg_turbo" "third_party/libpng" "third_party/libsrtp" "third_party/libsync" @@ -1671,6 +1674,7 @@ (define-public qtwebengine "third_party/libxslt" "third_party/libyuv" "third_party/lss" + "third_party/mako" "third_party/markupsafe" "third_party/mesa_headers" "third_party/metrics_proto" @@ -1679,18 +1683,25 @@ (define-public qtwebengine "third_party/one_euro_filter" "third_party/opus" "third_party/ots" + "third_party/pdfium" + "third_party/pdfium/third_party/agg23" + "third_party/pdfium/third_party/base" + "third_party/pdfium/third_party/freetype" + "third_party/pdfium/third_party/lcms" + "third_party/pdfium/third_party/libopenjpeg20" + "third_party/pdfium/third_party/skia_shared" "third_party/perfetto" "third_party/pffft" "third_party/ply" "third_party/polymer" "third_party/protobuf" + "third_party/protobuf/third_party/six" "third_party/pyjson5" "third_party/re2" "third_party/rnnoise" "third_party/skia" "third_party/skia/include/third_party/skcms/skcms.h" "third_party/skia/include/third_party/vulkan" - "third_party/skia/third_party/gif" "third_party/skia/third_party/skcms" "third_party/skia/third_party/vulkanmemoryallocator" "third_party/smhasher" @@ -1791,7 +1802,7 @@ (define (delete-unwanted-files child stat flag base level) (("third_party/curl") "curl")) (substitute* '("components/viz/common/gpu/vulkan_context_provider.h" - "components/viz/common/resources/resource_format_utils.h" + "components/viz/common/resources/resource_format_utils_vulkan.h" "gpu/config/gpu_util.cc") (("third_party/vulkan/include/") "")) @@ -1817,6 +1828,7 @@ (define (delete-unwanted-files child stat flag base level) ("perl" ,perl) ("pkg-config" ,pkg-config) ("python-2" ,python-2) + ("python-six" ,python2-six) ("ruby" ,ruby))) (inputs `(("alsa-lib" ,alsa-lib) @@ -1871,23 +1883,6 @@ (define (delete-unwanted-files child stat flag base level) (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) `(modify-phases ,phases - (add-after 'unpack 'fix-build-with-newer-re2 - (lambda _ - ;; Adjust for API change in re2, taken from - ;; https://chromium-review.googlesource.com/c/chromium/src/+/2145261 - (substitute* "src/3rdparty/chromium/components/autofill/core\ -/browser/address_rewriter.cc" - (("options\\.set_utf8\\(true\\)") - "options.set_encoding(RE2::Options::EncodingUTF8)")) - #t)) - (add-after 'unpack 'patch-ninja-version-check - (lambda _ - ;; The build system assumes the system Ninja is too old because - ;; it only checks for versions 1.7 through 1.9. We have 1.10. - (substitute* "configure.pri" - (("1\\.\\[7-9\\]\\.\\*") - "1.([7-9]|1[0-9]).*")) - #t)) (add-before 'configure 'substitute-source (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) -- cgit v1.2.3 From 85ba5e9335207beef9a650e96d5d64787beb9256 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 21 Dec 2020 23:38:22 +0100 Subject: gnu: sbc: Fix build on non-x86 architectures. * gnu/packages/patches/sbc-fix-build-non-x86.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/linux.scm (sbc)[source](patches): New field. --- gnu/local.mk | 1 + gnu/packages/linux.scm | 1 + gnu/packages/patches/sbc-fix-build-non-x86.patch | 17 +++++++++++++++++ 3 files changed, 19 insertions(+) create mode 100644 gnu/packages/patches/sbc-fix-build-non-x86.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 91039ed9f8..36b0895ce2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1600,6 +1600,7 @@ dist_patch_DATA = \ %D%/packages/patches/rust-reproducible-builds.patch \ %D%/packages/patches/rust-openssl-sys-no-vendor.patch \ %D%/packages/patches/rxvt-unicode-escape-sequences.patch \ + %D%/packages/patches/sbc-fix-build-non-x86.patch \ %D%/packages/patches/sbcl-clml-fix-types.patch \ %D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \ %D%/packages/patches/scheme48-tests.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 6a7ce7fa68..09bc56df3e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -4654,6 +4654,7 @@ (define-public sbc (method url-fetch) (uri (string-append "mirror://kernel.org/linux/bluetooth/sbc-" version ".tar.xz")) + (patches (search-patches "sbc-fix-build-non-x86.patch")) (sha256 (base32 "1liig5856crb331dps18mp0s13zbkv7yh007zqhq97m94fcddfhc")))) diff --git a/gnu/packages/patches/sbc-fix-build-non-x86.patch b/gnu/packages/patches/sbc-fix-build-non-x86.patch new file mode 100644 index 0000000000..56ea916d42 --- /dev/null +++ b/gnu/packages/patches/sbc-fix-build-non-x86.patch @@ -0,0 +1,17 @@ +Don't refer to x86-specific function on other architectures to avoid linker error. + +Submitted upstream at + +diff --git a/sbc/sbc_primitives.c b/sbc/sbc_primitives.c +--- a/sbc/sbc_primitives.c ++++ b/sbc/sbc_primitives.c +@@ -593,7 +593,9 @@ static int sbc_calc_scalefactors_j( + + static void sbc_init_primitives_x86(struct sbc_encoder_state *state) + { ++#if defined(__x86_64__) || defined(__i386__) + __builtin_cpu_init(); ++#endif + + #ifdef SBC_BUILD_WITH_MMX_SUPPORT + if (__builtin_cpu_supports("mmx")) -- cgit v1.2.3 From e8d4c6deaac8f2d81f63b092b6496f0c235c9389 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 23 Dec 2020 17:29:03 -0500 Subject: gnu: VLC: Fix build with Qt 5.15. * gnu/packages/patches/vlc-qt-5.15.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/video.scm (vlc)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/patches/vlc-qt-5.15.patch | 56 ++++++++++++++++++++++++++++++++++ gnu/packages/video.scm | 1 + 3 files changed, 58 insertions(+) create mode 100644 gnu/packages/patches/vlc-qt-5.15.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 4f8bd8de69..89e97e0ffe 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1699,6 +1699,7 @@ dist_patch_DATA = \ %D%/packages/patches/vboot-utils-fix-tests-show-contents.patch \ %D%/packages/patches/vboot-utils-skip-test-workbuf.patch \ %D%/packages/patches/vcflib-use-shared-libraries.patch \ + %D%/packages/patches/vlc-qt-5.15.patch \ %D%/packages/patches/vigra-python-compat.patch \ %D%/packages/patches/vinagre-newer-freerdp.patch \ %D%/packages/patches/vinagre-newer-rdp-parameters.patch \ diff --git a/gnu/packages/patches/vlc-qt-5.15.patch b/gnu/packages/patches/vlc-qt-5.15.patch new file mode 100644 index 0000000000..e986a99861 --- /dev/null +++ b/gnu/packages/patches/vlc-qt-5.15.patch @@ -0,0 +1,56 @@ +Fix build of VLC with Qt 5.15. Otherwise it fails like this: + +------ +In file included from gui/qt/util/timetooltip.moc.cpp:10:0: +gui/qt/util/timetooltip.hpp:49:18: error: field ‘mPainterPath’ has incomplete type ‘QPainterPath’ + QPainterPath mPainterPath; + ^~~~~~~~~~~~ +In file included from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtGui/qbrush.h:49:0, + from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtGui/qpalette.h:46, + from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtWidgets/qwidget.h:48, + from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtWidgets/QWidget:1, + from gui/qt/util/timetooltip.hpp:27, + from gui/qt/util/timetooltip.moc.cpp:10: +/gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtGui/qmatrix.h:54:7: note: forward declaration of ‘class QPainterPath’ + class QPainterPath; + ^~~~~~~~~~~~ +make[4]: *** [Makefile:25852: gui/qt/util/libqt_plugin_la-timetooltip.moc.lo] Error 1 +------ + +diff --git a/modules/gui/qt/components/playlist/views.cpp b/modules/gui/qt/components/playlist/views.cpp +index 24db9d9..73c1779 100644 +--- a/modules/gui/qt/components/playlist/views.cpp ++++ b/modules/gui/qt/components/playlist/views.cpp +@@ -27,6 +27,7 @@ + #include "input_manager.hpp" /* THEMIM */ + + #include ++#include + #include + #include + #include +diff --git a/modules/gui/qt/dialogs/plugins.cpp b/modules/gui/qt/dialogs/plugins.cpp +index d233382..69728eb 100644 +--- a/modules/gui/qt/dialogs/plugins.cpp ++++ b/modules/gui/qt/dialogs/plugins.cpp +@@ -53,6 +53,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/modules/gui/qt/util/timetooltip.hpp b/modules/gui/qt/util/timetooltip.hpp +index 6a1329e..9f50b18 100644 +--- a/modules/gui/qt/util/timetooltip.hpp ++++ b/modules/gui/qt/util/timetooltip.hpp +@@ -25,6 +25,7 @@ + #include "qt.hpp" + + #include ++#include + + class TimeTooltip : public QWidget + { + diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 0740abe040..2813bf0570 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1772,6 +1772,7 @@ (define-public vlc "https://download.videolan.org/pub/videolan/vlc/" (car (string-split version #\-)) "/vlc-" version ".tar.xz")) + (patches (search-patches "vlc-qt-5.15.patch")) (sha256 (base32 "1f46h0hv7fk35zg4iczlp7ib7h2jmh8m4r5klw3g2558ib9134qq")))) -- cgit v1.2.3 From 8b55544212a90b0276df49596a3d373e5c2e8f5c Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 18 Jan 2021 14:39:13 -0500 Subject: gnu: mesa: Skip another test. * gnu/packages/patches/mesa-skip-disk-cache-test.patch: Rename to ... * gnu/packages/patches/mesa-skip-tests.patch: ... new file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/gl.scm (mesa)[source]: Adjust accordingly. --- gnu/local.mk | 2 +- gnu/packages/gl.scm | 2 +- .../patches/mesa-skip-disk-cache-test.patch | 19 --------- gnu/packages/patches/mesa-skip-tests.patch | 49 ++++++++++++++++++++++ 4 files changed, 51 insertions(+), 21 deletions(-) delete mode 100644 gnu/packages/patches/mesa-skip-disk-cache-test.patch create mode 100644 gnu/packages/patches/mesa-skip-tests.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 479277aafa..ba95aeca64 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1348,7 +1348,7 @@ dist_patch_DATA = \ %D%/packages/patches/libmemcached-build-with-gcc7.patch \ %D%/packages/patches/libmhash-hmac-fix-uaf.patch \ %D%/packages/patches/mediastreamer2-srtp2.patch \ - %D%/packages/patches/mesa-skip-disk-cache-test.patch \ + %D%/packages/patches/mesa-skip-tests.patch \ %D%/packages/patches/mescc-tools-boot.patch \ %D%/packages/patches/meson-for-build-rpath.patch \ %D%/packages/patches/metabat-fix-compilation.patch \ diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index dc64ccf85e..2612347913 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -249,7 +249,7 @@ (define-public mesa (base32 "14m09bk7akj0k02lg8fhvvzbdsashlbdsgl2cw7wbqfj2mhdqwh5")) (patches - (search-patches "mesa-skip-disk-cache-test.patch")))) + (search-patches "mesa-skip-tests.patch")))) (build-system meson-build-system) (propagated-inputs `(;; The following are in the Requires.private field of gl.pc. diff --git a/gnu/packages/patches/mesa-skip-disk-cache-test.patch b/gnu/packages/patches/mesa-skip-disk-cache-test.patch deleted file mode 100644 index 190f6b6ee1..0000000000 --- a/gnu/packages/patches/mesa-skip-disk-cache-test.patch +++ /dev/null @@ -1,19 +0,0 @@ -disk_cache_create() here looks up the users home directory from -which resolves to "/" in the build environment. I could not find an easy -way to set the home directory to something else, so we disable this test -for now. - ---- a/src/compiler/glsl/tests/cache_test.c -+++ b/src/compiler/glsl/tests/cache_test.c -@@ -170,11 +170,6 @@ - unsetenv("MESA_GLSL_CACHE_DIR"); - unsetenv("XDG_CACHE_HOME"); - -- cache = disk_cache_create("test", "make_check", 0); -- expect_non_null(cache, "disk_cache_create with no environment variables"); -- -- disk_cache_destroy(cache); -- - /* Test with XDG_CACHE_HOME set */ - setenv("XDG_CACHE_HOME", CACHE_TEST_TMP "/xdg-cache-home", 1); - cache = disk_cache_create("test", "make_check", 0); diff --git a/gnu/packages/patches/mesa-skip-tests.patch b/gnu/packages/patches/mesa-skip-tests.patch new file mode 100644 index 0000000000..2622d5d312 --- /dev/null +++ b/gnu/packages/patches/mesa-skip-tests.patch @@ -0,0 +1,49 @@ +disk_cache_create() here looks up the users home directory from +which resolves to "/" in the build environment. I could not find an easy +way to set the home directory to something else, so we disable this test +for now. + +--- a/src/compiler/glsl/tests/cache_test.c ++++ b/src/compiler/glsl/tests/cache_test.c +@@ -170,11 +170,6 @@ + unsetenv("MESA_GLSL_CACHE_DIR"); + unsetenv("XDG_CACHE_HOME"); + +- cache = disk_cache_create("test", "make_check", 0); +- expect_non_null(cache, "disk_cache_create with no environment variables"); +- +- disk_cache_destroy(cache); +- + /* Test with XDG_CACHE_HOME set */ + setenv("XDG_CACHE_HOME", CACHE_TEST_TMP "/xdg-cache-home", 1); + cache = disk_cache_create("test", "make_check", 0); + +This test fails on i686-linux. I couldn't come up with a regex that +could be used to disable it just on i686-linux, so we disable it +completely with this patch: + +https://gitlab.freedesktop.org/mesa/mesa/-/issues/4091 + +diff --git a/src/util/meson.build b/src/util/meson.build +index 0893f64..909b3e0 100644 +--- a/src/util/meson.build ++++ b/src/util/meson.build +@@ -289,18 +289,6 @@ if with_tests + suite : ['util'], + ) + +- test( +- 'u_debug_stack', +- executable( +- 'u_debug_stack_test', +- files('u_debug_stack_test.cpp'), +- include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], +- dependencies : [idep_mesautil, idep_gtest], +- c_args : [c_msvc_compat_args], +- ), +- suite : ['util'], +- ) +- + process_test_exe = executable( + 'process_test', + files('process_test.c'), -- cgit v1.2.3 From 5aeee07cc922bdc605bb6cb7c2cd365d2d42f4d6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 27 Jan 2021 15:52:58 -0500 Subject: gnu: VLC: Remove obsolete patch. * gnu/packages/patches/vlc-qt-5.15.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. * gnu/packages/video.scm (vlc)[source]: Remove patch. --- gnu/local.mk | 1 - gnu/packages/patches/vlc-qt-5.15.patch | 56 ---------------------------------- gnu/packages/video.scm | 1 - 3 files changed, 58 deletions(-) delete mode 100644 gnu/packages/patches/vlc-qt-5.15.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index f71d75135d..5590faf7d7 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1710,7 +1710,6 @@ dist_patch_DATA = \ %D%/packages/patches/vboot-utils-fix-format-load-address.patch \ %D%/packages/patches/vboot-utils-fix-tests-show-contents.patch \ %D%/packages/patches/vboot-utils-skip-test-workbuf.patch \ - %D%/packages/patches/vlc-qt-5.15.patch \ %D%/packages/patches/vigra-python-compat.patch \ %D%/packages/patches/vinagre-newer-freerdp.patch \ %D%/packages/patches/vinagre-newer-rdp-parameters.patch \ diff --git a/gnu/packages/patches/vlc-qt-5.15.patch b/gnu/packages/patches/vlc-qt-5.15.patch deleted file mode 100644 index e986a99861..0000000000 --- a/gnu/packages/patches/vlc-qt-5.15.patch +++ /dev/null @@ -1,56 +0,0 @@ -Fix build of VLC with Qt 5.15. Otherwise it fails like this: - ------- -In file included from gui/qt/util/timetooltip.moc.cpp:10:0: -gui/qt/util/timetooltip.hpp:49:18: error: field ‘mPainterPath’ has incomplete type ‘QPainterPath’ - QPainterPath mPainterPath; - ^~~~~~~~~~~~ -In file included from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtGui/qbrush.h:49:0, - from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtGui/qpalette.h:46, - from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtWidgets/qwidget.h:48, - from /gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtWidgets/QWidget:1, - from gui/qt/util/timetooltip.hpp:27, - from gui/qt/util/timetooltip.moc.cpp:10: -/gnu/store/jsxxnsdvij5mrrv6c0kj0261k0f44xlz-qtbase-5.15.2/include/qt5/QtGui/qmatrix.h:54:7: note: forward declaration of ‘class QPainterPath’ - class QPainterPath; - ^~~~~~~~~~~~ -make[4]: *** [Makefile:25852: gui/qt/util/libqt_plugin_la-timetooltip.moc.lo] Error 1 ------- - -diff --git a/modules/gui/qt/components/playlist/views.cpp b/modules/gui/qt/components/playlist/views.cpp -index 24db9d9..73c1779 100644 ---- a/modules/gui/qt/components/playlist/views.cpp -+++ b/modules/gui/qt/components/playlist/views.cpp -@@ -27,6 +27,7 @@ - #include "input_manager.hpp" /* THEMIM */ - - #include -+#include - #include - #include - #include -diff --git a/modules/gui/qt/dialogs/plugins.cpp b/modules/gui/qt/dialogs/plugins.cpp -index d233382..69728eb 100644 ---- a/modules/gui/qt/dialogs/plugins.cpp -+++ b/modules/gui/qt/dialogs/plugins.cpp -@@ -53,6 +53,7 @@ - #include - #include - #include -+#include - #include - #include - #include -diff --git a/modules/gui/qt/util/timetooltip.hpp b/modules/gui/qt/util/timetooltip.hpp -index 6a1329e..9f50b18 100644 ---- a/modules/gui/qt/util/timetooltip.hpp -+++ b/modules/gui/qt/util/timetooltip.hpp -@@ -25,6 +25,7 @@ - #include "qt.hpp" - - #include -+#include - - class TimeTooltip : public QWidget - { - diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index cebb70d28e..cd049fb375 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1773,7 +1773,6 @@ (define-public vlc "https://download.videolan.org/pub/videolan/vlc/" (car (string-split version #\-)) "/vlc-" version ".tar.xz")) - (patches (search-patches "vlc-qt-5.15.patch")) (sha256 (base32 "0ygqihw2c5vvzv8950dlf7rdwz1cpz1668jgyja604ljibrmix7g")))) -- cgit v1.2.3 From 0981f872cb1fb94fcdf3f4d00bd08c6a6b61ed8d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 31 Jan 2021 00:50:34 -0500 Subject: gnu: gst-plugins-good: Fix a test failure on 32-bit systems. * gnu/packages/patches/gst-plugins-good-fix-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gstreamer.scm (gst-plugins-good)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/gstreamer.scm | 1 + .../patches/gst-plugins-good-fix-test.patch | 94 ++++++++++++++++++++++ 3 files changed, 96 insertions(+) create mode 100644 gnu/packages/patches/gst-plugins-good-fix-test.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 5590faf7d7..29decae1d1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1128,6 +1128,7 @@ dist_patch_DATA = \ %D%/packages/patches/grub-setup-root.patch \ %D%/packages/patches/grub-verifiers-Blocklist-fallout-cleanup.patch \ %D%/packages/patches/gspell-dash-test.patch \ + %D%/packages/patches/gst-plugins-good-fix-test.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \ %D%/packages/patches/guile-2.2-skip-oom-test.patch \ %D%/packages/patches/guile-2.2-skip-so-test.patch \ diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 10d9011401..b582585d75 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -591,6 +591,7 @@ (define-public gst-plugins-good (string-append "https://gstreamer.freedesktop.org/src/" name "/" name "-" version ".tar.xz")) + (patches (search-patches "gst-plugins-good-fix-test.patch")) (sha256 (base32 "1929nhjsvbl4bw37nfagnfsnxz737cm2x3ayz9ayrn9lwkfm45zp")))) (build-system meson-build-system) diff --git a/gnu/packages/patches/gst-plugins-good-fix-test.patch b/gnu/packages/patches/gst-plugins-good-fix-test.patch new file mode 100644 index 0000000000..38ec0ba802 --- /dev/null +++ b/gnu/packages/patches/gst-plugins-good-fix-test.patch @@ -0,0 +1,94 @@ +Fix a broken test: + +https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/803 + +Patches copied from upstream source repository: + +https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/commit/2ce5909f3a0b0da3abb7b794215d6b8b72a3b7fa +https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/commit/f5310ce346180a717f091f2f09bcbb3ddfb15436 + +From 2ce5909f3a0b0da3abb7b794215d6b8b72a3b7fa Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= +Date: Thu, 12 Nov 2020 23:38:21 +0000 +Subject: [PATCH 1/2] tests: qtdemux: fix crash on 32-bit architectures + +Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/803 + +Part-of: +--- + tests/check/elements/qtdemux.c | 14 ++++++++------ + 1 file changed, 8 insertions(+), 6 deletions(-) + +diff --git a/tests/check/elements/qtdemux.c b/tests/check/elements/qtdemux.c +index 5271c6576..0c748278b 100644 +--- a/tests/check/elements/qtdemux.c ++++ b/tests/check/elements/qtdemux.c +@@ -797,9 +797,10 @@ GST_START_TEST (test_qtdemux_pad_names) + "protection-system", G_TYPE_STRING, + "9a04f079-9840-4286-ab92-e65be0885f95", NULL); + caps = +- gst_caps_new_simple ("video/quicktime", "variant", G_TYPE_STRING, +- "mss-fragmented", "timesacle", G_TYPE_UINT64, 10000000, "media-caps", +- GST_TYPE_CAPS, mediacaps, NULL); ++ gst_caps_new_simple ("video/quicktime", ++ "variant", G_TYPE_STRING, "mss-fragmented", ++ "timesacle", G_TYPE_UINT64, G_GUINT64_CONSTANT (10000000), ++ "media-caps", GST_TYPE_CAPS, mediacaps, NULL); + + /* Send segment event* */ + event = gst_event_new_caps (caps); +@@ -852,9 +853,10 @@ GST_START_TEST (test_qtdemux_pad_names) + "protection-system", G_TYPE_STRING, + "9a04f079-9840-4286-ab92-e65be0885f95", NULL); + caps = +- gst_caps_new_simple ("video/quicktime", "variant", G_TYPE_STRING, +- "mss-fragmented", "timesacle", G_TYPE_UINT64, 10000000, "media-caps", +- GST_TYPE_CAPS, mediacaps, NULL); ++ gst_caps_new_simple ("video/quicktime", ++ "variant", G_TYPE_STRING, "mss-fragmented", ++ "timesacle", G_TYPE_UINT64, G_GUINT64_CONSTANT (10000000), ++ "media-caps", GST_TYPE_CAPS, mediacaps, NULL); + + /* Send segment event* */ + event = gst_event_new_caps (caps); +-- +2.30.0 + + +From f5310ce346180a717f091f2f09bcbb3ddfb15436 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= +Date: Thu, 12 Nov 2020 23:39:21 +0000 +Subject: [PATCH 2/2] tests: qtdemux: fix typo in caps field + +timesacle -> timescale + +Part-of: +--- + tests/check/elements/qtdemux.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/check/elements/qtdemux.c b/tests/check/elements/qtdemux.c +index 0c748278b..4a14c45c0 100644 +--- a/tests/check/elements/qtdemux.c ++++ b/tests/check/elements/qtdemux.c +@@ -799,7 +799,7 @@ GST_START_TEST (test_qtdemux_pad_names) + caps = + gst_caps_new_simple ("video/quicktime", + "variant", G_TYPE_STRING, "mss-fragmented", +- "timesacle", G_TYPE_UINT64, G_GUINT64_CONSTANT (10000000), ++ "timescale", G_TYPE_UINT64, G_GUINT64_CONSTANT (10000000), + "media-caps", GST_TYPE_CAPS, mediacaps, NULL); + + /* Send segment event* */ +@@ -855,7 +855,7 @@ GST_START_TEST (test_qtdemux_pad_names) + caps = + gst_caps_new_simple ("video/quicktime", + "variant", G_TYPE_STRING, "mss-fragmented", +- "timesacle", G_TYPE_UINT64, G_GUINT64_CONSTANT (10000000), ++ "timescale", G_TYPE_UINT64, G_GUINT64_CONSTANT (10000000), + "media-caps", GST_TYPE_CAPS, mediacaps, NULL); + + /* Send segment event* */ +-- +2.30.0 + -- cgit v1.2.3