idf_component_register(SRCS "main.cpp"
                       PRIV_REQUIRES spi_flash nvs_flash esp_event rpc constants config rmt esp_driver_gptimer dataLink
                       INCLUDE_DIRS "")

if(DEFINED BOARD_NAME AND BOARD_NAME)
    message(STATUS "Building for board name: " ${BOARD_NAME})
    idf_build_set_property(COMPILE_DEFINITIONS BOARD_${BOARD_NAME} APPEND)
endif()
if(DEFINED TIME_TEST AND TIME_TEST)
    message(STATUS "Building with TIME_TEST: " ${TIME_TEST})
    idf_build_set_property(COMPILE_DEFINITIONS TIME_TEST APPEND)
endif()
if(DEFINED MANCHESTER_40 AND MANCHESTER_40)
    message(STATUS "Building with MANCHESTER_40: " ${MANCHESTER_40})
    idf_build_set_property(COMPILE_DEFINITIONS MANCHESTER_40 APPEND)
endif()
if(DEFINED NRZ_INVERTED AND NRZ_INVERTED)
    message(STATUS "Building with NRZ_INVERTED: " ${NRZ_INVERTED})
    idf_build_set_property(COMPILE_DEFINITIONS NRZ_INVERTED APPEND)
endif()
if(DEFINED NRZ_INVERTED_10 AND NRZ_INVERTED_10)
    message(STATUS "Building with NRZ_INVERTED_10: " ${NRZ_INVERTED_10})
    idf_build_set_property(COMPILE_DEFINITIONS NRZ_INVERTED_10 APPEND)
endif()
if(DEFINED NRZ_INVERTED_20 AND NRZ_INVERTED_20)
    message(STATUS "Building with NRZ_INVERTED_20: " ${NRZ_INVERTED_20})
    idf_build_set_property(COMPILE_DEFINITIONS NRZ_INVERTED_20 APPEND)
endif()
if(DEFINED NRZ_INVERTED_2 AND NRZ_INVERTED_2)
    message(STATUS "Building with NRZ_INVERTED_2: " ${NRZ_INVERTED_2})
    idf_build_set_property(COMPILE_DEFINITIONS NRZ_INVERTED_2 APPEND)
endif()
if(DEFINED NRZ_INVERTED_40_HZ AND NRZ_INVERTED_40_HZ)
    message(STATUS "Building with NRZ_INVERTED_40_HZ: " ${NRZ_INVERTED_40_HZ})
    idf_build_set_property(COMPILE_DEFINITIONS NRZ_INVERTED_40_HZ APPEND)
endif()
if(DEFINED VERIFY_RECEIVE AND VERIFY_RECEIVE)
    message(STATUS "Building with VERIFY_RECEIVE: " ${VERIFY_RECEIVE})
    idf_build_set_property(COMPILE_DEFINITIONS VERIFY_RECEIVE APPEND)
endif()