summaryrefslogtreecommitdiff
path: root/extmod
diff options
context:
space:
mode:
Diffstat (limited to 'extmod')
-rw-r--r--extmod/extmod.cmake89
1 files changed, 42 insertions, 47 deletions
diff --git a/extmod/extmod.cmake b/extmod/extmod.cmake
index 3643f1aee..7cacd0a43 100644
--- a/extmod/extmod.cmake
+++ b/extmod/extmod.cmake
@@ -107,62 +107,57 @@ set(MICROPY_SOURCE_LIB_LIBM_SQRT_HW ${MICROPY_DIR}/lib/libm/thumb_vfp_sqrtf.c)
if(MICROPY_PY_BTREE)
set(MICROPY_LIB_BERKELEY_DIR "${MICROPY_DIR}/lib/berkeley-db-1.xx")
- string(CONCAT GIT_SUBMODULES "${GIT_SUBMODULES} " lib/berkeley-db-1.xx)
+ list(APPEND GIT_SUBMODULES lib/berkeley-db-1.xx)
- if(ECHO_SUBMODULES)
- # No-op, we're just doing submodule/variant discovery.
- # Cannot run the add_library/target_include_directories rules (even though
- # the build won't run) because IDF will attempt verify the files exist.
- elseif(NOT EXISTS ${MICROPY_LIB_BERKELEY_DIR}/README)
+ if(NOT UPDATE_SUBMODULES AND NOT EXISTS ${MICROPY_LIB_BERKELEY_DIR}/README)
# Regular build, submodule not initialised -- fail with a clear error.
message(FATAL_ERROR " MICROPY_PY_BTREE is enabled but the berkeley-db submodule is not initialised.\n Run 'make BOARD=${MICROPY_BOARD} submodules'")
- else()
- # Regular build, we have the submodule.
- add_library(micropy_extmod_btree OBJECT
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_close.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_conv.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_debug.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_delete.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_get.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_open.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_overflow.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_page.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_put.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_search.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_seq.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_split.c
- ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_utils.c
- ${MICROPY_LIB_BERKELEY_DIR}/mpool/mpool.c
- )
+ endif()
- target_include_directories(micropy_extmod_btree PRIVATE
- ${MICROPY_LIB_BERKELEY_DIR}/include
- )
+ add_library(micropy_extmod_btree OBJECT
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_close.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_conv.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_debug.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_delete.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_get.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_open.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_overflow.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_page.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_put.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_search.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_seq.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_split.c
+ ${MICROPY_LIB_BERKELEY_DIR}/btree/bt_utils.c
+ ${MICROPY_LIB_BERKELEY_DIR}/mpool/mpool.c
+ )
- if(NOT BERKELEY_DB_CONFIG_FILE)
- set(BERKELEY_DB_CONFIG_FILE "${MICROPY_DIR}/extmod/berkeley-db/berkeley_db_config_port.h")
- endif()
+ target_include_directories(micropy_extmod_btree PRIVATE
+ ${MICROPY_LIB_BERKELEY_DIR}/include
+ )
- target_compile_definitions(micropy_extmod_btree PRIVATE
- BERKELEY_DB_CONFIG_FILE="${BERKELEY_DB_CONFIG_FILE}"
- )
+ if(NOT BERKELEY_DB_CONFIG_FILE)
+ set(BERKELEY_DB_CONFIG_FILE "${MICROPY_DIR}/extmod/berkeley-db/berkeley_db_config_port.h")
+ endif()
- # The include directories and compile definitions below are needed to build
- # modbtree.c and should be added to the main MicroPython target.
+ target_compile_definitions(micropy_extmod_btree PRIVATE
+ BERKELEY_DB_CONFIG_FILE="${BERKELEY_DB_CONFIG_FILE}"
+ )
- list(APPEND MICROPY_INC_CORE
- "${MICROPY_LIB_BERKELEY_DIR}/include"
- )
+ # The include directories and compile definitions below are needed to build
+ # modbtree.c and should be added to the main MicroPython target.
- list(APPEND MICROPY_DEF_CORE
- MICROPY_PY_BTREE=1
- BERKELEY_DB_CONFIG_FILE="${BERKELEY_DB_CONFIG_FILE}"
- )
+ list(APPEND MICROPY_INC_CORE
+ "${MICROPY_LIB_BERKELEY_DIR}/include"
+ )
- list(APPEND MICROPY_SOURCE_EXTMOD
- ${MICROPY_EXTMOD_DIR}/modbtree.c
- )
- endif()
+ list(APPEND MICROPY_DEF_CORE
+ MICROPY_PY_BTREE=1
+ BERKELEY_DB_CONFIG_FILE="${BERKELEY_DB_CONFIG_FILE}"
+ )
+
+ list(APPEND MICROPY_SOURCE_EXTMOD
+ ${MICROPY_EXTMOD_DIR}/modbtree.c
+ )
endif()
# Library for mbedtls
@@ -350,5 +345,5 @@ if(MICROPY_PY_LWIP)
${MICROPY_LIB_LWIP_DIR}/include
)
- string(CONCAT GIT_SUBMODULES "${GIT_SUBMODULES} " lib/lwip)
+ list(APPEND GIT_SUBMODULES lib/lwip)
endif()