C

Qt Quick Ultralite shapes Example

# Copyright (C) 2026 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial
cmake_minimum_required(VERSION 3.21.1)

project(shapes VERSION 0.0.1 LANGUAGES C CXX ASM)

find_package(QulApp)

if(QUL_PLATFORM MATCHES "^mimxrt1170-evkb")
    set(shapes_root_qml "+mimxrt1170-evkb/shapes.qml")
elseif(QUL_PLATFORM MATCHES "^tviic2d.*")
    set(shapes_root_qml "+traveo-t2g/shapes.qml")
else()
    set(shapes_root_qml "shapes.qml")
endif()

if(QUL_PLATFORM MATCHES "autosar")
    qul_add_library(shapes)
else()
    qul_add_executable(shapes)
endif()

qul_add_qml_module(shapes
    URI ShapesApp
    QML_FILES
        ${shapes_root_qml}
        ShapesEntry.qml
        FillRules.qml
        JoinStyles.qml
        CapStyles.qml
        QuadraticCurve.qml
        CubicCurve.qml
        ArcDirection.qml
        LargeSmallArc.qml
        ArcRotation.qml
)

target_link_libraries(shapes PRIVATE Qul::Shapes)

app_target_setup_os(shapes)
app_target_default_entrypoint(shapes shapes MODULE ShapesApp)