82 lines
2.2 KiB
CMake
82 lines
2.2 KiB
CMake
cmake_minimum_required(VERSION 3.16)
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Project
|
|
# -----------------------------------------------------------------------------
|
|
project(Lomo C CXX ASM)
|
|
|
|
set(CMAKE_C_STANDARD 11)
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# devkitPro / libctru setup
|
|
# -----------------------------------------------------------------------------
|
|
if(NOT DEFINED ENV{DEVKITPRO})
|
|
message(FATAL_ERROR "Please set DEVKITPRO in your environment.")
|
|
endif()
|
|
|
|
if(NOT DEFINED ENV{DEVKITARM})
|
|
message(FATAL_ERROR "Please set DEVKITARM in your environment.")
|
|
endif()
|
|
|
|
set(DEVKITPRO $ENV{DEVKITPRO})
|
|
set(DEVKITARM $ENV{DEVKITARM})
|
|
|
|
# Load devkitPro CMake support
|
|
include("${DEVKITPRO}/cmake/3DS.cmake")
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# LVGL
|
|
# -----------------------------------------------------------------------------
|
|
|
|
cmake_policy(SET CMP0077 NEW)
|
|
#set(LV_CONF_INCLUDE_SIMPLE ON)
|
|
#set(LV_BUILD_CONF_PATH ./include/lv_conf.h)
|
|
set(CONFIG_LV_BUILD_EXAMPLES OFF)
|
|
set(CONFIG_LV_BUILD_DEMOS OFF)
|
|
add_subdirectory(libraries/lvgl)
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Target
|
|
# -----------------------------------------------------------------------------
|
|
add_executable(${PROJECT_NAME}
|
|
source/main.c
|
|
source/lv_ctr_disp.c
|
|
)
|
|
|
|
target_include_directories(${PROJECT_NAME} PRIVATE
|
|
include
|
|
)
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Libraries
|
|
# -----------------------------------------------------------------------------
|
|
target_link_libraries(${PROJECT_NAME}
|
|
lvgl
|
|
ctru
|
|
citro2d
|
|
citro3d
|
|
m
|
|
)
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 3DS metadata
|
|
# -----------------------------------------------------------------------------
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES
|
|
OUTPUT_NAME "lomo"
|
|
)
|
|
|
|
# Generates:
|
|
# .3dsx
|
|
# .smdh
|
|
# .elf
|
|
ctr_generate_smdh(
|
|
OUTPUT "${PROJECT_NAME}.smdh"
|
|
NAME "Lomo"
|
|
DESCRIPTION "Camera app for the rest of us"
|
|
AUTHOR "BluRaf"
|
|
)
|
|
|
|
ctr_create_3dsx(${PROJECT_NAME}
|
|
SMDH "${PROJECT_NAME}.smdh"
|
|
)
|