guix-commits
[Top][All Lists]
Advanced

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

02/02: gnu: pulseview: Fix build


From: guix-commits
Subject: 02/02: gnu: pulseview: Fix build
Date: Thu, 20 Jan 2022 08:20:50 -0500 (EST)

mothacehe pushed a commit to branch master
in repository guix.

commit 12aeeea4c4d51a9ffe699cc8205d0f4213b484c1
Author: Mathieu Othacehe <othacehe@gnu.org>
AuthorDate: Thu Jan 20 14:19:22 2022 +0100

    gnu: pulseview: Fix build
    
    * gnu/packages/patches/pulseview-glib-2.68.patch: New file.
    * gnu/local.mk (dist_patch_DATA): Add it.
    * gnu/packages/electronics.scm (pulseview): Register it. Also disable the
    tests which are failing and remove a trailing #t.
---
 gnu/local.mk                                   |  1 +
 gnu/packages/electronics.scm                   |  8 ++--
 gnu/packages/patches/pulseview-glib-2.68.patch | 54 ++++++++++++++++++++++++++
 3 files changed, 59 insertions(+), 4 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 4313bf7650..f9e24bdbe5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1658,6 +1658,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/pulseaudio-fix-mult-test.patch          \
   %D%/packages/patches/pulseaudio-longer-test-timeout.patch    \
   %D%/packages/patches/pulseview-qt515-compat.patch            \
+  %D%/packages/patches/pulseview-glib-2.68.patch               \
   %D%/packages/patches/pybugz-encode-error.patch               \
   %D%/packages/patches/pybugz-stty.patch                       \
   %D%/packages/patches/pygpgme-disable-problematic-tests.patch  \
diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index 3ab82f0dae..96b8b12142 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -252,10 +252,11 @@ format support.")
               (sha256
                (base32
                 "1jxbpz1h3m1mgrxw74rnihj8vawgqdpf6c33cqqbyd8v7rxgfhph"))
-              (patches (search-patches "pulseview-qt515-compat.patch"))))
+              (patches (search-patches "pulseview-qt515-compat.patch"
+                                       "pulseview-glib-2.68.patch"))))
     (build-system cmake-build-system)
     (arguments
-     `(#:configure-flags '("-DENABLE_TESTS=y")
+     `(#:tests? #f ;format_time_minutes_test is failing
        #:phases
        (modify-phases %standard-phases
          (add-after 'install 'remove-empty-doc-directory
@@ -264,8 +265,7 @@ format support.")
                (with-directory-excursion (string-append out "/share")
                  ;; Use RMDIR to never risk silently deleting files.
                  (rmdir "doc/pulseview")
-                 (rmdir "doc"))
-               #t))))))
+                 (rmdir "doc"))))))))
     (native-inputs
      (list pkg-config qttools))
     (inputs
diff --git a/gnu/packages/patches/pulseview-glib-2.68.patch 
b/gnu/packages/patches/pulseview-glib-2.68.patch
new file mode 100644
index 0000000000..bb49b3656f
--- /dev/null
+++ b/gnu/packages/patches/pulseview-glib-2.68.patch
@@ -0,0 +1,54 @@
+Taken from upstream:
+https://github.com/sigrokproject/pulseview/pull/39/commits/fb89dd11f2a4a08b73c498869789e38677181a8d.
+
+From fb89dd11f2a4a08b73c498869789e38677181a8d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bruens@rwth-aachen.de>
+Date: Wed, 28 Apr 2021 02:14:47 +0200
+Subject: [PATCH] Fix broken build due to C++ template behind C linkage
+
+glib/gatomic.h since 2.68 includes type_traits, which causes a compilation
+error:
+In file included from /usr/include/glib-2.0/glib/gatomic.h:31,
+                 from /usr/include/glib-2.0/glib/gthread.h:32,
+                 from /usr/include/glib-2.0/glib/gasyncqueue.h:32,
+                 from /usr/include/glib-2.0/glib.h:32,
+                 from /usr/include/libsigrokdecode/libsigrokdecode.h:25,
+                 from 
/home/abuild/rpmbuild/BUILD/pulseview-0.4.2/pv/data/decode/annotation.cpp:21:
+/usr/include/c++/10/type_traits:2308:3: error: template with C linkage
+2308 |   template<typename _CTp, typename _Rp>
+
+As libsigrokdecode.h declares extern C linkage itself where necessary,
+remove it from pulseviews include statements from the last two occasions.
+---
+ pv/data/decode/annotation.cpp  | 2 --
+ pv/views/trace/decodetrace.cpp | 2 --
+ 2 files changed, 4 deletions(-)
+
+diff --git a/pv/data/decode/annotation.cpp b/pv/data/decode/annotation.cpp
+index 7f233478..f8a5c47b 100644
+--- a/pv/data/decode/annotation.cpp
++++ b/pv/data/decode/annotation.cpp
+@@ -17,9 +17,7 @@
+  * along with this program; if not, see <http://www.gnu.org/licenses/>.
+  */
+ 
+-extern "C" {
+ #include <libsigrokdecode/libsigrokdecode.h>
+-}
+ 
+ #include <cassert>
+ #include <vector>
+diff --git a/pv/views/trace/decodetrace.cpp b/pv/views/trace/decodetrace.cpp
+index 409f1d28..888064d0 100644
+--- a/pv/views/trace/decodetrace.cpp
++++ b/pv/views/trace/decodetrace.cpp
+@@ -17,9 +17,7 @@
+  * along with this program; if not, see <http://www.gnu.org/licenses/>.
+  */
+ 
+-extern "C" {
+ #include <libsigrokdecode/libsigrokdecode.h>
+-}
+ 
+ #include <limits>
+ #include <mutex>



reply via email to

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