Files
amethyst/CMakeLists.txt

53 lines
1.5 KiB
CMake
Raw Normal View History

2025-11-19 22:20:27 +01:00
cmake_minimum_required(VERSION 3.22)
project(amethyst)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED true)
2025-11-19 22:20:27 +01:00
option(AMY_GOD_DEV "Turn this on if you think you are god" OFF)
# THis option should be disabled if you use STB_IMAGE in you main project
2026-01-04 18:02:45 +01:00
option(AMY_BUILD_STB_IMAGE ON)
option(AMY_BUILD_STB_TRUETYPE ON)
2025-11-19 22:20:27 +01:00
add_subdirectory(vendor/libpicasso)
2025-11-19 22:20:27 +01:00
add_library(${PROJECT_NAME} STATIC
source/app.cpp
source/assets.cpp
2025-11-19 22:20:27 +01:00
source/amethyst.cpp
source/color.cpp
source/godtrace.cpp
2025-11-19 22:20:27 +01:00
source/image.cpp
source/renderer.cpp
source/texture.cpp
source/utils.cpp
source/c3d.cpp
source/iron/iron.cpp
source/iron/drawlist.cpp
source/iron/font.cpp
source/maths/mat.cpp
2025-11-19 22:20:27 +01:00
)
target_include_directories(${PROJECT_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/include
${DEVKITPRO}/portlibs/3ds/include
)
target_include_directories(${PROJECT_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/source/internal
)
target_link_libraries(${PROJECT_NAME} PUBLIC pica::pica)
target_link_libraries(${PROJECT_NAME} PUBLIC m z ctru citro3d mpg123)
2026-01-04 18:02:45 +01:00
if(${AMY_BUILD_STB_IMAGE})
target_compile_definitions(${PROJECT_NAME} PUBLIC AMY_STB_IMAGE)
endif()
if(${AMY_BUILD_STB_TRUETYPE})
target_compile_definitions(${PROJECT_NAME} PUBLIC AMY_STB_TT)
endif()
2025-12-05 19:33:58 +01:00
target_compile_options(${PROJECT_NAME} PUBLIC -Wno-psabi)
2025-11-19 22:20:27 +01:00
add_subdirectory(example)
install(TARGETS ${PROJECT_NAME})
install(DIRECTORY include DESTINATION .)