Skip to content

fix(build): Fix module changes not getting picked up

rahix requested to merge rahix/meson-micropython into master

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/

Co-authored-by: dx

@schneider: Please test whether this works on your system as well ;)

Merge request reports