[ESP32] esp-idf对自己的library进行管理。

这个可以参考lvgl的github仓库。

cmake_minimum_required(VERSION 3.12.4)

set(FPSDK_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR})


if (ESP_PLATFORM) # ESP-IDF
    include(${CMAKE_CURRENT_LIST_DIR}/env_support/esp.cmake)
else()


endif()

利用ESP_PLATFORM,可以知道是ESP32在编译。

然后在esp.cmake里面做自己的处理

file(GLOB_RECURSE SOURCES 
        ${FPSDK_ROOT_DIR}/board/esp32/*.c
        ${FPSDK_ROOT_DIR}/device/core/*.c
        )

idf_component_register(
    SRCS
    ${SOURCES}
    INCLUDE_DIRS
    ${FPSDK_ROOT_DIR}
    ${FPSDK_ROOT_DIR}/board/esp32/inc
    ${FPSDK_ROOT_DIR}/device/core/inc
    ${FPSDK_ROOT_DIR}/../
    REQUIRES
    main)
#定义一个宏USE_ESP,这样子c代码里面就可以知道外面是esp32在编译
target_compile_definitions(${COMPONENT_LIB} PUBLIC "-DUSE_ESP=1")

这样子的话就可以构建自己的目录了。并且代码里也能根据一个宏定义知道自己的是在被ESP32用,从而实现不同芯片的代码复用。

另外还有一个问题,就是标准的cmake命令好像无法在esp的components里面使用。只能用esp的那套命令,目前不清楚是为什么。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值