52 lines
1.2 KiB
CMake
52 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 3.19)
|
|
project(Storybook)
|
|
|
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
|
|
|
set(CMAKE_AUTOUIC ON)
|
|
set(CMAKE_AUTOMOC ON)
|
|
set(CMAKE_AUTORCC ON)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
find_package(
|
|
Qt5
|
|
COMPONENTS Core Quick QuickControls2
|
|
REQUIRED)
|
|
|
|
file(GLOB_RECURSE QML_FILES "stubs/*.qml" "Storybook/*.qml" "../ui/StatusQ/*.qml" "../ui/app/*.qml")
|
|
file(GLOB_RECURSE JS_FILES "../ui/StatusQ/*.js" "../ui/app/*.js")
|
|
file(GLOB_RECURSE HEADERS *.h)
|
|
if(APPLE)
|
|
file(GLOB_RECURSE SOURCES *.cpp *.mm)
|
|
else()
|
|
file(GLOB_RECURSE SOURCES *.cpp)
|
|
endif()
|
|
|
|
add_executable(
|
|
${PROJECT_NAME}
|
|
qml.qrc
|
|
${HEADERS}
|
|
${SOURCES}
|
|
${QML_FILES}
|
|
${JS_FILES}
|
|
)
|
|
|
|
target_compile_definitions(${PROJECT_NAME}
|
|
PRIVATE SRC_DIR="${CMAKE_CURRENT_LIST_DIR}")
|
|
target_link_libraries(
|
|
${PROJECT_NAME} PRIVATE Qt5::Core Qt5::Quick Qt5::QuickControls2
|
|
SortFilterProxyModel)
|
|
|
|
set(QML_IMPORT_PATH ${CMAKE_SOURCE_DIR} CACHE STRING "" FORCE)
|
|
|
|
if (APPLE)
|
|
find_library(AppKit AppKit)
|
|
find_library(Foundation Foundation)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PRIVATE ${AppKit} ${Foundation})
|
|
endif()
|
|
|
|
add_subdirectory(../ui/StatusQ/vendor/SortFilterProxyModel ./SortFilterProxyModel)
|