nuttx/tools
anjiahao adddfc3bfd abi_check.py:Check ABI compatibility between different ELF versions.
1. The input consists of multiple static libraries and an ELF file. The tool searches
   for external APIs used by the static libraries, then locates these API function signatures
   in the ELF file, and outputs the results as a JSON file.
2. Using the first feature, with the static libraries unchanged,
   the tool can take a new ELF file and an old ELF file as input, output two JSON files,
   and compare the function signatures of functions with the same name in the two JSON files.
   The comparison includes return values, parameters, and if they are structures,
   it also compares the structure size, member offsets, member types, etc.
3.When the input is a single ELF file, the tool can check if structures with the same name have different members.

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-01-28 18:32:39 +01:00
..
bcm2711 arch/bcm2711, boards/raspberry-pi-4b: Add preliminary support for the BCM2711 and Raspberry Pi 4B. 2024-12-17 16:43:17 +08:00
bl602
ci msvc ci:change arm source to xpack 2026-01-21 19:19:39 +08:00
codeowners docs/codeowners: Add preliminary code owner file 2025-09-05 19:53:06 -04:00
cxd56 fix misspelled names in locally scoped code 2025-05-15 10:12:12 +08:00
esp32 espressif: automate build system for flash enc 2025-12-11 11:29:26 +01:00
esp32c3 tools/espressif: add esptool version check to Espressif build system 2024-10-15 20:42:57 +02:00
esp32s2 espressif: automate build system for flash enc 2025-12-11 11:29:26 +01:00
esp32s3 espressif: automate build system for flash enc 2025-12-11 11:29:26 +01:00
espressif espressif: automate build system for flash enc 2025-12-11 11:29:26 +01:00
imx9 arch/arm64/imx9: Support for imx9 edgelock enclave 2025-03-17 21:35:25 +02:00
licensing tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
lwl docs/guides/lwl: move lwl's README.txt to lwl.rst 2025-12-23 15:20:06 +01:00
mpfs tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
nix tools/nix: move nix flakes to tools/ 2025-08-28 10:04:01 +08:00
pic32 tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
pynuttx sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
rp23xx tools/rp{2040,23xx}: Ensure that picotool is found or built 2025-08-22 00:30:28 +08:00
rp2040 style: Fix case statement formatting in power management callbacks. 2026-01-10 12:59:14 -03:00
simwifi fix(udhcpc): missing interface name in log message 2025-05-05 09:32:31 +08:00
zds tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
.gitignore build: add initial cmake build system 2023-07-08 13:50:48 +08:00
abi_check.py abi_check.py:Check ABI compatibility between different ELF versions. 2026-01-28 18:32:39 +01:00
b16.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
bdf-converter.c tools/bdf-converter: Fix loop termination condition. 2025-03-18 10:12:23 -03:00
btdecode.sh tools/btdecode.sh: add optional elf file parameter 2024-09-30 08:44:18 +08:00
build-globals.sh libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
callstack.py tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
cfgdefine.c libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
cfgdefine.h tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
cfgparser.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
cfgparser.h tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
checkkconfig.py tools[feat]: add config check tool 2026-01-14 17:50:18 +01:00
checkpatch.sh tools/checkpatch.sh: Improved error display on GitHub 2025-11-14 16:50:25 -03:00
checkrelease.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
CMakeLists.txt tools/CMakeLists.txt: Improvements to CMakeLists.txt file 2025-05-17 16:09:20 +08:00
cmpconfig.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
cnvwindeps.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
Config.mk espressif: improve esp-hal-3rdparty handling 2025-12-27 11:38:13 +08:00
configure.bat tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
configure.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
configure.sh tools/configure.sh: align tools/configure.sh with CmakeLists.txt 2025-09-05 09:50:11 +08:00
configure_completion.bash tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
convert-comments.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
copydir.bat style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
copydir.sh style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
coredump.py coredump.py:bug fix python file not have rename 2024-10-30 12:29:22 +08:00
csvparser.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
csvparser.h tools/mksyscall: fix 106: Unexpected end of line: "FAR char * co" 2025-03-08 12:39:24 +08:00
D.defs debug symbol level: Use config instead 2024-12-04 22:36:45 +08:00
define.bat style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
define.sh style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
detab.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
Directories.mk libbuitin/compiler_rt: Supports separate builtin rt.builtins or rt.profile 2024-11-12 16:12:53 +08:00
discover.py tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
doreleasenotes.py tools/doreleasenotes: remove deprecater API 2025-05-27 20:34:54 +08:00
Export.mk tools: Export LLVM flags for kernel build 2025-01-26 20:22:35 +08:00
find_symbol_callers.sh toos/scipts: add script to find symbol caller 2025-12-31 08:47:23 -03:00
flash_writer.py fix misspelled names in locally scoped code 2025-05-15 10:12:12 +08:00
FlatLibs.mk libbuitin/compiler_rt: Supports separate builtin rt.builtins or rt.profile 2024-11-12 16:12:53 +08:00
gcov.py gcov: Refactoring the implementation framework of gcov 2025-07-03 00:17:58 +08:00
gdbserver.py gdbserver.py:add x86_64 arch 2026-01-24 23:31:43 +08:00
gencromfs.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
host_info_dump.py tools/host_info_dump.py: fix UnboundLocalError: local variable 'vendor_specific_module_path' referenced before assignment 2025-04-10 06:43:01 +08:00
host_info_parse.py tools/Unix.mk: Add host_info target to print nxdiag output 2025-01-07 01:03:44 +08:00
ide_exporter.py tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
incdir.bat tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
incdir.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
incdir.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
indent.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
initialconfig.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
jlink-nuttx.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
kasan_global.py kasan/globals: fix compile error 2024-12-05 20:37:47 +08:00
kconfig.bat tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
kconfig2html.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
KernelLibs.mk libbuitin/compiler_rt: Supports separate builtin rt.builtins or rt.profile 2024-11-12 16:12:53 +08:00
LibTargets.mk clang:libclang_rt.builtins-xxx.a supports builtin 2024-10-28 16:38:45 +08:00
link.bat tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
link.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
lowhex.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
macar-qcs.sh tools/macar-qcs.sh: migrate license to ASF 2024-12-16 14:14:55 +08:00
Make.defs tools: Rename apps-or-nuttx-Make.defs to Make.defs 2024-10-17 07:55:02 +08:00
Makefile.host tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
merge_config.py install kconfiglib using apt repo 2024-12-02 13:43:29 +08:00
mkallsyms.py tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkallsyms.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkconfig.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkconfigvars.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkctags.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkdeps.c tools/mkdeps: increase MAX_BUFFER from 16384 to 65536 2024-10-31 08:55:07 +08:00
mkexport.sh build/export: Fix missing gnu-elf.ld copy and toolchain script. 2025-09-14 10:44:51 +08:00
mkfsdata.pl tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkfsdata.py style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
mknulldeps.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkromfsimg.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mksymtab.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mksyscall.c tools/syscall: Resolve compile time warning on address validation. 2023-06-28 08:47:07 +08:00
mkversion.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
mkwindeps.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
netusb.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
noteinfo.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
nxstyle.c arch/tricore: record trapinfo for coredump 2026-01-15 16:09:13 -03:00
nxtagspkgsfetch.sh tools/nxtagspkgsfetch.sh: Fetch tags packages for NuttX and Apps. 2025-12-17 08:12:44 -03:00
parsecallstack.py tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
parsememdump.py mm: dump node overheadp during memdump 2024-11-25 00:42:34 +08:00
parsetrace.py tools/parsetrace.py: Fix get_typesize bug in parsetrace.py 2026-01-26 23:22:41 +01:00
pre-commit tools: add git pre-commit hook based on checkpatch.sh 2023-05-03 14:42:34 +02:00
process_config.py cmake(enhance):include-style defconfig can modified via menuconfig 2026-01-15 15:42:17 -03:00
process_config.sh tools/process_config.sh: Fix sed errors 2025-07-03 09:41:56 -03:00
ProtectedLibs.mk libbuitin/compiler_rt: Supports separate builtin rt.builtins or rt.profile 2024-11-12 16:12:53 +08:00
refresh.sh tools: Modify refresh.sh to support update all configs from a board 2025-06-21 04:21:10 +08:00
rmcr.c tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
Rust.defs tools/Rust.defs: Use 'gnu' target for Linux and 'darwin' for macOS 2025-01-28 16:43:37 +08:00
sethost.sh CI: Improved speed to build nuttx on MSYS2 job 2025-03-26 22:35:19 +08:00
showsize.sh tools/showsize.sh: support pass custom nuttx executable 2024-10-13 02:11:12 +08:00
showstack.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
simbridge.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
simhostroute.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
simlaunch.sh sim:support sim elf and dynamic libs package in post build 2024-11-06 01:56:44 +08:00
size_report.py fix: TreeNode has same attribute with NodeMixin 2023-10-09 17:51:01 -04:00
splashscreen_converter.py drivers/video/fb.c: Add startup splashscreen option 2025-04-30 06:38:05 -03:00
stm32_pinmap_tool.py fix misspelled names in locally scoped code 2025-05-15 10:12:12 +08:00
Swift.defs debug symbol level: Use config instead 2024-12-04 22:36:45 +08:00
testbuild.ps1 tools/testbuild.ps1: Windows fix the redirect error stream 2025-06-18 23:14:18 +08:00
testbuild.sh boards/citest: rename run scripts to run.sh 2026-01-04 09:40:12 -03:00
toolchain.cmake.export arch/crt0.c: revert entry _start 2025-12-10 19:06:04 +08:00
uncrustify.cfg style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
Unix.mk tools: Update Unix.mk and savedefconfig.cmake for CONFIG_ARCH_BOARD_COMMON 2025-05-02 09:30:34 -03:00
unlink.bat tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
unlink.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
version.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
Win.mk tools/Unix.mk:make incdir precedence over other targets 2024-10-30 22:14:40 +08:00
xmlrpc_test.py tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
Zig.defs tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
zipme.sh tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00