# Copyright (c) 2022 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
# Description
# CMakeList file to generate example for LCD disply on Cyclone V SoC DevKit

cmake_minimum_required(VERSION 3.20.0)

find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(lcd_cyclonev_socdk)

target_sources(app PRIVATE src/main.c)
