mirror of
https://github.com/postgres/postgres.git
synced 2025-12-25 00:08:12 -05:00
Fix pg_crc32c_armv8_choose.c to build with ancient glibc releases.
If you go back as far as the RHEL7 era, <sys/auxv.h> does not provide the HWCAPxxx macros needed with elf_aux_info or getauxval, so you need to get those from the kernel header <asm/hwcap.h> instead. We knew that for the 32-bit case but failed to extrapolate to the 64-bit case. Oversight in commit aac831caf. Reported-by: GaoZengqi <pgf00a@gmail.com> Author: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/CAFmBtr3Av62-jBzdhFkDHXJF9vQmNtSnH2upwODjnRcsgdTytw@mail.gmail.com Backpatch-through: 18
This commit is contained in:
parent
ed931377ab
commit
6d969ca687
@ -26,7 +26,8 @@
|
||||
|
||||
#if defined(HAVE_ELF_AUX_INFO) || defined(HAVE_GETAUXVAL)
|
||||
#include <sys/auxv.h>
|
||||
#if defined(__linux__) && !defined(__aarch64__) && !defined(HWCAP2_CRC32)
|
||||
/* Ancient glibc releases don't include the HWCAPxxx macros in sys/auxv.h */
|
||||
#if defined(__linux__) && (defined(__aarch64__) ? !defined(HWCAP_CRC32) : !defined(HWCAP2_CRC32))
|
||||
#include <asm/hwcap.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user