-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
48 lines (39 loc) · 1.59 KB
/
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
47
48
# Basic parameters; check that these match your project / environment
cmake_minimum_required(VERSION 3.9)
# Replace "game" with a name for your project (this is used the name of the output)
project(armadillo)
# Add your sources here (adding headers is optional, but helps some CMake generators)
set(PROJECT_SOURCE src/main.cpp blit/blit.cpp)
# ... and any other files you want in the release here
set(PROJECT_DISTRIBS LICENSE README.md)
# Build configuration; approach this with caution!
if(MSVC)
add_compile_options("/W4" "/wd4244" "/wd4324" "/wd4458" "/wd4100")
else()
add_compile_options("-Wall" "-Wextra" "-Wdouble-promotion" "-Wno-unused-parameter")
endif()
find_package (32BLIT CONFIG REQUIRED PATHS ../32blit-sdk $ENV{PATH_32BLIT_SDK})
add_compile_options(
"-I${CMAKE_CURRENT_LIST_DIR}/include"
"-I${CMAKE_CURRENT_LIST_DIR}/include/layers"
"-I${CMAKE_CURRENT_LIST_DIR}/include/fonts"
"-I${CMAKE_CURRENT_LIST_DIR}/libs/LibLog"
"-I${CMAKE_CURRENT_LIST_DIR}/libs/LibSchedule"
"-I${CMAKE_CURRENT_LIST_DIR}/libs/MemOps"
"-I${CMAKE_CURRENT_LIST_DIR}/libs/File"
"-I${CMAKE_CURRENT_LIST_DIR}/libs/LibAudio")
add_compile_definitions(
"SCREEN_WIDTH=320"
"SCREEN_HEIGHT=240"
"SCREEN_565"
"SCREEN_BGR"
"USE_SCANLINE_RENDERER")
blit_executable (${PROJECT_NAME} ${PROJECT_SOURCE})
blit_assets_yaml (${PROJECT_NAME} assets.yml)
blit_metadata (${PROJECT_NAME} metadata.yml)
add_custom_target (flash DEPENDS ${PROJECT_NAME}.flash)
# setup release packages
install (FILES ${PROJECT_DISTRIBS} DESTINATION .)
set (CPACK_INCLUDE_TOPLEVEL_DIRECTORY OFF)
set (CPACK_GENERATOR "ZIP" "TGZ")
include (CPack)