summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2015-06-16Replace gperf-based entity lookup with binary tree lookup.John MacFarlane
The primary advantage is a big reduction in the size of the compiled library and executable (> 100K). There should be no measurable performance difference in normal documents. I detected a slight performance hit (around 5%) in a file containing 1,000,000 entities. * Removed `src/html_unescape.gperf` and `src/html_unescape.h`. * Added `src/entities.h` (generated by `tools/make_entities_h.py`). * Added binary tree lookup functions to `houdini_html_u.c`, and use the data in `src/entities.h`.
2015-05-29Added Ubsan build target, to check for undefined behavior.John MacFarlane
2015-05-04Improved 'make leakcheck'.John MacFarlane
* We now return an error status if anything in the loop fails. * We now check --smart and --normalize options.
2015-04-18make afl: use afl_dictionary, raise timeout for hangs.John MacFarlane
2015-04-14Added afl to .PHONY in Makefile.John MacFarlane
2015-03-29Added roundtrip_test Makefile target.John MacFarlane
Eventually this should be pythonized and put in the cmake test routine.
2015-03-27Update list of buggy re2c versionsNick Wellnhofer
re2c 0.14.2 fixed the issue we were hitting.
2015-03-25Warn about buggy re2c versionsNick Wellnhofer
2015-03-21leakcheck with all formatsJohn MacFarlane
2015-02-23Add Makefile target to fuzz with AFLNick Wellnhofer
Also add a compact test case. As far as I understand, a good test case should exercise many code paths while being as small as possible. There's probably still room for improvement. The variable $AFL_PATH must point to the directory containing the AFL binaries. It can be set as an environment variable or passed to make on the command line.
2015-02-19Added 'Asan' build type.John MacFarlane
`make asan` will link against ASan; the resulting executable will do checks for memory access issues. Thanks @JordanMilne for the suggestion.
2015-02-16Don't require python3 to make cmark.3 man page.John MacFarlane
2015-01-28Added Profile build type, 'make prof' target.John MacFarlane
2015-01-24Makefile: Removed spec- and website- related parts.John MacFarlane
2015-01-24Makefile: Added update-spec target.John MacFarlane
2015-01-24Moved spec.txt to test/ directory.John MacFarlane
2015-01-24Removed obsolete PACKAGEDIR in Makefile.John MacFarlane
2015-01-24Removed some old targets from .PHONY.John MacFarlane
2015-01-24Makefile: Removed JS related stuff.John MacFarlane
2015-01-24Makefile: replaced PROG with CMARK and PROG.John MacFarlane
PROG is overridable, CMARK is not. Slight adjustment to #297.
2015-01-24Prohibit overriding of some Makefile varsNick Wellnhofer
SRCDIR, DATADIR, and PROG should not be overridable.
2015-01-24Remove dependencies from $(BUILDDIR) targetNick Wellnhofer
There's no need to reconfigure if html_unescape.h or case_fold_switch.inc were changed.
2015-01-24Make "test" target depend on "cmake_build"Nick Wellnhofer
cmake doesn't (re)build the project if the tests are run. This change allows to run "make test" without having to run "make" before, for example after modifying source files or from a clean tree.
2015-01-24Pass INSTALL_PREFIX to cmakeNick Wellnhofer
This allows to install to a location other than /usr/local without invoking cmake manually.
2015-01-24Move message from "all" to "cmake_build" targetNick Wellnhofer
2015-01-24Rework Makefile targetsNick Wellnhofer
Since $(BUILDDIR) depended on the phony target "check", it was always considered out-of-date. So it was always rebuilt resulting in running the "cmake" command again even if it was already run. Add a new phony target "cmake_build" that always triggers the cmake build and make $(PROG) depend on it. Running "make" a second time now doesn't run cmake again.
2015-01-23Tweaked uglifyjs options.John MacFarlane
2015-01-23Added target for minified js/dist/commonmark.min.js.John MacFarlane
2015-01-23Put generated commonmark.js in js/dist/ rather than js/.John MacFarlane
2015-01-12Revert "Moved dingus to js directory."John MacFarlane
This reverts commit 5ddf8743f02132f07aad4bb27e0b84c530a706d7.
2015-01-12Cleaned up Makefile.John MacFarlane
2015-01-12Moved templates, makespec.py, and specfilter.hs -> tools/.John MacFarlane
2015-01-12Moved mkcasefold.pl to tools/.John MacFarlane
2015-01-12Moved eslint.json to js/ subdir.John MacFarlane
2015-01-12Moved dingus to js directory.John MacFarlane
2015-01-12Simplified release archive.John MacFarlane
We now simply use git archive (which is also what github would use on their releases page). This is possible because we now include some generated files in the repository. The fact is that this is what people are going to use anyway, so instead of testing two different setups (our hand-crafted archive and the git repo), it's better just to use one.
2015-01-12For benchmarks, read file rather than piping from stdin.John MacFarlane
2015-01-12Use much more multilingual benchmark source.John MacFarlane
Concatenate all languages for progit book.
2015-01-12Reduce size of gperf entity tableNick Wellnhofer
Don't store length of UTF-8 string. It can be computed by NULL-terminating strings shorter than 4 bytes and using strnlen. Use gperf's string pool option. This allows to use an 'int' index into the string pool instead of a pointer and is helpful on 64-bit systems. Shaves about 75 KB off the 32-bit binaries on Linux and 128 KB off the 64-bit binaries on OS X.
2015-01-11Use order-only dependency of cmark.3 on PROG.John MacFarlane
This fixes a problem with some parallel builds.
2015-01-11Makefile tweaks.John MacFarlane
* Use -j2, esp. for testarchive, so we can test parallel builds. * Improved dependencies for cmark.3.
2015-01-11Non-verbose output on 'make testarchive', unless error occurs.John MacFarlane
2015-01-11Removed circular build dependency, improved testarchive.John MacFarlane
2015-01-11Makefile: require PROG for making man3 page.John MacFarlane
2015-01-11'make test' - don't use verbose output.John MacFarlane
Instead, print the test log if any tests fail.
2015-01-11Added cmark.3 man page to repository and archive.John MacFarlane
It simplifies the build if python and the cmark library aren't needed to build the man page. The top level Makefile has a rule to regenerate this when src/cmark.h changes. Updated Makefile.nmake for recent changes. Added case folding data file to archive, since otherwise make fails.
2015-01-10'make leakcheck': check xml and man renderers as well.John MacFarlane
2015-01-09Updated dingus.John MacFarlane
2015-01-07Fixed 'make alltest.md'.John MacFarlane
2015-01-06Merge pull request #269 from jgm/licenseVicent Marti
Updated LICENSE, renamed to COPYING.