file(GLOB CodeGenBase
*.cpp
Base/*.cpp
Base/CGTypes/*.cpp
Base/ExprDispatcher/*.cpp
Utils/*.cpp
)
include_directories(BEFORE ${CMAKE_CURRENT_SOURCE_DIR})
if(CANGJIE_CODEGEN_CJNATIVE_BACKEND)
file(GLOB CodeGenCJNative CJNative/*.cpp CJNative/CGTypes/*.cpp)
list(REMOVE_ITEM CodeGenCJNative ${CMAKE_CURRENT_SOURCE_DIR}/CJNative/CJNativeGenArray.cpp)
set(CODEGEN_SRC ${CodeGenBase} ${CodeGenCJNative})
add_subdirectory(IncrementalGen)
endif()
add_library(CangjieCodeGen OBJECT ${CODEGEN_SRC})
if(CANGJIE_CODEGEN_CJNATIVE_BACKEND)
add_dependencies(CangjieCodeGen cjnative)
endif()
target_include_directories(CangjieCodeGen PRIVATE ${LLVM_INCLUDE_DIRS})
target_compile_options(CangjieCodeGen PRIVATE ${CJC_WITH_LLVM_EXTRA_WARNINGS})