C

Qt Quick Ultralite painteditem Example

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

project(painteditem VERSION 0.0.1 LANGUAGES C CXX ASM)

find_package(QulApp)

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

qul_add_qml_module(painteditem
    URI PaintedItemApp
    QML_FILES oscillator.qml
    SOURCES
        oscPaintedItem.cpp
        oscPaintedItem.h
    NO_SBOM
)

target_link_libraries(painteditem PRIVATE Qul::Controls)

if(QUL_PLATFORM MATCHES "^rh850" OR QUL_PLATFORM MATCHES "^tvii")
    target_compile_definitions(painteditem PRIVATE NO_TOUCH)
endif()

app_target_setup_os(painteditem)

# FreeRTOS uses the generated entry point; every other OS has its own main().
if(QUL_OS STREQUAL "FreeRTOS")
    app_target_default_entrypoint(painteditem oscillator MODULE PaintedItemApp)
else()
    target_sources(painteditem PRIVATE main_baremetal.cpp)
endif()