some LLVM function checks missing in meson

Peter Eisentraut <peter@eisentraut.org>

From: Peter Eisentraut <peter@eisentraut.org>
To: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2024-04-11T15:26:33Z
Lists: pgsql-hackers
I have been checking the pg_config.h generated by configure and meson to 
see if there is anything materially different.  I found that

HAVE_DECL_LLVMCREATEGDBREGISTRATIONLISTENER and
HAVE_DECL_LLVMCREATEPERFJITEVENTLISTENER

are missing on the meson side.

Something like the below would appear to fix that:

diff --git a/meson.build b/meson.build
index 43fad5323c0..cdfd31377d1 100644
--- a/meson.build
+++ b/meson.build
@@ -2301,6 +2301,14 @@ decl_checks += [
    ['pwritev', 'sys/uio.h'],
  ]

+# Check presence of some optional LLVM functions.
+if llvm.found()
+  decl_checks += [
+    ['LLVMCreateGDBRegistrationListener', 'llvm-c/ExecutionEngine.h'],
+    ['LLVMCreatePerfJITEventListener', 'llvm-c/ExecutionEngine.h'],
+  ]
+endif
+
  foreach c : decl_checks
    func = c.get(0)
    header = c.get(1)

I don't know what these functions do, but the symbols are used in the 
source code.  Thoughts?



Commits

  1. meson: Add some missing LLVM function checks

  2. Remove dead code

  3. LLVMJIT: Adapt to API changes in gdb and perf support.