add_library(libjlx STATIC)
set_target_properties(libjlx PROPERTIES PREFIX "")
target_sources(libjlx PUBLIC FILE_SET libjlx_modules TYPE CXX_MODULES FILES
	"${CMAKE_CURRENT_SOURCE_DIR}/modules/main.cppm"
	"${CMAKE_CURRENT_SOURCE_DIR}/modules/sourceStream.cppm"
	"${CMAKE_CURRENT_SOURCE_DIR}/modules/tokenizer.cppm"
	"${CMAKE_CURRENT_SOURCE_DIR}/modules/ast.cppm"
	"${CMAKE_CURRENT_SOURCE_DIR}/modules/utils.cppm"
	"${CMAKE_CURRENT_SOURCE_DIR}/modules/type_checker.cppm"
	"${CMAKE_CURRENT_SOURCE_DIR}/modules/interpreter.cppm"
)
target_compile_options(libjlx PRIVATE $<IF:$<CXX_COMPILER_ID:Msvc>,/W4 /WX,-Wall -Wextra -Werror>)
target_include_directories(libjlx PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include") 
if (JLX_IPO_OK) 
	set_property(TARGET libjlx PROPERTY INTERPROCEDURAL_OPTIMIZATION $<BOOL:$<NOT:$<CONFIG:Debug>>>)
endif()
