shells/starship: fix build on powerpc64le
This commit is contained in:
parent
4b3e565f38
commit
6affa4a86b
@ -0,0 +1,11 @@
|
||||
--- cargo-crates/libz-ng-sys-1.1.8/src/zlib-ng/arch/power/chunkset_power8.c.orig 2022-12-29 16:08:43 UTC
|
||||
+++ cargo-crates/libz-ng-sys-1.1.8/src/zlib-ng/arch/power/chunkset_power8.c
|
||||
@@ -27,7 +27,7 @@ static inline void chunkmemset_4(uint8_t *from, chunk_
|
||||
}
|
||||
|
||||
static inline void chunkmemset_8(uint8_t *from, chunk_t *chunk) {
|
||||
- uint64_t tmp;
|
||||
+ unsigned long long tmp;
|
||||
zmemcpy_8(&tmp, from);
|
||||
*chunk = (vector unsigned char)vec_splats(tmp);
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
--- cargo-crates/libz-ng-sys-1.1.8/src/zlib-ng/arch/power/power_features.c.orig 1973-11-29 21:33:09 UTC
|
||||
+++ cargo-crates/libz-ng-sys-1.1.8/src/zlib-ng/arch/power/power_features.c
|
||||
@@ -7,6 +7,9 @@
|
||||
#ifdef HAVE_SYS_AUXV_H
|
||||
# include <sys/auxv.h>
|
||||
#endif
|
||||
+#ifdef __FreeBSD__
|
||||
+#include <machine/cpu.h>
|
||||
+#endif
|
||||
#include "../../zbuild.h"
|
||||
#include "power_features.h"
|
||||
|
||||
@@ -17,7 +20,11 @@ Z_INTERNAL int power_cpu_has_arch_3_00 = 0;
|
||||
void Z_INTERNAL power_check_features(void) {
|
||||
#ifdef PPC_FEATURES
|
||||
unsigned long hwcap;
|
||||
+#ifdef __FreeBSD__
|
||||
+ elf_aux_info(AT_HWCAP, &hwcap, sizeof(hwcap));
|
||||
+#else
|
||||
hwcap = getauxval(AT_HWCAP);
|
||||
+#endif
|
||||
|
||||
if (hwcap & PPC_FEATURE_HAS_ALTIVEC)
|
||||
power_cpu_has_altivec = 1;
|
||||
@@ -25,7 +32,11 @@ void Z_INTERNAL power_check_features(void) {
|
||||
|
||||
#ifdef POWER_FEATURES
|
||||
unsigned long hwcap2;
|
||||
+#ifdef __FreeBSD__
|
||||
+ elf_aux_info(AT_HWCAP2, &hwcap2, sizeof(hwcap2));
|
||||
+#else
|
||||
hwcap2 = getauxval(AT_HWCAP2);
|
||||
+#endif
|
||||
|
||||
if (hwcap2 & PPC_FEATURE2_ARCH_2_07)
|
||||
power_cpu_has_arch_2_07 = 1;
|
@ -0,0 +1,38 @@
|
||||
--- cargo-crates/libz-ng-sys-1.1.8/src/zlib-ng/cmake/detect-intrinsics.cmake.orig 1973-11-29 21:33:09 UTC
|
||||
+++ cargo-crates/libz-ng-sys-1.1.8/src/zlib-ng/cmake/detect-intrinsics.cmake
|
||||
@@ -280,8 +280,17 @@ macro(check_ppc_intrinsics)
|
||||
set(CMAKE_REQUIRED_FLAGS "${PPCFLAGS} ${NATIVEFLAG}")
|
||||
check_c_source_compiles(
|
||||
"#include <sys/auxv.h>
|
||||
+ #ifdef __FreeBSD__
|
||||
+ #include <machine/cpu.h>
|
||||
+ #endif
|
||||
int main() {
|
||||
+ #ifdef __FreeBSD__
|
||||
+ unsigned long hwcap;
|
||||
+ elf_aux_info(AT_HWCAP, &hwcap, sizeof(hwcap));
|
||||
+ return (hwcap & PPC_FEATURE_HAS_ALTIVEC);
|
||||
+ #else
|
||||
return (getauxval(AT_HWCAP) & PPC_FEATURE_HAS_ALTIVEC);
|
||||
+ #endif
|
||||
}"
|
||||
HAVE_VMX
|
||||
)
|
||||
@@ -298,8 +307,17 @@ macro(check_power8_intrinsics)
|
||||
set(CMAKE_REQUIRED_FLAGS "${POWER8FLAG} ${NATIVEFLAG}")
|
||||
check_c_source_compiles(
|
||||
"#include <sys/auxv.h>
|
||||
+ #ifdef __FreeBSD__
|
||||
+ #include <machine/cpu.h>
|
||||
+ #endif
|
||||
int main() {
|
||||
+ #ifdef __FreeBSD__
|
||||
+ unsigned long hwcap;
|
||||
+ elf_aux_info(AT_HWCAP2, &hwcap, sizeof(hwcap));
|
||||
+ return (hwcap & PPC_FEATURE2_ARCH_2_07);
|
||||
+ #else
|
||||
return (getauxval(AT_HWCAP2) & PPC_FEATURE2_ARCH_2_07);
|
||||
+ #endif
|
||||
}"
|
||||
HAVE_POWER8_INTRIN
|
||||
)
|
Loading…
Reference in New Issue
Block a user