diff --git a/docs/packages/aerospike.yaml b/docs/packages/aerospike.yaml index a3dd793f65f..7d37b37adb0 100644 --- a/docs/packages/aerospike.yaml +++ b/docs/packages/aerospike.yaml @@ -14,3 +14,4 @@ versions: sha256: 5d52d399bd852c9fc41f664158f59aa8aeddcbca26b3ff4ec9b6fd0b22643e2c - filename: aerospike-19.2.2-cp314-cp314t-manylinux_2_38_riscv64.manylinux_2_39_riscv64.whl sha256: b86daf3226fe26d830f5868d89b62d26b0ba909acf4fa755f6992da4761b2752 +- version: 19.3.0 diff --git a/patches/aerospike/19.3.0/0001-as_arch-portable-pause-fallback.patch b/patches/aerospike/19.3.0/0001-as_arch-portable-pause-fallback.patch new file mode 100644 index 00000000000..157efc63623 --- /dev/null +++ b/patches/aerospike/19.3.0/0001-as_arch-portable-pause-fallback.patch @@ -0,0 +1,20 @@ +Upstream-Status: To upstream [not yet submitted] + +as_arch_pause() is only defined for __x86_64__/__aarch64__ (and _MSC_VER), but is +used unconditionally by the spinlock/rwlock inline functions in as_atomic_gcc.h, +which are always compiled. On any other architecture (e.g. riscv64) this is an +implicit-declaration compile error under -Werror. Add a portable no-op fallback, +matching the existing MSVC-vs-gcc/clang structure of the file. +--- a/aerospike-client-c/modules/common/src/include/aerospike/as_arch.h ++++ b/aerospike-client-c/modules/common/src/include/aerospike/as_arch.h +@@ -33,6 +33,10 @@ + + #define as_arch_pause() asm volatile("isb" : : : "memory") + ++#else ++ ++#define as_arch_pause() ++ + #endif + + #endif // gcc & clang