Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Jan 2025 12:25:14 GMT
From:      Robert Clausecker <fuz@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: af603fd69c6b - main - audio/sfizz: fix build on aarch64 / armv7
Message-ID:  <202501011225.501CPEUL090193@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=af603fd69c6b2846915f7e355f08b5fec891ac3f

commit af603fd69c6b2846915f7e355f08b5fec891ac3f
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2024-12-29 13:18:41 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2025-01-01 12:24:55 +0000

    audio/sfizz: fix build on aarch64 / armv7
    
    Add code path for querying the ELF aux vectors on FreeBSD.
    
    Approved by:    portmgr (build fix blanket)
    MFH:            2024Q4
    Event:          38C3
---
 audio/sfizz/Makefile                               |  2 --
 ...puid_src_cpuid_detail_init__linux__gcc__arm.hpp | 28 ++++++++++++++++++++++
 2 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/audio/sfizz/Makefile b/audio/sfizz/Makefile
index e53583c195d0..094ae7cb05fd 100644
--- a/audio/sfizz/Makefile
+++ b/audio/sfizz/Makefile
@@ -9,8 +9,6 @@ WWW=		https://sfz.tools/sfizz/
 LICENSE=	BSD2CLAUSE
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-BROKEN_aarch64=	compilation fails: fatal error: 'linux/auxvec.h' file not found, see https://github.com/steinwurf/cpuid/issues/65
-
 LIB_DEPENDS=	libabsl_hash.so:devel/abseil
 RUN_DEPENDS=	zenity:x11/zenity
 
diff --git a/audio/sfizz/files/patch-src_external_cpuid_src_cpuid_detail_init__linux__gcc__arm.hpp b/audio/sfizz/files/patch-src_external_cpuid_src_cpuid_detail_init__linux__gcc__arm.hpp
new file mode 100644
index 000000000000..2998fa8fce25
--- /dev/null
+++ b/audio/sfizz/files/patch-src_external_cpuid_src_cpuid_detail_init__linux__gcc__arm.hpp
@@ -0,0 +1,28 @@
+--- src/external/cpuid/src/cpuid/detail/init_linux_gcc_arm.hpp.orig	2024-12-29 13:01:01 UTC
++++ src/external/cpuid/src/cpuid/detail/init_linux_gcc_arm.hpp
+@@ -11,7 +11,11 @@
+ 
+ #include <elf.h>
+ #include <fcntl.h>
++#ifdef __FreeBSD__
++#include <sys/auxv.h>
++#else
+ #include <linux/auxvec.h>
++#endif
+ #include <unistd.h>
+ 
+ #include "cpuinfo_impl.hpp"
+@@ -28,6 +32,13 @@ void init_cpuinfo(cpuinfo::impl& info)
+     // (64-bit ARM). Note that /proc/cpuinfo will display "asimd" instead of
+     // "neon" in the Features list on a 64-bit ARM CPU.
+     info.m_has_neon = true;
++#elif defined(__FreeBSD__)
++    // armv7 FreeBSD
++    long hwcap = 0;
++
++    elf_aux_info(AT_HWCAP, &hwcap, sizeof hwcap);
++
++    info.m_has_neon = hwcap & HWCAP_NEON;
+ #else
+     // Runtime detection of NEON is necessary on 32-bit ARM CPUs
+     //



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202501011225.501CPEUL090193>