diff options
author | Andres Freund <andres@anarazel.de> | 2019-01-28 18:05:52 -0800 |
---|---|---|
committer | Andres Freund <andres@anarazel.de> | 2019-01-28 18:05:52 -0800 |
commit | da05eb51debd5d4b0284bcafa728244183c303ae (patch) | |
tree | 3f2074a5262026fad9bcbccd7a89aed390f708fb /src/include/jit/llvmjit.h | |
parent | 684200543b4cbfe1ac002c9962e90683d4ea4691 (diff) | |
download | postgresql-da05eb51debd5d4b0284bcafa728244183c303ae.tar.gz postgresql-da05eb51debd5d4b0284bcafa728244183c303ae.zip |
Fix LLVM related headers to compile standalone (to fix cpluspluscheck).
Previously llvmjit.h #error'ed when USE_LLVM was not defined, to
prevent it from being included from code not having #ifdef USE_LLVM
guards - but that's not actually that useful after, during the
development of JIT support, LLVM related code was moved into a
separately compiled .so. Having that #error means cpluspluscheck
doesn't work when llvm support isn't enabled, which isn't great.
Similarly add USE_LLVM guards to llvmjit_emit.h, and additionally make
sure it compiles standalone.
Per complaint from Tom Lane.
Author: Andres Freund
Discussion: https://postgr.es/m/19808.1548692361@sss.pgh.pa.us
Backpatch: 11, where JIT support was added
Diffstat (limited to 'src/include/jit/llvmjit.h')
-rw-r--r-- | src/include/jit/llvmjit.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/include/jit/llvmjit.h b/src/include/jit/llvmjit.h index 6af5fe74388..726ec99130b 100644 --- a/src/include/jit/llvmjit.h +++ b/src/include/jit/llvmjit.h @@ -11,9 +11,11 @@ #ifndef LLVMJIT_H #define LLVMJIT_H -#ifndef USE_LLVM -#error "llvmjit.h should only be included by code dealing with llvm" -#endif +/* + * To avoid breaking cpluspluscheck, allow including the file even when LLVM + * is not available. + */ +#ifdef USE_LLVM #include <llvm-c/Types.h> @@ -140,4 +142,5 @@ extern char *LLVMGetHostCPUFeatures(void); } /* extern "C" */ #endif +#endif /* USE_LLVM */ #endif /* LLVMJIT_H */ |