43 lines
1.3 KiB
CMake
Executable File
43 lines
1.3 KiB
CMake
Executable File
cmake_minimum_required(VERSION 3.27)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|
|
|
set(PROJECT_NAME "badapple")
|
|
|
|
set(NDSTOOL_NAME ${PROJECT_NAME} CACHE BOOL "")
|
|
set(NDSTOOL_SUBTITLE1 "Created by sillysagiri" CACHE BOOL "")
|
|
set(NDSTOOL_SUBTITLE2 "sillysagiri.my.id" CACHE BOOL "")
|
|
set(NDSTOOL_NITROFS "resource" CACHE BOOL "")
|
|
|
|
# add_subdirectory(arm9)
|
|
|
|
set(NDSTOOL_ARM7 "${CMAKE_BINARY_DIR}/arm7/arm7.elf" CACHE BOOL "")
|
|
# set(NDSTOOL_ARM9 arm9 CACHE BOOL "")
|
|
|
|
project(${PROJECT_NAME})
|
|
|
|
file(GLOB_RECURSE PROJECT_SOURCES CONFIGURE_DEPENDS "src/*.cpp")
|
|
file(GLOB VENDOR_SOURCES CONFIGURE_DEPENDS "vendor/FastLZ/fastlz.c")
|
|
|
|
set(PROJECT_INCLUDE
|
|
"src"
|
|
"vendor/FastLZ")
|
|
|
|
set(PROJECT_VENDOR
|
|
"filesystem"
|
|
"fat")
|
|
|
|
add_executable(${PROJECT_NAME} ${PROJECT_SOURCES} ${VENDOR_SOURCES})
|
|
target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_INCLUDE})
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC ${PROJECT_VENDOR})
|
|
|
|
nds_create_rom(${PROJECT_NAME})
|
|
|
|
# yeah i know its stupid, but its working!!
|
|
add_custom_command(
|
|
TARGET ${PROJECT_NAME} PRE_BUILD
|
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/arm7
|
|
COMMAND ${DEVKITPRO}/portlibs/nds/bin/arm-none-eabi-cmake -S ${CMAKE_SOURCE_DIR}/arm7 ${CMAKE_BINARY_DIR}/arm7
|
|
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR}/arm7
|
|
) |