#------------------------------------------------------------------------------
#
# \brief	CMakeLists.txt file for "libbiwak"
#
#------------------------------------------------------------------------------


cmake_minimum_required(VERSION 3.11)
project (arena)

add_compile_options( -Werror )

option( ARENA_PREGENERATED "Use pregenerated arena files and libraries" False )
set( ARENA_SDK "" CACHE STRING "Installation file of arena pregenerated files" )

if ( NOT MCU_PLATFORM )
   set ( MCU_PLATFORM "linux" )
endif( NOT MCU_PLATFORM)

if ( "${MCU_PLATFORM}" MATCHES "linux" )

   # Check either Qt6 or Qt5
   find_package( QT NAMES Qt5 Qt6 COMPONENTS Core REQUIRED )
   find_package( Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Core )

endif()

set(sources
      ${sources}
      src/arena.cpp
      src/platform_base.cpp
		${ARENA_PLATFORM_IMPLEMENTATION}
      ${ARENA_BOARD_FILE}
      ${ARENA_APP_FILE}
)

set(headers
      ${headers}
      include/arena/config.h
		${ARENA_HEADER_FILE}
)

if ( NOT MCU_REV OR "${MCU_REV}" MATCHES "x86" )

   # Add ui?

endif( NOT MCU_REV OR "${MCU_REV}" MATCHES "x86" )


add_library( ${PROJECT_NAME} STATIC
        ${sources}
        ${arena_HEADERS_MOC}
        ${arena_FORMS_HEADERS}
        ${arena_RESOURCES_RCC}
        ${headers}
)

if ( CAMPO )
   use_common_config_headers( ${PROJECT_NAME} )
endif( CAMPO )

target_include_directories(
	 ${PROJECT_NAME}
	 INTERFACE
		include/
      ${ARENA_GENERATED_PATH}
   PRIVATE
      include/
)


if( "${MCU_PLATFORM}" MATCHES "stm32" )
   target_link_libraries( arena
           biwak
           lepto
           ${ARENA_ADDITIONAL_LIBRARIES}
   )
else()
   target_link_libraries( arena
            biwak
            lepto
   )
endif()


#------------------------------------------------------------------------------
