Copy3DEngine/CMakeLists.txt
2024-09-28 22:11:47 +02:00

46 lines
1.4 KiB
CMake

# Configure with [fxsdk build-fx] or [fxsdk build-cg], which provide the
# toolchain file and module path of the fxSDK
cmake_minimum_required(VERSION 3.15)
project(Copy3DEngine LANGUAGES C ASM)
include(GenerateG1A)
include(GenerateG3A)
include(Fxconv)
find_package(Gint 2.9 REQUIRED)
find_package(LibProf 2.1 REQUIRED)
# le nom de votre jeu
set(NAMEOFGAME "Test3D")
# Nom de l'auteur -> votre nom/pseudo
set(AUTHOR "Fcalva")
set(SOURCES
src/main.c
src/moteur.c
src/map.c
# src/opti.S
)
set(ASSETS
assets-fx/textures/briques0.png
assets-fx/textures/buisson1.png
)
fxconv_declare_assets(${ASSETS} WITH_METADATA)
add_executable(Copy3DEngine ${SOURCES} ${ASSETS})
#the -I is an ugly hack because lephe won't let us use render-fx.h >:(
target_compile_options(Copy3DEngine PRIVATE -flto -Wall -Wextra -O2 -I "$ENV{HOME}/.local/share/giteapc/Lephenixnoir/gint/src/render-fx/")
target_compile_definitions(Copy3DEngine PRIVATE NAMEOFGAME="${NAMEOFGAME}" AUTHOR="${AUTHOR}")
target_link_libraries(Copy3DEngine Gint::Gint)
target_link_libraries(Copy3DEngine LibProf::LibProf)
target_link_options(Copy3DEngine PRIVATE -Wl,--print-memory-usage)
if("${FXSDK_PLATFORM_LONG}" STREQUAL fx9860G)
generate_g1a(TARGET Copy3DEngine OUTPUT ${NAMEOFGAME}".g1a"
NAME ${NAMEOFGAME} ICON assets-fx/icon.png)
else()
generate_g3a(TARGET Copy3DEngine OUTPUT ${NAMEOFGAME}".g3a"
NAME ${NAMEOFGAME} ICONS assets-fx/icon.png assets-fx/icon.png)
endif()