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)