summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2015-04-15Fix iOS buildPaul Gardiner
An incorrect dependence was causing attemtps to build namedump for arm
2015-04-09Add convenience make targets: make release and make debug.Tor Andersson
2015-04-08Add docs/example.c and docs/multi-threaded.c to 'make examples' target.Tor Andersson
Also update the examples for the recent API changes and make them build under MSVC.
2015-04-07Compile windows resource file when building with MinGW.Tor Andersson
2015-04-06Add mutool pages subcommand.Robin Watts
Inspired by bug 695823. Mutool can now dump the sizes and orientations for pages within a given file.
2015-04-01Fix build for MinGW.Tor Andersson
The pdfapp files live in platform/x11 for both the X11 and win32 builds. Our curl submodule does not build cleanly on MinGW, so skip that variant.
2015-03-25Bug 695854: Enable building of MuPDF viewer using MINGW.Robin Watts
Based on changes supplied by mt-82@gmx.org, but bent to be more in keeping. The actual building with MINGW is untested. We merely verify that these do not break the existing builds. With a bit of luck they should work though.
2015-03-24Rework handling of PDF names for speed and memory.Robin Watts
Currently, every PDF name is allocated in a pdf_obj structure, and comparisons are done using strcmp. Given that we can predict most of the PDF names we'll use in a given file, this seems wasteful. The pdf_obj type is opaque outside the pdf-object.c file, so we can abuse it slightly without anyone outside knowing. We collect a sorted list of names used in PDF (resources/pdf/names.txt), and we add a utility (namedump) that preprocesses this into 2 header files. The first (include/mupdf/pdf/pdf-names-table.h, included as part of include/mupdf/pdf/object.h), defines a set of "PDF_NAME_xxxx" entries. These are pdf_obj *'s that callers can use to mean "A PDF object that means literal name 'xxxx'" The second (source/pdf/pdf-name-impl.h) is a C array of names. We therefore update the code so that rather than passing "xxxx" to functions (such as pdf_dict_gets(...)) we now pass PDF_NAME_xxxx (to pdf_dict_get(...)). This is a fairly natural (if widespread) change. The pdf_dict_getp (and sibling) functions that take a path (e.g. "foo/bar/baz") are therefore supplemented with equivalents that take a list (pdf_dict_getl(... , PDF_NAME_foo, PDF_NAME_bar, PDF_NAME_baz, NULL)). The actual implementation of this relies on the fact that small pointer values are never valid values. For a given pdf_obj *p, if NULL < (intptr_t)p < PDF_NAME__LIMIT then p is a literal entry in the name table. This enables us to do fast pointer compares and to skip expensive strcmps. Also, bring "null", "true" and "false" into the same style as PDF names. Rather than using full pdf_obj structures for null/true/false, use special pointer values just above the PDF_NAME_ table. This saves memory and makes comparisons easier.
2015-02-25iOS: Suppress warnings about unused functionsJoseph Heenan
There are a fair number of warnings about unused functions, mostly in third-party modules, and we would like the build to be warning free. We need to change the main Makefile, as -Wall is currently added in Makerules, and we need our -Wno-unused-function in XCFLAGS to be after -Wall on the command line for it to have any effect.
2015-02-23Merge branch 'html'Tor Andersson
Conflicts: Makefile
2015-02-17Add ctx parameter and remove embedded contexts for API regularity.Tor Andersson
Purge several embedded contexts: Remove embedded context in fz_output. Remove embedded context in fz_stream. Remove embedded context in fz_device. Remove fz_rebind_stream (since it is no longer necessary). Remove embedded context in svg_device. Remove embedded context in XML parser. Add ctx argument to fz_document functions. Remove embedded context in fz_document. Remove embedded context in pdf_document. Remove embedded context in pdf_obj. Make fz_page independent of fz_document in the interface. We shouldn't need to pass the document to all functions handling a page. If a page is tied to the source document, it's redundant; otherwise it's just pointless. Fix reference counting oddity in fz_new_image_from_pixmap.
2015-02-05Fix makefile dependencies (gen_font_droid.h is no more).Tor Andersson
2015-02-03Update URW fonts.Tor Andersson
Add the new URW base fonts that include greek and cyrillic scripts. These new fonts remove the need for DroidSans as a generic fallback font.
2014-12-03html: CSS lexer and parser.Tor Andersson
2014-12-03html: Add scaffolding.Tor Andersson
2014-07-17Add cscope makefile targets.Tor Andersson
2014-06-10Fix library/header version error message and makefile dependency.Tor Andersson
2014-05-29Fix 694093: add vertical variant of CJK fallback font.Tor Andersson
Replace the DroidSansFallback TTF files with a TTC that has two fonts: The original and a copy where the OpenType 'vert' substitution lookup has been pre-applied by copying the uniXXXX.vert glyph data to uniXXXX.
2014-05-20Build libcurl as part of the 'make third' rule...Tor Andersson
...without adding it to the standard list of required third party dependencies.
2014-05-10Fix 694698: Support 32-bit values in CMaps.Tor Andersson
Increasing the existing data structure to 32-bit values would bloat the data tables too much. Simplify the data structure and use three separate range tables for lookups -- one with small 16-bit to 16-bit range lookups, one with 32-bit range lookups, and a final one for one-to-many lookups. This loses the range-to-table optimization we had before, but even with the extra ranges this necessitates, the total size of the compiled binary CMap data is smaller than if we were to extend the previous scheme to 32 bits.
2014-05-08Fix curl build with thirdparty module when system curl is available too.Tor Andersson
2014-03-25Split mjs script generation to separate tool.Tor Andersson
It has no real reason to live in mudraw, and it does pull in the javascript dependency via pdf-form.c.
2014-03-25Add MuJS submodule, implementation and build.Tor Andersson
Adds simpler choice of Javascript library to makefiles. Will prefer in order: MuJS, JavaScriptCore, V8, none based on HAVE_MUJS, HAVE_JSCORE, and HAVE_V8. For simplicity, we build mujstest even with no javascript implementation.
2014-02-10Bug 695022: Add TIFF format handlerRobin Watts
Patch from Thomas Fach-Pedersen. Many thanks! Add a new format handler that copes with TIFF files. This replaces the TIFF functionality within the image format handler, and is better because this copes with multiple images (as one image per page).
2013-12-16iOS: add javascript supportPaul Gardiner
2013-11-28Put thirdparty config headers in separate directories.Tor Andersson
Only -I the config header directory if building the thirdparty library, not if using the system library. Fix bug 694808.
2013-11-26Import URW fonts version 1.10 converted to CFF by FontForge.Tor Andersson
2013-11-11Remove unneccessary CURL_CFLAGS from non-curl make targets.Tor Andersson
2013-11-11Fix Makefile output directory dependency for curl library.Tor Andersson
Don't call mkdir explicitly in the build rule. Use the ALL_DIR variable.
2013-09-03Fix header file dependencies on tool source files.Tor Andersson
2013-09-03Add FZ_VERSION define. Check header and library version compatibility.Tor Andersson
2013-08-20Include platform source files in "make tags".Tor Andersson
2013-08-14Fix build of curl on macosx.Tor Andersson
Only build mupdf-x11-curl if the curl thirdparty library exists.
2013-07-26Add script to create source tarballs using git-archive.Tor Andersson
2013-07-19Add mupdf-curl appRobin Watts
Windows and X11. Allows files to be fetched and displayed as they are downloaded both with and without linearization, using hints if available.
2013-07-11Add documentation files to make install target.Tor Andersson
2013-07-11Prepare for multiple viewer application targets in makefile.Tor Andersson
2013-06-24Fix "make all-nojs" target.Tor Andersson
2013-06-20Fix default make target.Tor Andersson
2013-06-20Update source, makefiles and win32 projects.Tor Andersson
2013-06-18Add gen_ prefix to generated header files.Tor Andersson
2013-06-18Fix makefile header dependencies.Tor Andersson
2013-06-18Split pdf.h into subheaders.Tor Andersson
2013-06-18Split fitz.h into subheaders.Tor Andersson
2013-06-18Merge common and internal headers into one.Tor Andersson
2013-06-18Move header files into separate include directory.Tor Andersson
2013-06-12Some Makefile cleanups.Tor Andersson
2013-06-08Add ctags make target.Tor Andersson
2013-05-30Delete libraries before updating them.Tor Andersson
Makes sure that stale object files are cleared out to prevent build skew if a file is renamed or removed.
2013-05-30Fix header file dependencies and X11 CFLAGS in Makefile.Tor Andersson