From fdfe1f53693dcddf9a1cde3a4a66cdfaa959685d Mon Sep 17 00:00:00 2001 From: Borys Jelenski Date: Tue, 19 Jan 2021 14:19:55 +0100 Subject: [PATCH] [EGD-5279] Add building genlittlefs in RT1051 config Additionally, some uninitialized variables in genlittlefs were fixed in order to build it without warnings --- host-tools/CMakeLists.txt | 13 +++++++++++-- host-tools/genlittlefs/CMakeLists.txt | 7 +++++++ host-tools/genlittlefs/mklfs.c | 4 ++-- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/host-tools/CMakeLists.txt b/host-tools/CMakeLists.txt index f7038c8575822dbe164be3b5a7ca3b9ef3625d5e..3677a45379e42ed941d728cfc69b517f1b5c4c4c 100644 --- a/host-tools/CMakeLists.txt +++ b/host-tools/CMakeLists.txt @@ -6,9 +6,18 @@ if (CMAKE_CROSSCOMPILING) COMMAND ${CMAKE_COMMAND} -DCMAKE_BUILD_TYPE:STRING="Release" -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE:PATH="${CMAKE_BINARY_DIR}" - -B"build" + -B"lfsfuse" -H"${CMAKE_SOURCE_DIR}/host-tools/littlefs-fuse" - COMMAND ${CMAKE_COMMAND} --build build --config Release + COMMAND ${CMAKE_COMMAND} --build lfsfuse --config Release + ) + add_custom_target( + genlittlefs ALL + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE:STRING="Release" + -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE:PATH="${CMAKE_BINARY_DIR}" + -B"genlittlefs" + -H"${CMAKE_SOURCE_DIR}/host-tools/genlittlefs" + COMMAND ${CMAKE_COMMAND} --build genlittlefs --config Release ) else() set(_genlittlefs "${CMAKE_BINARY_DIR}/genlittlefs${CMAKE_EXECUTABLE_SUFFIX}") diff --git a/host-tools/genlittlefs/CMakeLists.txt b/host-tools/genlittlefs/CMakeLists.txt index 11f524e690e0196dbca7da63c8bf6c5848e1a060..e29c7ac465c02333eecdbbaa3779be632a92915c 100644 --- a/host-tools/genlittlefs/CMakeLists.txt +++ b/host-tools/genlittlefs/CMakeLists.txt @@ -5,6 +5,13 @@ set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake" ${CMAKE_MODULE_PATH}) find_package(BLKID REQUIRED) +# only add LittleFS subdirectory during a standalone config of genlittlefs +if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) + add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../../module-vfs/thirdparty/lfsfs + ${CMAKE_CURRENT_BINARY_DIR}/lfsfs EXCLUDE_FROM_ALL + ) +endif() + set(GENLITTLEFS_SRCS mklfs.c parse_partitions.c diff --git a/host-tools/genlittlefs/mklfs.c b/host-tools/genlittlefs/mklfs.c index 19b910420bc4869be766a69d8fb819dc96ed22a1..09e5a6d9d86998462274c6b1b71c3f65ec780e91 100644 --- a/host-tools/genlittlefs/mklfs.c +++ b/host-tools/genlittlefs/mklfs.c @@ -186,7 +186,7 @@ static int add_to_lfs(lfs_t *lfs, const char *dir, struct lfs_info_summary *summ tgt_dir[0] = '/'; strcpy(tgt_dir + 1, sep_ptr + 1); } - int err; + int err = 0; if (is_dir) { err = create_dir_in_lfs(lfs, tgt_dir, verbose); if (err) { @@ -240,7 +240,7 @@ static void configure_lfs_params(struct lfs_config *lfsc, const struct littlefs_ int main(int argc, char **argv) { - int err; + int err = 0; struct littlefs_opts lopts; struct lfs_config cfg; struct lfs_info_summary prog_summary;