Better <bits/c++config.h> detection
authorElizabeth Smith <elizabeths@fb.com>
Wed, 23 Apr 2014 20:09:53 +0000 (13:09 -0700)
committerDave Watson <davejwatson@fb.com>
Tue, 20 May 2014 19:53:51 +0000 (12:53 -0700)
commit0630bb0f685024915a8b3c7dd11ec43b7ac7cdd9
tree857fd9d587914c1c587d31e2a03cd39971b91d5a
parentaafd8ff9151615a8de09682d41d1c29966e4c8fe
Better <bits/c++config.h> detection

Summary:
When worrying about only 2 cpp libraries, detection of "is this libstdc++ or libc++" works, but when throwing in a third option (msvc) this becomes a very brittle way of detecting features.  Also depending on how clang is used it may or may not have this header about

Changed to instead use configuration value for "do we have this header file" for including bits/c++config.h and changed the logic to be identical in all three use cases

Test Plan: fbmake runtests

Reviewed By: njormrod@fb.com

FB internal diff: D1291547
folly/FBString.h
folly/Range.h
folly/Traits.h
folly/configure.ac