guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

37/52: gnu: jami: Update to 20240325.0.


From: guix-commits
Subject: 37/52: gnu: jami: Update to 20240325.0.
Date: Sat, 30 Mar 2024 20:41:45 -0400 (EDT)

apteryx pushed a commit to branch qt-team
in repository guix.

commit 3da2f55ed28790ddeae1c2ba4cc6754e88098310
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Tue Mar 26 16:44:05 2024 -0400

    gnu: jami: Update to 20240325.0.
    
    * gnu/packages/jami.scm
    (libjami): Update to 20240325.0.
    [make-flags]: Reinstate ut_media_player test.
    [phases]: Remove obsolete extend-scheduler-test-timeout phase.
    (jami): Update to 20240325.0.
    [source]: Remove jami-qml-tests-discovery patch.  Add jami-qwindowkit and
    jami-tests-qtwebengine-ifdef-to-if patches.
    [configure-flags]: Add -DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=ALWAYS.
    Replace -DENABLE_TESTS=ON with -DBUILD_TESTING=ON.
    [phases] <check>: Update comment for QML test suite.
    [native-inputs]: Add qthttpserver and qtwebsockets.
    [inputs]: Add qwindowkit.
    * gnu/packages/patches/jami-qml-tests-discovery.patch: Delete file.
    * gnu/packages/patches/jami-unbundle-dependencies.patch: Update patch.
    * gnu/packages/patches/jami-qwindowkit.patch: New file.
    * gnu/packages/patches/jami-tests-qtwebengine-ifdef-to-if.patch: Likewise.
    * gnu/local.mk (dist_patch_DATA): Update accordingly.
    
    Change-Id: I5d47bdfd2aabab5baff44db8436051a9890cba6d
---
 gnu/local.mk                                       |  3 +-
 gnu/packages/jami.scm                              | 39 ++++++++++------------
 .../patches/jami-qml-tests-discovery.patch         | 15 ---------
 gnu/packages/patches/jami-qwindowkit.patch         | 37 ++++++++++++++++++++
 .../jami-tests-qtwebengine-ifdef-to-if.patch       | 26 +++++++++++++++
 .../patches/jami-unbundle-dependencies.patch       |  6 ++--
 6 files changed, 86 insertions(+), 40 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 38ecfd62d8..0db5615c1f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1494,8 +1494,9 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/itk-snap-alt-glibc-compat.patch         \
   %D%/packages/patches/jami-disable-integration-tests.patch    \
   %D%/packages/patches/jami-libjami-headers-search.patch       \
-  %D%/packages/patches/jami-qml-tests-discovery.patch          \
+  %D%/packages/patches/jami-qwindowkit.patch                   \
   %D%/packages/patches/jami-skip-tests-requiring-internet.patch        \
+  %D%/packages/patches/jami-tests-qtwebengine-ifdef-to-if.patch        \
   %D%/packages/patches/jami-unbundle-dependencies.patch                \
   %D%/packages/patches/jamvm-1.5.1-aarch64-support.patch       \
   %D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
diff --git a/gnu/packages/jami.scm b/gnu/packages/jami.scm
index bae9ede8e0..81c9a3d3c2 100644
--- a/gnu/packages/jami.scm
+++ b/gnu/packages/jami.scm
@@ -78,8 +78,8 @@
 ;;; When updating Jami, make sure that the patches used for ffmpeg-jami are up
 ;;; to date with those listed in
 ;;; 
<https://review.jami.net/plugins/gitiles/jami-daemon/+/refs/heads/master/contrib/src/ffmpeg/rules.mak>.
-(define %jami-nightly-version "20240124.3")
-(define %jami-daemon-commit "205904ed4dd736b8a0ea6c913ecb91d637b79867")
+(define %jami-nightly-version "20240325.0")
+(define %jami-daemon-commit "32f39e65483cb22729eb922d72434013b337f2c9")
 
 (define-public libjami
   (package
@@ -93,7 +93,7 @@
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0knq84c5f11bgan0076mhi0kpc7l6wwxj41jpssdy0y1lfzgqd8a"))
+                "0kha2v46l5hmycklhyxrs2qybm640nbrk98z1xvicjxyq6bfszh4"))
               (patches (search-patches
                         "libjami-ac-config-files.patch"
                         "jami-disable-integration-tests.patch"))))
@@ -106,25 +106,13 @@
       ;; user scripts too, until more general purpose Scheme bindings are made
       ;; available (see: test/agent/README.md).
       #:configure-flags #~(list "--enable-agent" "--enable-debug")
-      #:make-flags
-      #~(list
-         "V=1"                 ;build verbosely
-         ;; The 'ut_media_player' is known to fail (see:
-         ;; https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/935).
-         "XFAIL_TESTS=ut_media_player")
+      #:make-flags #~(list"V=1")        ;build verbosely
       #:phases
       #~(modify-phases %standard-phases
           (add-after 'unpack 'change-directory/maybe
             (lambda _
               ;; Allow building from the tarball or a git checkout.
               (false-if-exception (chdir "daemon"))))
