cmake_minimum_required(VERSION 3.16.0)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
add_compile_definitions(PLATFORM_ESPIDF=1)
add_compile_definitions(LWIP_NOASSERT=1)
set(ENABLE_MDNS_ESPIDF 0)
if("$ENV{IDF_TARGET}" STREQUAL "esp32" OR "$ENV{IDF_TARGET}" STREQUAL "esp32c6" OR "$ENV{IDF_TARGET}" STREQUAL "esp32s3")
	set(ENABLE_MDNS_ESPIDF 1)
# C3 2M CI image overflows app partition; keep mDNS enabled only for 4M variant for now.
elseif("$ENV{IDF_TARGET}" STREQUAL "esp32c3" AND "$ENV{OBK_VARIANT}" STREQUAL "2")
	set(ENABLE_MDNS_ESPIDF 1)
endif()
if(ENABLE_MDNS_ESPIDF)
	idf_build_set_property(COMPILE_OPTIONS "-DENABLE_DRIVER_MDNS=1" APPEND)
	idf_build_set_property(COMPILE_OPTIONS "-DLWIP_MDNS_RESPONDER=1" APPEND)
endif()
add_definitions( -DUSER_SW_VER="$ENV{APP_VERSION}" )
add_definitions( -DOBK_VARIANT=$ENV{OBK_VARIANT} )
include_directories("$ENV{IDF_PATH}/../../libraries/berry/src")
include_directories("$ENV{IDF_PATH}/../../include")
include_directories("$ENV{IDF_PATH}/../../src/driver/display")

if(ENABLE_DISPLAY OR (DEFINED ENV{ENABLE_DISPLAY} AND "$ENV{ENABLE_DISPLAY}" EQUAL "1"))
    list(APPEND EXTRA_COMPONENT_DIRS "$ENV{IDF_PATH}/../../libraries/ESP32_Display_Panel" "$ENV{IDF_PATH}/../../libraries/lvgl" "$ENV{IDF_PATH}/../../libraries/ESP32_IO_Expander" "$ENV{IDF_PATH}/../../libraries/esp-lib-utils")
endif()

#set(PROJECT_VER "$ENV{APP_VERSION}")
project(OpenBeken)
idf_build_set_property(COMPILE_OPTIONS "-Wno-error=format-truncation" "-Wno-error=incompatible-pointer-types" "-Wno-error=int-conversion" "-Wno-error=unused-but-set-variable" "-Wno-error=unused-function" "-Wno-error=unused-variable" "-Wno-error=implicit-fallthrough" APPEND)


if(ENABLE_DISPLAY OR (DEFINED ENV{ENABLE_DISPLAY} AND "$ENV{ENABLE_DISPLAY}" EQUAL "1"))
    idf_build_set_property(COMPILE_OPTIONS "-DENABLE_DISPLAY=1" "-DLV_CONF_INCLUDE_SIMPLE=1" "-DBOARD_WAVESHARE_ESP32_S3_TOUCH_LCD_5=1" "-DESP_PANEL_BOARD_DEFAULT_USE_SUPPORTED=1" "-DESP_PANEL_BOARD_USE_SUPPORTED_FILE=1" "-DESP_PANEL_BOARD_INCLUDE_SUPPORTED_SIMPLE=1" APPEND)
endif()
