fix(build): Fix module changes not getting picked up
Previously, we left out the dependency of the QSTR header on `modules.h`. This was done to prevent rebuilds of the entire MicroPython sources whenever a Pycardium module is changed. This leads to issues where QSTRs got out of sync and weird errors like the following could happen: import foo_module Exception: No module `abc_def` (a different string than expected) Attempt to fix this by only updating the QSTR header when the module-header actually changes. For this, a few workarounds are needed: - Replace symlinks with actual copied files so timestamps change on updates. - Add a hack so meson picks up on the dependency of the file in genhdr/ - Rename the outer file so older meson versions don't complain about multiple targets with the same name. Co-authored-by:dx <dequis@dequis.org> Signed-off-by:
Rahix <rahix@rahix.de>
Showing
- lib/micropython/gen-modules.py 35 additions, 15 deletionslib/micropython/gen-modules.py
- lib/micropython/gen-qstr.sh 0 additions, 2 deletionslib/micropython/gen-qstr.sh
- pycardium/genhdr/meson.build 6 additions, 0 deletionspycardium/genhdr/meson.build
- pycardium/meson.build 4 additions, 1 deletionpycardium/meson.build
pycardium/genhdr/meson.build
0 → 100644
Please register or sign in to comment