package/libdeflate: fix build with arm soft float
Fix the following build failure with arm soft float raised since bump to version 1.15 in commitc31087182f
and84c76f6f2c
: In file included from /home/autobuild/autobuild/instance-3/output-1/build/libdeflate-1.15/lib/arm/crc32_impl.h:256, from /home/autobuild/autobuild/instance-3/output-1/build/libdeflate-1.15/lib/crc32.c:227: /home/autobuild/autobuild/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabi/11.3.0/include/arm_neon.h:31:2: error: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softfp or -mfloat-abi=hard" 31 | #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softfp or -mfloat-abi=hard" | ^~~~~ In file included from /home/autobuild/autobuild/instance-3/output-1/build/libdeflate-1.15/lib/crc32.c:227: /home/autobuild/autobuild/instance-3/output-1/build/libdeflate-1.15/lib/arm/crc32_impl.h: In function 'clmul_u32': /home/autobuild/autobuild/instance-3/output-1/build/libdeflate-1.15/lib/arm/crc32_impl.h:262:9: error: unknown type name 'uint64x2_t'; did you mean 'uint16x2_t'? 262 | uint64x2_t res = vreinterpretq_u64_p128( | ^~~~~~~~~~ | uint16x2_t Fixes: - http://autobuild.buildroot.org/results/1445dcbf676893133f311a92ac21b29237fb75df Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
83b2e53dcd
commit
c181878a84
@ -0,0 +1,35 @@
|
||||
From 079a6dd171583c1953017b703ec63c5367a284b4 Mon Sep 17 00:00:00 2001
|
||||
From: Eric Biggers <ebiggers3@gmail.com>
|
||||
Date: Mon, 26 Dec 2022 11:32:47 -0800
|
||||
Subject: [PATCH] lib/arm/cpu_features: fix build error due to PMULL enabled
|
||||
without NEON
|
||||
|
||||
When building for soft float arm32, HAVE_PMULL_INTRIN is being set when
|
||||
it shouldn't be, causing a build error:
|
||||
|
||||
#error "NEON intrinsics not available with the soft-float ABI..."
|
||||
|
||||
Fix this by making HAVE_PMULL_INTRIN depend on HAVE_NEON_INTRIN, as used
|
||||
to be the case, in order to get the 'defined(__ARM_FP)' dependency,
|
||||
|
||||
Fixes https://github.com/ebiggers/libdeflate/issues/282
|
||||
Fixes: 84c76f6f2cf5 ("lib/arm: make crc32 code work with MSVC")
|
||||
[Retrieved from:
|
||||
https://github.com/ebiggers/libdeflate/commit/079a6dd171583c1953017b703ec63c5367a284b4]
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
---
|
||||
lib/arm/cpu_features.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/lib/arm/cpu_features.h b/lib/arm/cpu_features.h
|
||||
index 4092eba8..edcf7359 100644
|
||||
--- a/lib/arm/cpu_features.h
|
||||
+++ b/lib/arm/cpu_features.h
|
||||
@@ -97,6 +97,7 @@ static inline u32 get_arm_cpu_features(void) { return 0; }
|
||||
#endif
|
||||
#if HAVE_PMULL_NATIVE || \
|
||||
(HAVE_DYNAMIC_ARM_CPU_FEATURES && \
|
||||
+ HAVE_NEON_INTRIN /* needed to exclude soft float arm32 case */ && \
|
||||
(GCC_PREREQ(6, 1) || __has_builtin(__builtin_neon_vmull_p64) || \
|
||||
defined(_MSC_VER)) && \
|
||||
/*
|
Loading…
Reference in New Issue
Block a user