Tips for developing Dawn code

  • Set up your IDE to use clangd:
    • Set "custom_vars": { "checkout_clangd": True } in .gclient (or just use standalone-maximal.gclient).
    • Point your IDE to the binary at third_party/llvm-build/Release+Asserts/bin/clangd.
    • Use the compile commands from out/YourBuildDir/compile_commands.json. These are generated by gn gen.
  • Build/run as much stuff as possible locally, to avoid finding bugs on CQ:
    • Use scripts/standalone-maximal.gclient instead of standalone.gclient.
    • Use scripts/args-maximal.gn as reference for building as much as possible
    • Run gn gen --check to locally run the check that C++ includes match the build files.