Revision e37294e...
Go back to digest for 3rd June 2012Bug Fixes in Development Tools
Look for ext/hash_map and unordered_map instead of checking gcc's version.
Follow-up to commits 9f8e8f662974a1035ea64f0ab9404b8858a02a57 and
5c59bd61b1df1b963959f086c5202689c084e0f3. The decision of whether to
include <ext/hash_map> or <unordered_map> for gcc/clang was based on
whether gcc > 4.3 was installed or whether clang was being used. The
latter implicitly assumed a recent enough libstdc++ version (ie. >=
4.3) was being used, which might not be the case on systems such as
FreeBSD and possibly OS X.
Instead of checking for compiler versions, we now look for these
headers: CMake first detects whether <unordered_map> is present and,
in case it is not, it looks for <ext/hash_map>. The checks in
languages/cpp/parser/parser.h have been updated as well. This should
cover all the cases being previously detected, as well as fix the
checks for FreeBSD and other systems where the build was failing
before with clang.
Reviewed-by: Millian Wolff
REVIEW: 105067
File Changes
- CMakeLists.txt
- config.h.cmake
- languages/cpp/CMakeLists.txt
- languages/cpp/parser/parser.h