From 12aeeea4c4d51a9ffe699cc8205d0f4213b484c1 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 20 Jan 2022 14:19:22 +0100 Subject: 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(-) create mode 100644 gnu/packages/patches/pulseview-glib-2.68.patch (limited to 'gnu') 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?= +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 + +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 . + */ + +-extern "C" { + #include +-} + + #include + #include +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 . + */ + +-extern "C" { + #include +-} + + #include + #include -- cgit v1.2.3