49 lines
1.4 KiB
CMake
49 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.18)
|
||
|
project(MyAddin)
|
||
|
|
||
|
include(GenerateG1A)
|
||
|
include(GenerateG3A)
|
||
|
include(Fxconv)
|
||
|
find_package(Gint 2.1 REQUIRED)
|
||
|
|
||
|
set(SOURCES
|
||
|
src/main.c
|
||
|
# ...
|
||
|
)
|
||
|
# Shared assets, fx-9860G-only assets and fx-CG-50-only assets
|
||
|
set(ASSETS
|
||
|
# ...
|
||
|
)
|
||
|
set(ASSETS_fx
|
||
|
assets-fx/example.png
|
||
|
# ...
|
||
|
)
|
||
|
set(ASSETS_cg
|
||
|
assets-cg/example.png
|
||
|
# ...
|
||
|
)
|
||
|
|
||
|
set_source_files_properties(${ASSETS} PROPERTIES
|
||
|
OBJECT_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/assets/fxconv-metadata.txt")
|
||
|
set_source_files_properties(${ASSETS_fx} PROPERTIES
|
||
|
OBJECT_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/assets-fx/fxconv-metadata.txt")
|
||
|
set_source_files_properties(${ASSETS_cg} PROPERTIES
|
||
|
OBJECT_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/assets-cg/fxconv-metadata.txt")
|
||
|
|
||
|
set_source_files_properties(${ASSETS} ${ASSETS_fx} ${ASSETS_cg}
|
||
|
PROPERTIES LANGUAGE FXCONV)
|
||
|
|
||
|
add_executable(myaddin ${SOURCES} ${ASSETS} ${ASSETS_${FXSDK_PLATFORM}})
|
||
|
target_link_libraries(myaddin Gint::Gint)
|
||
|
|
||
|
if("${FXSDK_PLATFORM_LONG}" STREQUAL fx9860G)
|
||
|
generate_g1a(TARGET myaddin OUTPUT "MyAddin.g1a"
|
||
|
NAME "MyAddin" ICON assets-fx/icon.png)
|
||
|
elseif("${FXSDK_PLATFORM_LONG}" STREQUAL fxCG50)
|
||
|
generate_g3a(TARGET myaddin OUTPUT "MyAddin.g3a"
|
||
|
NAME "MyAddin" ICONS assets-cg/icon-uns.png assets-cg/icon-sel.png)
|
||
|
endif()
|