summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2017-06-22tests: Add -fshort-wchar testsArseny Kapoulkine
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.
2017-04-03Move libFuzzer build to MakefileArseny Kapoulkine
Now the only thing fuzz_setup.sh does is installing new clang; if system clang supports -fsanitize-coverage then fuzz_setup.sh is not required.
2017-03-21Fix path to fuzzing corpusArseny Kapoulkine
2017-02-11tests: Add fuzzing dictionariesArseny Kapoulkine
Hopefully this will allow for better fuzzing coverage
2017-02-09fuzz: Use libFuzzer instead of afl-fuzzArseny Kapoulkine
This allows us to have faster fuzz cycles since the fuzzer is in-process.
2017-01-30Enable branch probabilities for gcovArseny Kapoulkine
2016-11-28scripts: Make archive build reproducibleArseny Kapoulkine
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.
2016-11-27scripts: Move archive.py from testsArseny Kapoulkine
2016-11-13Rewrite archive script into PythonArseny Kapoulkine
Perl version needed Archive::Zip that for some reason is not installed on WSL by default. Use this as an opportunity to remove the last Perl script.
2016-07-28Remove -b gcov argumentArseny Kapoulkine
It interferes in a somewhat strange way with codecov reporting
2016-07-10Makefile: Add -Wcast-qualArseny Kapoulkine
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.
2016-06-10Add CMakeLists to 'make release' now that it's top-levelArseny Kapoulkine
2016-01-26Make cxxstd an argument to MakefileStephan Beyer
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.
2015-10-18Add config=analyzeArseny Kapoulkine
2015-10-17Use -pedantic instead of -WpedanticArseny Kapoulkine
Travis CI strikes once more.
2015-10-17Enable a few more warningsArseny Kapoulkine
2015-10-10Fix 'make release' after clean checkoutArseny Kapoulkine
2015-08-25build: Fix -o gcov optionArseny Kapoulkine
Also upload just pugixml.cpp.gcov to codecov to avoid issues the script has with old gcov.
2015-08-25build: Rework config=coverage to be more robustArseny Kapoulkine
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.
2015-08-25build: Simplify coverage configurationArseny Kapoulkine
Use -coverage option and keep NDEBUG off
2015-06-13Makefile now supports Xcode 7 ASANArseny Kapoulkine
All other sanitizers are still unavailable so only enable them on non-OSX systems.
2015-05-12Add config=sanitize support to MakefileArseny Kapoulkine
2015-04-21Use -std=c++0x instead of -std=c++11Arseny Kapoulkine
2015-04-21Enable C++11 in MakefileArseny Kapoulkine
2015-04-11Use -fno-exceptions flag for PUGIXML_NO_EXCEPTIONS buildArseny Kapoulkine
This makes sure that no exception handling mechanisms are used if PUGXML_NO_EXCEPTIONS is defined.
2015-03-24docs: Use automatically retrieved version for docsArseny Kapoulkine
This eliminates one more hardcoded version from the repo, yay!
2015-03-24Update Makefile to exclude docs/manual folder from releaseArseny Kapoulkine
2015-03-22Add include dependencies to HTML targetsArseny Kapoulkine
2015-03-21Add docs target to MakefileArseny Kapoulkine
2015-03-20Add release target to MakefileArseny Kapoulkine
2015-03-20Makefile refactoringArseny Kapoulkine
Simplify test source specification, disable built-in rules and suffixes
2015-03-13tests: Add support for afl-fuzzArseny Kapoulkine
With the current setup it successfully finds the (fixed) DOCTYPE buffer overrun in ~50 minutes (on a single core).
2015-02-12Don't use xargs -r since it's a GNU extensions.Arseny Kapoulkine
Instead just ignore the result of xargs.
2014-11-01Fix first-time make config=coverage testArseny Kapoulkine
Not sure why xargs -r is not the default...
2014-10-25Add 'coverage' configuration to Makefile.Arseny Kapoulkine
git-svn-id: https://pugixml.googlecode.com/svn/trunk@1079 99668b35-9821-0410-8761-19e4c4f06640
2014-02-09Add Makefile for building and running tests.Arseny Kapoulkine
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