Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-46519

Regenerating ninja does not require to rebuild the world

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.4.0-rc4, 4.7.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • ALL
    • v4.4
    • Dev Platform 2020-03-09, Dev Platform 2020-04-20, Dev Platform 2020-05-04

      @mathias.stearn pointed out on Slack that forcing the implicit dep on the ninja file is incorrect:

      There are a few inaccuracies there. For one thing, ninja automatically makes command lines the equivalent of input edges so that if the command line changes, 
      the target will be rebuilt (except for generator=1 targets, which should only be the build.ninja file itself). So we don't need to do anything special to make sure that
       things get rebuilt in that case. It also sorta-kinda makes everything that the build.ninja task depends on have an order-only edge on build.ninja implicitly 
      (really, if the build.ninja needs to be updated, it will do that first and reparse (repeatedly) before scheduling anything that isn't on the path to regenerating build.ninja). 
      

      We forced this edge before we started using generator=1 which is why we needed it then but no longer do. Meson does not behave this way either.

            Assignee:
            andrew.morrow@mongodb.com Andrew Morrow (Inactive)
            Reporter:
            mathew.robinson@mongodb.com Mathew Robinson (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: