AfterBurner/CMakeLists.txt

50 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.15)
project(Afterburner VERSION 1.0 LANGUAGES CXX C ASM)
include(GenerateG3A)
include(Fxconv)
find_package(Azur 0.1 REQUIRED)
find_package(Gint 2.8 REQUIRED)
find_package(LibProf 2.1 REQUIRED)
set(SOURCES
src/camera.cpp
src/image.cpp
src/main.cpp
src/horizon.cpp
src/horizon.s
src/world.cpp
)
set(ASSETS
assets-cg/plane.png
assets-cg/square.png
assets-cg/dot.png
assets-cg/tree_1.png
assets-cg/tree_2.png
assets-cg/tree_3.png
assets-cg/mountain_1.png
assets-cg/rock_1.png
assets-cg/rock_2.png
assets-cg/base_1.png
assets-cg/base_2.png
assets-cg/base_3.png
assets-cg/minimap.png
assets-cg/expl_1.png
assets-cg/expl_2.png
assets-cg/expl_3.png
assets-cg/expl_4.png
assets-cg/font.png
)
fxconv_declare_assets(${ASSETS} WITH_METADATA)
add_executable(afterburner ${SOURCES} ${ASSETS})
target_compile_options(afterburner PRIVATE -Wall -Wextra -Os -std=c++20)
target_link_options(afterburner PRIVATE -Wl,-Map=map -Wl,--print-memory-usage)
target_link_libraries(afterburner Azur::Azur -lnum LibProf::LibProf Gint::Gint)
generate_g3a(TARGET afterburner OUTPUT "AfterBur.g3a"
NAME "Afterburner" ICONS assets-cg/icon-uns.png assets-cg/icon-sel.png)