GN: Use lib.unstripped rather than lib.stripped. Add a toolchain.gni

toolchain.gni introduces:
 root_shlib_dir, shlib_prefix, and shlib_extension

The original goal of this change was to put shlibs under lib/ for Linux / Android, since that's where GYP puts them. However, the lack of support for loadable_module (or more specifically - per target output directory) in GN makes this infeasible at the moment.

This change also mitigates a subtle bug where on Android the unstripped .so is used mistakenly instead of the lib.stripped/ version. It also fixes shlib's link_output being set to the unstripped .so rather than the stripped .so (on Android).

BUG=509771

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

Cr-Commit-Position: refs/heads/master@{#342697}


CrOS-Libchrome-Original-Commit: c3cd5e6fe977af4a3c8b20ccb332896b2c888354
1 file changed
tree: bf4058ea208ea6c1f251a3c545257b095eef62ef
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/