-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
46 lines (38 loc) · 911 Bytes
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# Require CMake 3.16
cmake_minimum_required(VERSION 3.16)
# Require C++20
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
add_compile_options(-Wall -Wextra)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Debug)
endif()
project(nema CXX)
# Set include directories
include_directories(${PROJECT_SOURCE_DIR}/include)
# Set source files
set(SOURCES
src/main.cpp
src/common/bswap.cpp
src/common/file.cpp
src/hw/cpu.cpp
src/hw/dma.cpp
src/hw/i2c.cpp
src/hw/itc.cpp
src/sys/emulator.cpp
src/sys/memory.cpp
)
# Set header files
set(HEADERS
include/common/bswap.hpp
include/common/file.hpp
include/common/types.hpp
include/hw/cpu.hpp
include/hw/dma.hpp
include/hw/i2c.hpp
include/hw/itc.hpp
include/sys/config.hpp
include/sys/emulator.hpp
include/sys/memory.hpp
)
add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS})