C
Qt Quick Ultralite loader Example
cmake_minimum_required (VERSION 3.21.1)
project(loader VERSION 0.0.1 LANGUAGES C CXX ASM)
if (NOT TARGET Qul::Core)
find_package(Qul)
endif()
qul_add_qml_module(SettingsDataModule
URI SettingsData
QML_FILES
settings/SettingsData.qml
)
qul_add_qml_module(GameStateModule
URI GameState
QML_FILES
memory_game/GameState.qml
HEADERS
memory_game/ColorsQueue.h
SOURCES
memory_game/ColorsQueue.cpp
)
qul_add_target(loader)
qul_target_qml_sources(loader
loader.qml PageButton.qml Logo.qml
settings/ColorSelector.qml
settings/DifficultySelector.qml
settings/Settings.qml
memory_game/ColorButtons.qml
memory_game/GameOver.qml
memory_game/GameMain.qml
memory_game/GameWindow.qml
memory_game/MemoryGame.qml
memory_game/StatsOverlay.qml
)
app_target_setup_os(loader)
app_target_default_entrypoint(loader loader)
target_link_libraries(loader PRIVATE SettingsDataModule GameStateModule)
qul_add_resource(loader
FILES
images/qt_logo.png
images/previous_page.png
images/next_page.png
)
if(NOT CMAKE_CROSSCOMPILING AND NOT WIN32)
add_custom_command(TARGET loader
COMMAND strip loader -o loader.stripped
DEPENDS loader)
endif()
if (QUL_BUILD_QMLPROJECT_EXAMPLES)
qul_add_target(loader_qmlproject QML_PROJECT mcu_loader.qmlproject memory_game/ColorsQueue.cpp)
app_target_setup_os(loader_qmlproject)
app_target_default_entrypoint(loader_qmlproject loader)
if(NOT CMAKE_CROSSCOMPILING AND NOT WIN32)
add_custom_command(TARGET loader_qmlproject
COMMAND strip loader_qmlproject -o loader.stripped
DEPENDS loader_qmlproject)
endif()
endif()