cmake_minimum_required(VERSION 3.15) project(vxBoot) include(GenerateG1A) include(GenerateG3A) include(Fxconv) find_package(Gint 2.1 REQUIRED) set(SOURCES src/main.c src/cli/parser.c src/fs/smemfs/mount.c src/fs/smemfs/pread.c src/terminal/close.c src/terminal/open.c src/terminal/read.c src/terminal/util.c src/terminal/write.c src/builtin/ls.c src/builtin/help.c ) # Shared assets, fx-9860G-only assets and fx-CG-50-only assets set(ASSETS # ... ) set(ASSETS_fx # ... ) set(ASSETS_cg # ... ) fxconv_declare_assets(${ASSETS} ${ASSETS_fx} ${ASSETS_cg} WITH_METADATA) add_executable(vxBoot ${SOURCES} ${ASSETS} ${ASSETS_${FXSDK_PLATFORM}}) target_compile_options(vxBoot PRIVATE -Wall -Wextra -Os) target_include_directories(vxBoot PRIVATE include/) target_link_libraries(vxBoot Gint::Gint) if("${FXSDK_PLATFORM_LONG}" STREQUAL fx9860G) generate_g1a(TARGET vxBoot OUTPUT "vxBoot.g1a" NAME "vxBoot" ICON assets-fx/icon.png) elseif("${FXSDK_PLATFORM_LONG}" STREQUAL fxCG50) generate_g3a(TARGET vxBoot OUTPUT "vxBoot.g3a" NAME "vxBoot" ICONS assets-cg/icon-uns.png assets-cg/icon-sel.png) endif()