57 lines
1.6 KiB
CMake
57 lines
1.6 KiB
CMake
cmake_minimum_required(VERSION 3.16)
|
|
|
|
set(TARGET_APP "GenericQMLApp")
|
|
project(${TARGET_APP} VERSION 0.1.0 LANGUAGES CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
find_package(Qt6 REQUIRED COMPONENTS Quick)
|
|
|
|
qt_standard_project_setup(REQUIRES 6.8)
|
|
|
|
qt_add_executable(${TARGET_APP}
|
|
main.cpp
|
|
)
|
|
|
|
qt_add_qml_module(${TARGET_APP}
|
|
URI GenericQML
|
|
QML_FILES
|
|
Main.qml
|
|
ListPage.qml
|
|
ListItemDelegate.qml
|
|
ExpandableItemDelegate.qml
|
|
EditableItemDelegate.qml
|
|
controls/PressAndHoldButton.qml
|
|
RESOURCES
|
|
icons/software-application.png
|
|
icons/moreUp.png icons/moreDown.png
|
|
icons/arrow-down.png icons/arrow-up.png
|
|
icons/list-delete.png
|
|
icons/minus-sign.png icons/plus-sign.png
|
|
)
|
|
|
|
# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
|
|
# If you are developing for iOS or macOS you should consider setting an
|
|
# explicit, fixed bundle identifier manually though.
|
|
set_target_properties(${TARGET_APP} PROPERTIES
|
|
# MACOSX_BUNDLE_GUI_IDENTIFIER com.example.${TARGET_APP}
|
|
MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
|
|
MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
|
|
MACOSX_BUNDLE TRUE
|
|
WIN32_EXECUTABLE TRUE
|
|
)
|
|
|
|
target_include_directories(${TARGET_APP} PRIVATE ${CORE_LIB_DIR}/)
|
|
target_link_libraries(${TARGET_APP} PRIVATE GenericCore)
|
|
|
|
target_link_libraries(${TARGET_APP}
|
|
PRIVATE Qt6::Quick
|
|
)
|
|
|
|
include(GNUInstallDirs)
|
|
install(TARGETS ${TARGET_APP}
|
|
BUNDLE DESTINATION .
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
)
|