[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
04/04: gnu: lcsync: Fix building on non-x86 hardware.
From: |
guix-commits |
Subject: |
04/04: gnu: lcsync: Fix building on non-x86 hardware. |
Date: |
Thu, 11 Aug 2022 12:37:40 -0400 (EDT) |
efraim pushed a commit to branch master
in repository guix.
commit 0f6dc5478063e0f48bfc58fe4db99f17e495991d
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Thu Aug 11 19:34:01 2022 +0300
gnu: lcsync: Fix building on non-x86 hardware.
* gnu/packages/networking.scm (lcsync)[arguments]: Add phase to use
simde instead of immintrin.h directly.
[native-inputs]: Add simde.
---
gnu/packages/networking.scm | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 8c5ef72f7f..21c9014cfe 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -89,6 +89,7 @@
#:use-module (gnu packages audio)
#:use-module (gnu packages autogen)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages assembly)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
@@ -304,6 +305,17 @@ the RFC.")
(delete-file "./test/0000-0027.c")
(delete-file "./test/0000-0049.c")
(delete-file "./test/0000-0074.c")))
+ (add-after 'unpack 'remove-immintrin.h
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "Makefile"
+ (("CFLAGS :=")
+ (string-append "CFLAGS := -I" (search-input-directory
+ inputs
"include/simde"))))
+ (substitute* (find-files "src")
+ ((".*immintrin\\.h.*")
+ (string-append "#include <simde-features.h>\n"
+ "#include <x86/ssse3.h>\n"))
+ (("__m128i") "simde__m128i"))))
(add-before 'build 'add-library-paths
(lambda* (#:key inputs #:allow-other-keys)
(let* ((librecast (assoc-ref inputs "librecast")))
@@ -311,6 +323,7 @@ the RFC.")
(("-llibrecast")
(string-append "-L" librecast "/lib
-llibrecast")))))))))
(inputs (list librecast libsodium))
+ (native-inputs (list simde))
(home-page "https://librecast.net/lcsync.html")
(synopsis "librecast file and data syncing tool")
(description