Skip to content
Snippets Groups Projects

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

Merged rahix requested to merge rahix/meson-micropython into master
  1. Oct 04, 2019
    • rahix's avatar
      fix(build): Fix module changes not getting picked up · d71a6cf8
      rahix authored
      
      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: default avatardx <dequis@dequis.org>
      Signed-off-by: default avatarRahix <rahix@rahix.de>
      d71a6cf8
Loading