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

Create basic scons-to-bazel rule generator

    • Type: Icon: Improvement Improvement
    • Resolution: Won't Do
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None

      We now have a script that extracts and lists out bazel conversion candidate targets (scons targets without dependencies that haven't been converted to bazel): https://github.com/10gen/mongo/pull/15564

      We're now ready to start converting individual targets. Since there are 1140 scons targets that need to be converted, an entire manual process is going to be painful.

      Create a script that does a best-effort attempt at generating bazel rules for all bazel conversion candidates. The goal is not to generate a perfect rule for every target. This should create mostly-correct rules for most scons targets, but many will likely need human modification.

      Rough outline of the execution plan:

        • Query each target's src files from sconscripts (bazel output: "srcs")
        • Query each target's dependency targets from libdeps (bazel output: "deps")
        • Inspect the #includes of each src file (bazel output: "hdrs")
        • Write the newly generated bazel rule to stdout

       

            Assignee:
            zack.winter@mongodb.com Zack Winter
            Reporter:
            zack.winter@mongodb.com Zack Winter
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: