Copy from https://svn.code.sf.net/p/cppcms/code/cppdb/trunk/