These tests are very tricky - in general -fshort-wchar is a dangerous
option because, since the standard library is not compiled with it, you
can't use any functions from either C or C++ standard library without
getting ABI mismatch.
The reason we want to use this is to do coverage testing on UTF32->UTF16
and UTF16->UTF32 conversion paths, that generally aren't hit on
gcc/clang. To do this, we carefully work around any internal calls to
wcslen/wcscmp that pugixml might be doing and don't use any wstring
functions.
We used to use the current timestamp when building the archive; switch to using
the timestamp of the tag with the version we're packaging.
This requires some monkey patching since tarfile module is always using current
timestamp when writing gzip header...
Also exclude archive.py from archive and simplify release file list in Makefile.
It is probably redundant given that we have -Wold-style-cast, but it's better
to warn about casts like this in case we ever need to remove the latter flag.
This determines the used C++ standard.
If you do not want to use a specific C++ standard, use cxxstd=any.
The default is set to c++11.
The "define" PUGIXML_NO_CXX11 is removed from the Makefile
since it is not used in the code anyways.
Use find -exec instead of xargs to work around differences between xargs on OSX
and Linux.
Use -b option of gcov - for some reason gcov on Travis can't find .gcno files
otherwise (old version?).
And finally enable config=coverage again.
This expands and replaces the Travis-specific makefile by adding more options and correctly tracking header dependencies.
Also add wchar_t mode test to Travis configuration.
git-svn-id: http://pugixml.googlecode.com/svn/trunk@971 99668b35-9821-0410-8761-19e4c4f06640