When the compiler configured to support C++11 (e.g. CXXFLAG contains -std=c++11 is given),
those files are used.
Decoupled unpacker and msgpack_unpacker.
This modification introduced C++11 dependency such as nullptr and unique_ptr.
I will support C++11 and C++03, finally.
Decoupled msgpack.hpp and msgpack.h.
Decoupled sbuffer from msgpack_sbuffer.
Decoupled vrefbuffer from msgpack_vrefbuffer.
Decoupled zbuffer from msgpack_zbuffer.
Added some z_stream initialization.
Removed unpack macros.
Removed CTX_CAST and CTX_REFERENCED.
Embed ctx_ as a member variable (not a pointer).
Modified zone free using C++ way.
https://github.com/msgpack/msgpack-c/pull/20
Removed 'preprocess' from original CMakeLists.txt.
Removed file copy from original CMakeLists.txt.
Removed 'preprocess' from bootstrap.
Removed file copy from bootstrap.
Added erb generated files. Ruby is no longer required.
Moved cases.mpac, cases_compact.mpa, pack_define.h,
pack_template.h, unpack_define.h, unpack_template.h,
and sysdep.h to apropriate location.
If you want to re-generate zone.hpp, define.hpp, and tuple.hpp,
then you execute preprocess.
The patch add serialization operator for the given enum to avoid the use
of a cast which leads to strict-aliasing warnings and the test to fail.
Solution suggested by qehgt.