cmake_minimum_required(VERSION 3.20)
project(twist_llvm LANGUAGES C CXX)
find_package(LLVM REQUIRED CONFIG)
find_package(JNI REQUIRED)
add_library(twist_llvm SHARED twist_llvm.cpp)
target_include_directories(twist_llvm PRIVATE ${LLVM_INCLUDE_DIRS} ${JNI_INCLUDE_DIRS})
target_compile_features(twist_llvm PRIVATE cxx_std_20)
llvm_map_components_to_libnames(LLVM_LIBS core asmparser nativecodegen target mc support)
target_link_libraries(twist_llvm PRIVATE ${LLVM_LIBS})
