diff options
| author | hathach <[email protected]> | 2026-04-02 17:32:45 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2026-04-02 17:32:45 +0700 |
| commit | b77632ebff88cbd9f43c1eec94d6f589dcee336e (patch) | |
| tree | 7702848d6f490178436d06ea2b0099e83f7c1006 /tools | |
| parent | 871b843245666786857f54b7ffc1454d4acad7a0 (diff) | |
update FatFS to R0.16 via abbrev/fatfs dependency
- Add lib/fatfs to deps_mandatory in get_deps.py, pinned to R0.16
(commit 30ca13c6) from github.com/abbrev/fatfs mirror
- Move TinyUSB custom ffconf.h to examples/host/msc_file_explorer/src/
with project-specific settings: FF_CODE_PAGE=437, FF_USE_LFN=1,
FF_FS_RPATH=2, FF_VOLUMES=4, FF_FS_NORTC=1
- get_deps.py removes stock ffconf.h after clone to avoid conflict
- Remove vendored fatfs source files from git tracking
FatFS R0.16 includes important fixes since R0.15:
- Fixed FAT32 FsInfo regression (forced full FAT scan on f_getfree)
- Fixed f_readdir infinite loop (from R0.15b)
- f_getcwd/.. now works on exFAT
- Added FF_FS_CRTIME support
Diffstat (limited to 'tools')
| -rwxr-xr-x | tools/get_deps.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tools/get_deps.py b/tools/get_deps.py index 25b85ac3b..23f015c0d 100755 --- a/tools/get_deps.py +++ b/tools/get_deps.py @@ -8,6 +8,9 @@ from multiprocessing import Pool # Mandatory Dependencies that is always fetched # path, url, commit, family (Alphabet sorted by path) deps_mandatory = { + 'lib/fatfs': ['https://github.com/abbrev/fatfs.git', + '30ca13c62615df0d2e9104ab41256985b96590c1', + 'all'], 'lib/FreeRTOS-Kernel': ['https://github.com/FreeRTOS/FreeRTOS-Kernel.git', 'cc0e0707c0c748713485b870bb980852b210877f', 'all'], @@ -284,6 +287,11 @@ deps_optional = { 'lpc55'], } +# Files to remove after cloning to avoid conflicts with TinyUSB's custom versions +deps_remove_files = { + 'lib/fatfs': ['source/ffconf.h'], +} + # combined 2 deps deps_all = {**deps_mandatory, **deps_optional} @@ -329,6 +337,13 @@ def get_a_dep(d): run_cmd(f"{git_cmd} fetch --depth 1 origin {commit}") run_cmd(f"{git_cmd} checkout FETCH_HEAD") + # Remove files that conflict with TinyUSB's custom versions + if d in deps_remove_files: + for f in deps_remove_files[d]: + fp = p / f + if fp.exists(): + fp.unlink() + return 0 |
