Skip to content
  • 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