-          (add-after 'change-directory/maybe 'extend-scheduler-test-timeout
-            (lambda _
-              ;; The ut_scheduler unit test may fail on slower machines (see:
-              ;; 
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/939).
-              (substitute* "test/unitTest/scheduler.cpp"
-                (("std::chrono::seconds\\(3)")
-                 "std::chrono::seconds(30)"))))
           (add-after 'install 'delete-static-libraries
             ;; Remove 100+ MiB of static libraries.  "--disable-static" cannot
             ;; be used as the test suite requires access to private symbols
@@ -239,11 +227,12 @@ QSortFilterProxyModel conveniently exposed for QML.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "06q4cdizpix12yzjrnhdwqwybskhc58cissffdnf1zw5pbv0mqag"))
+                "08lv8azjd47n56i25d9ax248xmidixpsnwh5kc4qjxib7985bdhs"))
               (patches (search-patches
                         "jami-libjami-headers-search.patch"
-                        "jami-qml-tests-discovery.patch"
+                        "jami-qwindowkit.patch"
                         "jami-skip-tests-requiring-internet.patch"
+                        "jami-tests-qtwebengine-ifdef-to-if.patch"
                         "jami-unbundle-dependencies.patch"))))
     (build-system qt-build-system)
     (outputs '("out" "debug"))
@@ -252,13 +241,15 @@ QSortFilterProxyModel conveniently exposed for QML.")
       #:qtbase qtbase
       #:configure-flags
       #~(list "-DWITH_DAEMON_SUBMODULE=OFF"
-              "-DENABLE_TESTS=ON"
+              "-DBUILD_TESTING=ON"
               ;; Disable the webengine since it grows the closure size by
               ;; about 450 MiB and requires more resources.
               "-DWITH_WEBENGINE=OFF"
               ;; Use libwrap to link directly to libjami instead of
               ;; communicating via D-Bus to jamid, the Jami daemon.
-              "-DENABLE_LIBWRAP=ON")
+              "-DENABLE_LIBWRAP=ON"
+              ;; Ensure FetchContent contribs are looked from the system.
+              "-DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=ALWAYS")
       #:phases
       #~(modify-phases %standard-phases
           (add-after 'unpack 'fix-version-string
@@ -292,8 +283,9 @@ QSortFilterProxyModel conveniently exposed for QML.")
                 (display "Running unit tests...\n")
                 (invoke "tests/unit_tests")
 
-                ;; XXX: The QML test suite fails, exiting with status code 1 
(see:
-                ;; 
https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/883).
+                ;; The qml_tests suite is not run, as it currently exits with
+                ;; an unclear status of 1 (see:
+                ;; 
https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1605).
                 ;; (display "Running functional tests...\n")
                 ;; (invoke "tests/qml_tests")
                 ))))))
@@ -301,7 +293,9 @@ QSortFilterProxyModel conveniently exposed for QML.")
      (list googletest
            pkg-config
            python
+           qthttpserver
            qttools
+           qtwebsockets
            vulkan-headers))
     (inputs
      (list ffmpeg-jami
@@ -319,6 +313,7 @@ QSortFilterProxyModel conveniently exposed for QML.")
            qtnetworkauth
            qtpositioning
            qtsvg
+           qwindowkit
            tidy-html                    ;used by src/app/htmlparser.h
            vulkan-loader))
     (home-page "https://jami.net";)
