benchmark
benchmark copied to clipboard
Try removing attempt to set the C++ standard
Fixes #1460 #1462
Let's see what the buildbots make of this.
No, this is wrong.
No, this is wrong.
it's just a draft because i want to see what happens... the compiler used should be free to set it's standard. we already had a fallback to c++0x so the only issue i think would be if someone tries to use a compiler that doesn't support c++11.
if we want to require that then setting CMAKE_CXX_STANDARD
and maybe REQUIRED
is the way to do that.. but i just want to see how necessary it is.
There is absolutely no requirement that a supported compiler version actually happens to have the right (the one you expect, and everyone expects different things) default standard.
first test complete: OSX falls back too far beyond C++11.
next up: setting the standard.
https://cmake.org/cmake/help/latest/policy/CMP0067.html might be relevant.
https://cmake.org/cmake/help/latest/policy/CMP0067.html might be relevant.
nice :)
https://cmake.org/cmake/help/latest/policy/CMP0067.html might be relevant.
nice :)
cmake 3.8+ only .. ubuntu 16.04 is still on 3.5.1: https://launchpad.net/ubuntu/xenial/+source/cmake
try_compile
also doesn't support setting the standard in 3.5.1.
so our older platform support requires explicit --std
flag setting, i think... and for consistency, it suggests we need to do the same in the rest of the project.
until we can drop older platforms, i don't think we can embrace updated cmake norms...
any other ideas, @LebedevRI ?
cmake 3.5.1 sounds really ancient. Even debian old-old-stable has 3.7. I think 3.13 should be an unambiguous dependency.
ubuntu bionic (the oldest LTS ubuntu we support) is 3.10.2 (https://packages.ubuntu.com/bionic/cmake) so i think we can get past 3.8.
it might mean dropping the 14.04 and 16.04 bots but they are really old at this point and we do have a policy on dependencies for a reason.
Sounds reasonable?
Sounds reasonable?
seems like we might just have had our hand forced...
@dmah42 what's the status here?
@dmah42 what's the status here?
i don't remember where i got to. let me see if i can resurrect it.
it builds and passes tests but I'm not sure it's the right thing to do. I would appreciate an ack.
it builds and passes tests but I'm not sure it's the right thing to do. I would appreciate an ack.
Given that we don't want to just happen to build under whatever the standard is default for the compiler that is used, but specifically with C++11, this is the right thing to do.
merged.. now let's see if anyone finds an issue on any unusual platforms with it.