jak-project/goalc/CMakeLists.txt
2021-03-03 00:05:13 -05:00

58 lines
1.6 KiB
CMake

add_library(compiler
SHARED
emitter/CodeTester.cpp
emitter/ObjectFileData.cpp
emitter/ObjectGenerator.cpp
emitter/Register.cpp
debugger/disassemble.cpp
compiler/Compiler.cpp
compiler/Env.cpp
compiler/Val.cpp
compiler/IR.cpp
compiler/CompilerSettings.cpp
compiler/CodeGenerator.cpp
compiler/StaticObject.cpp
compiler/compilation/Atoms.cpp
compiler/compilation/CompilerControl.cpp
compiler/compilation/Block.cpp
compiler/compilation/Macro.cpp
compiler/compilation/Math.cpp
compiler/compilation/Define.cpp
compiler/compilation/Debug.cpp
compiler/compilation/Function.cpp
compiler/compilation/ControlFlow.cpp
compiler/compilation/Type.cpp
compiler/compilation/Static.cpp
compiler/Util.cpp
data_compiler/game_text.cpp
data_compiler/DataObjectGenerator.cpp
data_compiler/game_count.cpp
debugger/Debugger.cpp
debugger/DebugInfo.cpp
listener/Listener.cpp
listener/MemoryMap.cpp
regalloc/IRegister.cpp
regalloc/Allocator.cpp
regalloc/allocate.cpp
regalloc/allocate_common.cpp
compiler/Compiler.cpp
compiler/compilation/Asm.cpp
)
target_link_libraries(compiler common Zydis)
if(WIN32)
target_link_libraries(compiler mman)
endif()
if(UNIX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2")
elseif(WIN32)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /O2")
endif()
add_executable(goalc main.cpp)
target_link_libraries(goalc common Zydis compiler)
install(TARGETS goalc)