GN: toolchain threading cleanup

Remove the thread-unsafe toolchain pointer on the otherwise-threadsafe Settings object. I replaced it with the toolchain label, and moved the is_default flag from the toolchain to the Settings object.

This required that I pass the toolchain around in a few more places, but also simplifies some other cases.

I removed the toolchain prefix from Ninja rules for the default toolchain since that's not necessary any more for GYP compat.

This fixes an annoying double-free in the toolchain manager. I think my current refactor will clean this up in a later phase.

R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/51693002

Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 81ca22ea8eeafe919df5a6599884b6a664a08c62
40 files changed
tree: 666bb73faa23f423c829e79799af98c26bce0da4
  1. tools/