cmake_minimum_required(VERSION 3.12)

set(PICO_BOARD pico CACHE STRING "Board type")
include(pico_sdk_import.cmake)    

set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

project(i2c C CXX ASM)

pico_sdk_init()


add_executable(topfloor
    src/main.c 
    src/actions/user.c 
    src/servo/servo.c
    src/stepper/stepper.c
    )

pico_set_program_name(topfloor "i2ctest")
pico_set_program_version(topfloor "0.1")

pico_enable_stdio_uart(topfloor 0)
pico_enable_stdio_usb(topfloor 1)

target_link_libraries(topfloor
    pico_stdlib
    pico_stdio
    pico_time
    pico_i2c_slave
    pico_multicore
    hardware_i2c
    hardware_pwm
)

target_include_directories(topfloor PRIVATE
  ${CMAKE_CURRENT_LIST_DIR}
  src/
)

pico_add_extra_outputs(topfloor)