Closed
Description
A CI build failed building mpy_cross with:
make: Entering directory '/home/runner/work/circuitpython/circuitpython/mpy-cross'
Use make V=1, make V=2 or set BUILD_VERBOSE similarly in your environment to increase build verbosity.
QSTR updated
../supervisor/shared/translate.c:34:10: fatal error: genhdr/compression.generated.h: No such file or directory
#include "genhdr/compression.generated.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [build/supervisor/shared/translate.o] Error 1
../py/mkrules.mk:55: recipe for target '0j' failed
make: *** Waiting for unfinished jobs....
make: Leaving directory '/home/runner/work/circuitpython/circuitpython/mpy-cross'
This can be reproduced 100% by
make -C mpy-cross clean
make -C mpy-cross build/supervisor/shared/translate.o
I'm deep in the middle of a different thing and it was more convenient to prepare an issue than a PR, but the fix is this:
diff --git a/mpy-cross/mpy-cross.mk b/mpy-cross/mpy-cross.mk
index de96305cb..471a32515 100644
--- a/mpy-cross/mpy-cross.mk
+++ b/mpy-cross/mpy-cross.mk
@@ -78,4 +78,6 @@ endif
OBJ = $(PY_O)
OBJ += $(addprefix $(BUILD)/, $(SRC_C:.c=.o))
+$(BUILD)/supervisor/shared/translate.o: $(HEADER_BUILD)/qstrdefs.generated.h
+
include $(TOP)/py/mkrules.mk
This is a problem with mpy-cross only because supervisor has a .mk file which also specifies this dependency, but that mk file is not used by mpy-cross.