[PATCH] Makefile: include scripts/ in compile_commands.json
Jonas Rebmann
jre at pengutronix.de
Tue Feb 17 05:56:41 PST 2026
Although in many cases, C files in scripts/ would, because they rely on
the host toolchain and no unusual compiler flags, work fine in clangd
without a compile commands database, the (typically cross) compile
commands of the first entry in compile_commands.json are applied as
defaults once generated via `make compile_commands.json`.
As valid .cmd files are already present in scripts/ and
gen_compile_commands.py supports reading all cmd files in a subtree
recursively, simply add scripts to the gen_compile_commands.py
invocation. All enabled code in scripts/ is now properly covered by
compile_commands.json
Signed-off-by: Jonas Rebmann <jre at pengutronix.de>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 4296c97ef0..d76e375719 100644
--- a/Makefile
+++ b/Makefile
@@ -1461,7 +1461,7 @@ quiet_cmd_gen_compile_commands = GEN $@
cmd_gen_compile_commands = $(PYTHON3) $< -a $(AR) -o $@ $(filter-out $<, $(real-prereqs))
compile_commands.json: scripts/clang-tools/gen_compile_commands.py \
- $(BAREBOX_OBJS) $(if $(CONFIG_PBL_IMAGE),$(BAREBOX_PBL_OBJS),) FORCE
+ $(BAREBOX_OBJS) $(if $(CONFIG_PBL_IMAGE),$(BAREBOX_PBL_OBJS),) scripts/ FORCE
$(call if_changed,gen_compile_commands)
PHONY += compile_commands.json
---
base-commit: 74393178faf08f8102c7c370ac310c29112e1137
change-id: 20260217-scripts-compile-commands-hack-762a8f440ff2
Best regards,
--
Jonas Rebmann <jre at pengutronix.de>
More information about the barebox
mailing list