2023-07-16 01:58:32 -04:00
|
|
|
cmake_minimum_required(VERSION 3.15)
|
|
|
|
|
|
|
|
project(riscv_emu
|
|
|
|
DESCRIPTION "rv32-ima emulation library"
|
|
|
|
LANGUAGES CXX
|
|
|
|
)
|
|
|
|
|
|
|
|
add_library(riscv
|
|
|
|
src/Bus.cpp
|
2023-07-18 02:05:39 -04:00
|
|
|
src/Devices/RamDevice.cpp
|
2023-07-16 01:58:32 -04:00
|
|
|
)
|
|
|
|
|
|
|
|
target_compile_features(riscv PUBLIC cxx_std_20)
|
|
|
|
target_include_directories(riscv PUBLIC ${PROJECT_SOURCE_DIR}/include)
|
|
|
|
|
2023-07-16 02:15:55 -04:00
|
|
|
target_link_libraries(riscv PUBLIC
|
|
|
|
# lucore is a public dependency, since it is (techinically) used in public api surfaces
|
|
|
|
lucore::lucore
|
|
|
|
)
|
|
|
|
|
2023-07-16 01:58:32 -04:00
|
|
|
add_library(riscv::riscv ALIAS riscv)
|