- Add elf_aux_info() support for OpenBSD
  https://github.com/facebook/rocksdb/pull/12967

https://jira.mariadb.org/browse/MDEV-29875

Index: storage/rocksdb/rocksdb/util/crc32c_arm64.cc
--- storage/rocksdb/rocksdb/util/crc32c_arm64.cc.orig
+++ storage/rocksdb/rocksdb/util/crc32c_arm64.cc
@@ -10,16 +10,16 @@
 #if defined(__linux__)
 #include <asm/hwcap.h>
 #endif
-#ifdef ROCKSDB_AUXV_GETAUXVAL_PRESENT
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || \
+    defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
 #include <sys/auxv.h>
-#endif
 #ifndef HWCAP_CRC32
 #define HWCAP_CRC32 (1 << 7)
 #endif
 #ifndef HWCAP_PMULL
 #define HWCAP_PMULL (1 << 4)
 #endif
-#if defined(__APPLE__)
+#elif defined(__APPLE__)
 #include <sys/sysctl.h>
 #endif
 
@@ -46,11 +46,12 @@
 extern bool pmull_runtime_flag;
 
 uint32_t crc32c_runtime_check(void) {
-#if !defined(__APPLE__)
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || \
+    defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
   uint64_t auxv = 0;
 #if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT)
   auxv = getauxval(AT_HWCAP);
-#elif defined(__FreeBSD__)
+#elif defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
   elf_aux_info(AT_HWCAP, &auxv, sizeof(auxv));
 #endif
   return (auxv & HWCAP_CRC32) != 0;
@@ -63,11 +64,12 @@ uint32_t crc32c_runtime_check(void) {
 }
 
 bool crc32c_pmull_runtime_check(void) {
-#if !defined(__APPLE__)
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || \
+    defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
   uint64_t auxv = 0;
 #if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT)
   auxv = getauxval(AT_HWCAP);
-#elif defined(__FreeBSD__)
+#elif defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
   elf_aux_info(AT_HWCAP, &auxv, sizeof(auxv));
 #endif
   return (auxv & HWCAP_PMULL) != 0;
