From 1792a70655507625cbe654a0eec1428f210d2fd3 Mon Sep 17 00:00:00 2001 From: Brett Gilio Date: Sun, 5 Jan 2020 19:31:07 -0600 Subject: gnu: libtgvoip: Fix failing build on i686-linux. * gnu/local.mk (libtgvoip): Add patches for libtgvoip-disable-sse2.patch and libtgvoip-disable-webrtc.patch * gnu/packages/patches/libtgvoip-disable-sse2.patch: New file. * gnu/packages/patches/libtgvoip-disable-webrtc.patch: New file. * gnu/packages/telephony.scm (libtgvoip): Fix building on i686-linux. [source]: Reference patches for correcting failing build on i686-linux architecture. Reported-by: Diego Nicola Barbato Fixes . --- gnu/packages/patches/libtgvoip-disable-sse2.patch | 51 ++++++++++++++++++++++ .../patches/libtgvoip-disable-webrtc.patch | 47 ++++++++++++++++++++ gnu/packages/telephony.scm | 6 +++ 3 files changed, 104 insertions(+) create mode 100644 gnu/packages/patches/libtgvoip-disable-sse2.patch create mode 100644 gnu/packages/patches/libtgvoip-disable-webrtc.patch (limited to 'gnu/packages') diff --git a/gnu/packages/patches/libtgvoip-disable-sse2.patch b/gnu/packages/patches/libtgvoip-disable-sse2.patch new file mode 100644 index 0000000000..0e4faeab26 --- /dev/null +++ b/gnu/packages/patches/libtgvoip-disable-sse2.patch @@ -0,0 +1,51 @@ +Copied from Debian. + +Description: Disable SSE2 code on i386 + This patch is not complete. A high-graded solution may use automatic switching + between SSE2 and C++ implementations based on the results of runtime checks. + The webrtc code already provides for one of them inside its GetCPUInfo function. +Bug-Debian: https://bugs.debian.org/892823 +Author: Nicholas Guriev +Last-Update: Tue, 29 Jan 2019 23:26:38 +0300 + +--- a/libtgvoip.gyp ++++ b/libtgvoip.gyp +@@ -871,11 +871,7 @@ + 'WEBRTC_POSIX', + ], + 'conditions': [ +- [ '" +Last-Update: Tue, 29 Jan 2019 23:26:44 +0300 + +--- a/libtgvoip.gyp ++++ b/libtgvoip.gyp +@@ -869,20 +869,18 @@ + '"<(OS)" == "linux"', { + 'defines': [ + 'WEBRTC_POSIX', +- 'WEBRTC_LINUX', + ], + 'conditions': [ + [ '"(pthread_self()); ++ return static_cast(pthread_self()); + #endif + #endif // defined(WEBRTC_POSIX) + } diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 11eeeedce4..8e7384bf85 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -960,6 +960,12 @@ (define-public libtgvoip (url "https://github.com/grishka/libtgvoip.git") (commit version))) (file-name (git-file-name name version)) + ;; Fix compilation on i686-linux architecture. + ;; NOTE: Applying these patches is order-dependent! + ;; The patch for WebRTC /must/ precede the patch for SSE2. + (patches + (search-patches "libtgvoip-disable-webrtc.patch" + "libtgvoip-disable-sse2.patch")) (sha256 (base32 "122kn3jx6v0kkldlzlpzvlwqxgp6pmzxsjhrhcxw12bx9c08sar5")))) -- cgit v1.2.3