M .gitmodules => .gitmodules +3 -3
@@ 61,9 61,6 @@
[submodule "host-tools/littlefs-fuse/lfsfuse"]
path = host-tools/littlefs-fuse/lfsfuse
url = https://github.com/littlefs-project/littlefs-fuse.git
-[submodule "module-vfs/thirdparty/lfsfs/littlefs"]
- path = module-vfs/thirdparty/lfsfs/littlefs
- url = https://github.com/littlefs-project/littlefs.git
[submodule "module-utils/sml"]
path = third-party/sml/src
url = https://github.com/boost-ext/sml
@@ 84,3 81,6 @@
[submodule "third-party/parallel-hashmap/src"]
path = third-party/parallel-hashmap/src
url = https://github.com/greg7mdp/parallel-hashmap.git
+[submodule "third-party/littlefs/src"]
+ path = third-party/littlefs/src
+ url = https://github.com/littlefs-project/littlefs.git
M host-tools/genlittlefs/CMakeLists.txt => host-tools/genlittlefs/CMakeLists.txt +2 -2
@@ 7,8 7,8 @@ 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
+ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../../third-party/littlefs
+ ${CMAKE_CURRENT_BINARY_DIR}/littlefs EXCLUDE_FROM_ALL
)
endif()
M host-tools/genlittlefs/lfs_ioaccess.c => host-tools/genlittlefs/lfs_ioaccess.c +2 -2
@@ 1,7 1,7 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
-#include <littlefs/lfs.h>
+#include <lfs.h>
#include "lfs_ioaccess.h"
#include "parse_partitions.h"
M host-tools/genlittlefs/mklfs.c => host-tools/genlittlefs/mklfs.c +1 -1
@@ 1,7 1,7 @@
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
-#include <littlefs/lfs.h>
+#include <lfs.h>
#include "lfs_ioaccess.h"
#include "parse_partitions.h"
#include "parse_args.h"
M module-vfs/CMakeLists.txt => module-vfs/CMakeLists.txt +13 -15
@@ 5,8 5,6 @@ project(module-vfs VERSION 1.0
module_is_test_entity()
-add_subdirectory(thirdparty/lfsfs)
-
set(FF_FAT_SOURCES_THIRDPARTY
${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/fatfs/source/ff.c
${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/fatfs/source/ffunicode.c
@@ 51,7 49,6 @@ endif()
add_library(${PROJECT_NAME} STATIC ${SOURCES} ${BOARD_SOURCES})
-
# Board specific compilation definitions,options,include directories and features
target_compile_definitions(${PROJECT_NAME} PUBLIC ${PROJECT_CONFIG_DEFINITIONS})
target_compile_definitions(${PROJECT_NAME} PUBLIC ${PROJECT_TARGET})
@@ 63,26 60,27 @@ target_compile_features(${PROJECT_NAME} PUBLIC ${TARGET_COMPILE_FEATURES})
target_compile_options(${PROJECT_NAME} PUBLIC ${TARGET_COMPILE_OPTIONS})
target_link_options(${PROJECT_NAME} PUBLIC ${TARGET_LINK_OPTIONS})
-target_compile_definitions(${PROJECT_NAME}
- PUBLIC
-)
-
target_include_directories(${PROJECT_NAME}
- PUBLIC
- ${CMAKE_CURRENT_SOURCE_DIR}/include/user
+ PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/user/
${CMAKE_CURRENT_SOURCE_DIR}/drivers/include
-)
-
-target_include_directories(${PROJECT_NAME}
- PRIVATE
+ PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/include/internal
${CMAKE_CURRENT_SOURCE_DIR}/drivers/include/thirdparty/fatfs
${CMAKE_CURRENT_SOURCE_DIR}/drivers/include/thirdparty
${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/fatfs/source
)
-target_link_libraries(${PROJECT_NAME} PUBLIC ${TARGET_LIBRARIES} module-os module-sys module-bsp module-utils)
-target_link_libraries(${PROJECT_NAME} PRIVATE littlefs)
+target_link_libraries(${PROJECT_NAME}
+ PUBLIC
+ ${TARGET_LIBRARIES}
+ module-os
+ module-sys
+ module-bsp
+ module-utils
+ PRIVATE
+ littlefs::littlefs
+)
if (${ENABLE_TESTS})
add_subdirectory(tests)
M module-vfs/drivers/include/purefs/fs/drivers/directory_handle_littlefs.hpp => module-vfs/drivers/include/purefs/fs/drivers/directory_handle_littlefs.hpp +2 -2
@@ 1,10 1,10 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
#include <purefs/fs/directory_handle.hpp>
-#include <littlefs/lfs.h>
+#include <lfs.h>
namespace purefs::fs::drivers
{
M module-vfs/drivers/include/purefs/fs/drivers/file_handle_littlefs.hpp => module-vfs/drivers/include/purefs/fs/drivers/file_handle_littlefs.hpp +2 -2
@@ 1,10 1,10 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
#include <purefs/fs/file_handle.hpp>
-#include <littlefs/lfs.h>
+#include <lfs.h>
namespace purefs::fs::drivers
{
M module-vfs/drivers/include/purefs/fs/drivers/mount_point_littlefs.hpp => module-vfs/drivers/include/purefs/fs/drivers/mount_point_littlefs.hpp +2 -2
@@ 1,8 1,8 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
#include <purefs/fs/mount_point.hpp>
-#include <littlefs/lfs.h>
+#include <lfs.h>
namespace purefs::fs::drivers
{
M module-vfs/drivers/src/purefs/fs/filesystem_littlefs.cpp => module-vfs/drivers/src/purefs/fs/filesystem_littlefs.cpp +1 -1
@@ 9,7 9,7 @@
#include <purefs/blkdev/disk_manager.hpp>
#include <purefs/blkdev/disk_handle.hpp>
#include <purefs/fs/mount_flags.hpp>
-#include <littlefs/lfs.h>
+#include <lfs.h>
#include <log/log.hpp>
#include <climits>
M module-vfs/drivers/src/thirdparty/littlefs/lfs_glue.cpp => module-vfs/drivers/src/thirdparty/littlefs/lfs_glue.cpp +1 -1
@@ 1,7 1,7 @@
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include <littlefs/volume_mapper.hpp>
-#include <littlefs/lfs.h>
+#include <lfs.h>
#include <purefs/blkdev/disk_handle.hpp>
#include <purefs/blkdev/disk_manager.hpp>
#include <log/log.hpp>
D module-vfs/thirdparty/lfsfs/CMakeLists.txt => module-vfs/thirdparty/lfsfs/CMakeLists.txt +0 -40
@@ 1,40 0,0 @@
-cmake_minimum_required(VERSION 3.14)
-
-project(littlefs LANGUAGES C)
-
-include(thirdparty OPTIONAL)
-
-set(LIBLITTLEFS_SRCDIR littlefs)
-set(LIBLITTLEFS_INCDIR include)
-set(LIBLITTLEFS_TARGET ${PROJECT_NAME})
-
-set(LIBLITTLEFS_SOURCES
- ${LIBLITTLEFS_SRCDIR}/lfs.c
- ${LIBLITTLEFS_SRCDIR}/lfs_util.c
- ${LIBLITTLEFS_SRCDIR}/bd/lfs_filebd.c
- ${LIBLITTLEFS_SRCDIR}/bd/lfs_rambd.c
- ${LIBLITTLEFS_SRCDIR}/bd/lfs_testbd.c
-)
-
-set( LIBLITTLEFS_PUBLIC_INCLUDES ${LIBLITTLEFS_INCDIR} )
-set( LIBLITTLEFS_PRIVATE_INCLUDES ${LIBLITTLEFS_SRCDIR} )
-
-
-add_library( ${LIBLITTLEFS_TARGET} STATIC ${LIBLITTLEFS_SOURCES} )
-
-#target_compile_definitions(${LIBLITTLEFS_TARGET} PRIVATE LFS_YES_TRACE )
-target_compile_definitions(${LIBLITTLEFS_TARGET} PUBLIC LFS_THREADSAFE )
-
-if( COMMAND third_party_target_setup )
- third_party_target_setup( ${LIBLITTLEFS_TARGET} )
-endif()
-
-target_include_directories( ${LIBLITTLEFS_TARGET}
- PUBLIC
- ${LIBLITTLEFS_PUBLIC_INCLUDES}
- PRIVATE
- ${LIBLITTLEFS_PRIVATE_INCLUDES}
-)
-if( COMMAND third_party_source_optimization )
- third_party_source_optimization( ${LIBLITTLEFS_SOURCES} )
-endif()
D module-vfs/thirdparty/lfsfs/include/littlefs/lfs.h => module-vfs/thirdparty/lfsfs/include/littlefs/lfs.h +0 -5
@@ 1,5 0,0 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
-// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
-
-#pragma once
-#include "../../littlefs/lfs.h"
D module-vfs/thirdparty/lfsfs/littlefs => module-vfs/thirdparty/lfsfs/littlefs +0 -1
@@ 1,1 0,0 @@
-Subproject commit 1a59954ec64ca168828a15242cc6de94ac75f9d1
M third-party/CMakeLists.txt => third-party/CMakeLists.txt +1 -1
@@ 10,4 10,4 @@ add_subdirectory(minimp3)
add_subdirectory(tinyexpr)
add_subdirectory(parallel-hashmap)
add_subdirectory(protobuf)
-
+add_subdirectory(littlefs)
A third-party/littlefs/CMakeLists.txt => third-party/littlefs/CMakeLists.txt +29 -0
@@ 0,0 1,29 @@
+cmake_minimum_required(VERSION 3.13)
+
+add_library(littlefs STATIC)
+add_library(littlefs::littlefs ALIAS littlefs)
+
+target_sources(littlefs
+ PRIVATE
+ src/lfs.c
+ src/lfs_util.c
+ src/bd/lfs_filebd.c
+ src/bd/lfs_rambd.c
+ src/bd/lfs_testbd.c
+ PUBLIC
+ src/lfs.h
+ src/lfs_util.h
+ src/bd/lfs_filebd.h
+ src/bd/lfs_rambd.h
+ src/bd/lfs_testbd.h
+)
+
+target_compile_definitions(littlefs
+ PUBLIC
+ LFS_THREADSAFE
+)
+
+target_include_directories(littlefs
+ PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
+)
A third-party/littlefs/src => third-party/littlefs/src +1 -0
@@ 0,0 1,1 @@
+Subproject commit 1a59954ec64ca168828a15242cc6de94ac75f9d1