1/*===------- llvm/Config/llvm-config.h - llvm configuration -------*- C -*-===*/ 2/* */ 3/* Part of the LLVM Project, under the Apache License v2.0 with LLVM */ 4/* Exceptions. */ 5/* See https://llvm.org/LICENSE.txt for license information. */ 6/* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception */ 7/* */ 8/*===----------------------------------------------------------------------===*/ 9 10/* This file enumerates variables from the LLVM configuration so that they 11 can be in exported headers and won't override package specific directives. 12 This is a C header that can be included in the llvm-c headers. */ 13 14#ifndef LLVM_CONFIG_H 15#define LLVM_CONFIG_H 16 17/* Define if LLVM_ENABLE_DUMP is enabled */ 18#cmakedefine LLVM_ENABLE_DUMP 19 20/* Target triple LLVM will generate code for by default */ 21/* Doesn't use `cmakedefine` because it is allowed to be empty. */ 22#define LLVM_DEFAULT_TARGET_TRIPLE "${LLVM_DEFAULT_TARGET_TRIPLE}" 23 24/* Define if threads enabled */ 25#cmakedefine01 LLVM_ENABLE_THREADS 26 27/* Has gcc/MSVC atomic intrinsics */ 28#cmakedefine01 LLVM_HAS_ATOMICS 29 30/* Host triple LLVM will be executed on */ 31#cmakedefine LLVM_HOST_TRIPLE "${LLVM_HOST_TRIPLE}" 32 33/* LLVM architecture name for the native architecture, if available */ 34#cmakedefine LLVM_NATIVE_ARCH ${LLVM_NATIVE_ARCH} 35 36/* LLVM name for the native AsmParser init function, if available */ 37#cmakedefine LLVM_NATIVE_ASMPARSER LLVMInitialize${LLVM_NATIVE_ARCH}AsmParser 38 39/* LLVM name for the native AsmPrinter init function, if available */ 40#cmakedefine LLVM_NATIVE_ASMPRINTER LLVMInitialize${LLVM_NATIVE_ARCH}AsmPrinter 41 42/* LLVM name for the native Disassembler init function, if available */ 43#cmakedefine LLVM_NATIVE_DISASSEMBLER LLVMInitialize${LLVM_NATIVE_ARCH}Disassembler 44 45/* LLVM name for the native Target init function, if available */ 46#cmakedefine LLVM_NATIVE_TARGET LLVMInitialize${LLVM_NATIVE_ARCH}Target 47 48/* LLVM name for the native TargetInfo init function, if available */ 49#cmakedefine LLVM_NATIVE_TARGETINFO LLVMInitialize${LLVM_NATIVE_ARCH}TargetInfo 50 51/* LLVM name for the native target MC init function, if available */ 52#cmakedefine LLVM_NATIVE_TARGETMC LLVMInitialize${LLVM_NATIVE_ARCH}TargetMC 53 54/* LLVM name for the native target MCA init function, if available */ 55#cmakedefine LLVM_NATIVE_TARGETMCA LLVMInitialize${LLVM_NATIVE_ARCH}TargetMCA 56 57/* Define if this is Unixish platform */ 58#cmakedefine LLVM_ON_UNIX ${LLVM_ON_UNIX} 59 60/* Define if we have the Intel JIT API runtime support library */ 61#cmakedefine01 LLVM_USE_INTEL_JITEVENTS 62 63/* Define if we have the oprofile JIT-support library */ 64#cmakedefine01 LLVM_USE_OPROFILE 65 66/* Define if we have the perf JIT-support library */ 67#cmakedefine01 LLVM_USE_PERF 68 69/* Major version of the LLVM API */ 70#define LLVM_VERSION_MAJOR ${LLVM_VERSION_MAJOR} 71 72/* Minor version of the LLVM API */ 73#define LLVM_VERSION_MINOR ${LLVM_VERSION_MINOR} 74 75/* Patch version of the LLVM API */ 76#define LLVM_VERSION_PATCH ${LLVM_VERSION_PATCH} 77 78/* LLVM version string */ 79#define LLVM_VERSION_STRING "${PACKAGE_VERSION}" 80 81/* Whether LLVM records statistics for use with GetStatistics(), 82 * PrintStatistics() or PrintStatisticsJSON() 83 */ 84#cmakedefine01 LLVM_FORCE_ENABLE_STATS 85 86/* Define if we have z3 and want to build it */ 87#cmakedefine LLVM_WITH_Z3 ${LLVM_WITH_Z3} 88 89/* Define if we have curl and want to use it */ 90#cmakedefine LLVM_ENABLE_CURL ${LLVM_ENABLE_CURL} 91 92/* Define if we have cpp-httplib and want to use it */ 93#cmakedefine LLVM_ENABLE_HTTPLIB ${LLVM_ENABLE_HTTPLIB} 94 95/* Define if zlib compression is available */ 96#cmakedefine01 LLVM_ENABLE_ZLIB 97 98/* Define if zstd compression is available */ 99#cmakedefine01 LLVM_ENABLE_ZSTD 100 101/* Define if LLVM is using tflite instead of libtensorflow */ 102#cmakedefine LLVM_HAVE_TFLITE 103 104/* Define to 1 if you have the <sysexits.h> header file. */ 105#cmakedefine HAVE_SYSEXITS_H ${HAVE_SYSEXITS_H} 106 107/* Define if the xar_open() function is supported on this platform. */ 108#cmakedefine LLVM_HAVE_LIBXAR ${LLVM_HAVE_LIBXAR} 109 110/* Define if building libLLVM shared library */ 111#cmakedefine LLVM_BUILD_LLVM_DYLIB 112 113/* Define if building LLVM with BUILD_SHARED_LIBS */ 114#cmakedefine LLVM_BUILD_SHARED_LIBS 115 116/* Define if building LLVM with LLVM_FORCE_USE_OLD_TOOLCHAIN_LIBS */ 117#cmakedefine LLVM_FORCE_USE_OLD_TOOLCHAIN ${LLVM_FORCE_USE_OLD_TOOLCHAIN} 118 119/* Define if llvm_unreachable should be optimized with undefined behavior 120 * in non assert builds */ 121#cmakedefine01 LLVM_UNREACHABLE_OPTIMIZE 122 123/* Define to 1 if you have the DIA SDK installed, and to 0 if you don't. */ 124#cmakedefine01 LLVM_ENABLE_DIA_SDK 125 126/* Define if plugins enabled */ 127#cmakedefine LLVM_ENABLE_PLUGINS 128 129#endif 130