Remove Wno-exit-time-destructors from flatbuffers

flatbuffers was accidentally forwarding this flag to any target
that had it as a dependency. It turns out it's not actually needed
at all to build flatbuffers.

Existing code which requires an exit-time destructor is migrated
to base::NoDestructor. Global with static initialization are converted
to local statics.

Bug: 930731
Change-Id: Ic848d62d73a8870ecc47fa6c477aa3e9e46259a6
Reviewed-on: https://chromium-review.googlesource.com/c/1464199
Reviewed-by: Peter Kasting <pkasting@chromium.org>
Reviewed-by: Rebekah Potter <rbpotter@chromium.org>
Reviewed-by: David Roger <droger@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Nicolas Ouellet-Payeur <nicolaso@chromium.org>
Commit-Queue: Charlie Harrison <csharrison@chromium.org>
Cr-Commit-Position: refs/heads/master@{#631205}
17 files changed