`ar s` seems to be widely supported for a very long time:
- at least binutils 2.10 (June 2000)
- at least Darwin 8.0 (April 2005)
- since FreeBSD 3.0 (October 1998)
Note: Most of other (non-widely used) toolsets do not call `ranlib` and do not call `ar` with `s` flag either. I have no idea if they are correct or not, so I am not touching them here.
The reason for limiting links to one at a time is long obsolete. Hence
we can remove almost all uses of JAM_SEMAPHORE to impose that
one-link-at-a-time limit.
* Added cxxstd value 20 for C++20.
The -std=c++20 is supported by clang 10.
* Updated cxxstd=latest for clang 5.0 and newer.
clang 5.0 supports -std=c++17. clang 6.0 supports -std=c++2a.
clang 10.0 supports -std=c++20.
* Updated cxxstd=latest for gcc.
gcc 4.9 supports -std=c++14. gcc 6 supports -std=c++17. gcc 10 will support
-std=c++20.
* Added support for cxxstd=20 to toolsets that don't support C++20.