-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
missing build dependencies in the rust build #19714
Comments
This is strange. Makefile target Adding diff --git a/makefiles/cargo-targets.inc.mk b/makefiles/cargo-targets.inc.mk
index 118cb83f7a..24d485be9a 100644
--- a/makefiles/cargo-targets.inc.mk
+++ b/makefiles/cargo-targets.inc.mk
@@ -40,6 +40,10 @@ $(CARGO_COMPILE_COMMANDS): $(BUILDDEPS)
-e 's/"riscv-none-embed"/"riscv32"/g' \
| $(LAZYSPONGE) $@
+$(info BUILDDEPS=$(BUILDDEPS))
+ifeq (,$(filter %preprocessor_successor.h,$(BUILDDEPS)))
+ $(error BUILDDEPS invalid)
+endif
$(CARGO_LIB): $(RIOTBUILD_CONFIG_HEADER_C) $(BUILDDEPS) $(CARGO_COMPILE_COMMANDS) FORCE
$(Q)command -v cargo >/dev/null || ($(COLOR_ECHO) \ should blow if Now I wonder if rather than a dependency issue this is an issue with the CFLAGS being wrong and |
@chrysn if I recall correctly this is fixed, right? |
Yes. It was fixed by RIOT-OS/rust-riot-sys#36. The cause was that some -I CFLAGS that were not set in all compilation units were dropped based on their order of occurrence in compile-commands.json, which in turn is influenced by the OS's unsorted reporting of files in a directory, which was why this was so hard to debug: If the sequence is good on one system, it stays good and doesn't turn bad, and only when the files are all created in a go, it was random whether or not it would occur. Thanks for pinging me; I had forgotten about where this was tracked. |
Description
preprocessor_successor.h
is an auto generated header file included by e.g.auto_init_utils.h
. Hence, it must be generated before any C code is processed. Therefore, it is added toBUILDDEPS
Steps to reproduce the issue
Run a rust build with many jobs.
Expected results
The build succeeds, no race conditions in the build process.
Actual results
Versions
Current master, see https://ci.riot-os.org/details/b083b1ea3ed14081a7ae5f3ac9f38cf4
The text was updated successfully, but these errors were encountered: