M host-tools/CMakeLists.txt => host-tools/CMakeLists.txt +11 -2
@@ 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}")
M host-tools/genlittlefs/CMakeLists.txt => host-tools/genlittlefs/CMakeLists.txt +7 -0
@@ 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
M host-tools/genlittlefs/mklfs.c => host-tools/genlittlefs/mklfs.c +2 -2
@@ 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;