diff --git a/gnu/packages/patches/jami-qml-tests-discovery.patch 
b/gnu/packages/patches/jami-qml-tests-discovery.patch
deleted file mode 100644
index 11fd69571c..0000000000
--- a/gnu/packages/patches/jami-qml-tests-discovery.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream status: https://review.jami.net/c/jami-client-qt/+/25640
-
-diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
-index d50908cf..587c9d15 100644
---- a/tests/CMakeLists.txt
-+++ b/tests/CMakeLists.txt
-@@ -73,6 +73,8 @@ endif()
- 
- string(TOUPPER ${CMAKE_BUILD_TYPE} BUILD_TYPE)
- 
-+set(QUICK_TEST_SOURCE_DIR "${CMAKE_SOURCE_DIR}tests/qml/src")
-+
- set(QML_TESTS_SOURCE_FILES
-     ${CMAKE_SOURCE_DIR}/tests/qml/main.cpp
-     ${TEST_QML_RESOURCES}
diff --git a/gnu/packages/patches/jami-qwindowkit.patch 
b/gnu/packages/patches/jami-qwindowkit.patch
new file mode 100644
index 0000000000..65248a6940
--- /dev/null
+++ b/gnu/packages/patches/jami-qwindowkit.patch
@@ -0,0 +1,37 @@
+Upstream-status: https://lists.gnu.org/archive/html/jami/2024-03/msg00008.html
+
+This makes it possible to use the system-provided qwindowkit library.
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6d2dccfb..8dedff50 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -100,13 +100,13 @@ endif()
+ 
+ # qwindowkit (frameless window)
+ add_fetch_content(
+-  TARGET qwindowkit
++  TARGET QWindowKit
+   URL https://github.com/stdware/qwindowkit.git
+   BRANCH 79b1f3110754f9c21af2d7dacbd07b1a9dbaf6ef
+   PATCHES ${QWINDOWKIT_PATCHES}
+   OPTIONS ${QWINDOWKIT_OPTIONS}
+ )
+-list(APPEND CLIENT_INCLUDE_DIRS ${QWindowKit_BINARY_DIR}/include)
++
+ list(APPEND CLIENT_LIBS QWindowKit::Quick)
+ 
+ set(CMAKE_AUTOMOC ON)
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index b2730b71..4960899e 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -48,7 +48,7 @@ target_include_directories(test_common_obj PRIVATE
+     ${CMAKE_CURRENT_SOURCE_DIR}
+     ${CMAKE_SOURCE_DIR}/src)
+ target_link_directories(test_common_obj PRIVATE ${CLIENT_LINK_DIRS})
+-target_link_libraries(test_common_obj ${QML_TEST_LIBS})
++target_link_libraries(test_common_obj ${QML_TEST_LIBS} ${CLIENT_LIBS})
+ target_compile_definitions(test_common_obj PRIVATE BUILD_TESTING="ON")
+ 
+ set(COMMON_TESTS_SOURCES
diff --git a/gnu/packages/patches/jami-tests-qtwebengine-ifdef-to-if.patch 
b/gnu/packages/patches/jami-tests-qtwebengine-ifdef-to-if.patch
new file mode 100644
index 0000000000..63bfde6af0
--- /dev/null
+++ b/gnu/packages/patches/jami-tests-qtwebengine-ifdef-to-if.patch
@@ -0,0 +1,26 @@
+Upstream-status: https://lists.gnu.org/archive/html/jami/2024-03/msg00005.html
+
+Fix macro value checking.
+
+diff --git a/tests/qml/main.cpp b/tests/qml/main.cpp
+index 2fbecebe..8cb3de69 100644
+--- a/tests/qml/main.cpp
++++ b/tests/qml/main.cpp
+@@ -35,7 +35,7 @@
+ #include <QtQuickTest/quicktest.h>
+ #include <QSignalSpy>
+ 
+-#ifdef WITH_WEBENGINE
++#if WITH_WEBENGINE
+ #include <QtWebEngineCore>
+ #include <QtWebEngineQuick>
+ #endif
+@@ -192,7 +192,7 @@ main(int argc, char** argv)
+     // Allow the user to enable fatal warnings for certain tests.
+     Utils::remove_argument(argv, argc, "--failonwarn", [&]() { 
qputenv("QT_FATAL_WARNINGS", "1"); });
+ 
+-#ifdef WITH_WEBENGINE
++#if WITH_WEBENGINE
+     QtWebEngineQuick::initialize();
+ #endif
+     QTEST_SET_MAIN_SOURCE_PATH
diff --git a/gnu/packages/patches/jami-unbundle-dependencies.patch 
b/gnu/packages/patches/jami-unbundle-dependencies.patch
index dab82b26cb..2732087daf 100644
--- a/gnu/packages/patches/jami-unbundle-dependencies.patch
+++ b/gnu/packages/patches/jami-unbundle-dependencies.patch
@@ -16,13 +16,14 @@ Change-Id: I637959fefce6a21b0ee73a793acb6c3c42dcdce0
  1 file changed, 25 insertions(+), 11 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 38e7a4e2..3f1bd599 100644
+index e802357f..6d2dccfb 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -545,19 +545,33 @@ add_subdirectory(3rdparty/SortFilterProxyModel)
+@@ -600,20 +600,34 @@ add_subdirectory(3rdparty/SortFilterProxyModel)
  set(SFPM_OBJECTS $<TARGET_OBJECTS:SortFilterProxyModel>)
  
  # md4c
+-set(BUILD_MD2HTML_EXECUTABLE OFF CACHE BOOL "Don't build md2html executable" 
FORCE)
 -set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE)
 -add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL)
 -list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src)
@@ -34,6 +35,7 @@ index 38e7a4e2..3f1bd599 100644
 +  list(APPEND CLIENT_LIBS md4c::md4c-html)
 +else()
 +  message("Using bundled md4c-html library")
++  set(BUILD_MD2HTML_EXECUTABLE OFF CACHE BOOL "Don't build md2html 
executable" FORCE)
 +  set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" 
FORCE)
 +  add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL)
 +  list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]