Progress towards #448
Lots of warnings from g++7.2, these are addressed in #423 which hasn't been merged yet.
CMAKE can be cleaned up a bit - may put back in the ability to use older cmake and just throw errors as necessary,
otherwise just force people to use at least cmake 3.1
Extracted CMakelists.txt to doc subdirectory.
Changed paths in doxyfile.in and CMakeLists accordingly.
added doc as subdirectory in main CMakeLists.txt.
-Make CEREAL_THREAD_SAFE be 0 or 1 instead of present or not present
-Move CEREAL_NOEXCEPT to macros.hpp
-instead of individual locks, can now use StaticObject::lock() to request a lock if CEREAL_THREAD_SAFE is enabled. If
not enabled, this call returns an empty object. The lock returned acts just like std::lock_guard, but uses
std::unique_lock internally
-Made a bunch of requests to StaticObject::getInstance const
-Added first stab at multithreaded tests with versioning and polymorphism
- add install target to install config-module for
which creates an INTERFACE library
- add unittest to test config-module
- add option to skip tests and install only
- fix MSVC compatibility problem in CMakeLists.txt
In sandbox_vs.cpp, there is a very strange issue with calling
traits::is_input_serializable that causes icc 15.0.0 to crash.
Everything else works great though.