Age | Commit message (Collapse) | Author |
|
Adopt patch from Tamir Evan. Many thanks.
|
|
Additional flags/compiler settings required for successful
building on MINGW due to harfbuzz's use of strdup.
|
|
|
|
Compile with -Os, -ffunction-sections, -fdata-sections and link
with --gc-sections and -s (strip) to include only the functions and
data tables actually required.
|
|
|
|
|
|
platform/java and platform/android are reorganized:
platform/java
The new JNI Java classes, mupdf_native.{c,h}, Makefile and Makejar.
platform/java/example
The example desktop viewer classes.
platform/android/viewer
The original demo viewer.
ndk-build is used to build libmupdf_java.so,
making reference to mupdf_native.{c,h} in platform/java.
|
|
|
|
"make build=gperf" will now build and link the google perf tools
library into mutool. When mutool is then run, a mutool.prof file
is dropped into the current directory that can be analysed.
|
|
Use LIBS, not LDFLAGS to ensure that the lib appears at the
end of the link line.
|
|
If built with MEMENTO_DETAILS (on by default), we store the
backtrace on every event that affects a block.
Memento_details(address) will display the events that affected
a block (typically malloc, {realloc}*, free), including the
backtrace at each point.
Windows and linux use different mechanisms for this. Windows
loads a DLL and calls windows specific functions - no extra
libraries are required.
Linux also loads a shared object (libbacktrace.so). This is not
present on all platforms, so on platforms where it is not available
we just get addresses. These can be converted using addr2line
(unless ASLR is enabled).
In order for linux to be able to load libbacktrace.so we link in
libdl. If this is not available, define HAVE_LIBDL=no when building
the memento target.
|
|
|
|
|
|
|
|
|
|
Add NaCl cross compile rules to Makerules (together with a tiny
header tweak). Thanks to Robert Bamler for the rules to include.
|
|
Use: "make largefile=yes" to force largefile support on. At the moment
it defaults to off.
|
|
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.
|
|
|
|
|
|
|
|
Debian doesn't have libopenjp2 as a package (whereas gentoo does) so
I've removed it from the control file. You'll need to use the
thirdparty submodule for openjpeg2 until such a time as it exists.
|
|
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.
|
|
|
|
Strip stupid project build settings.
Add proper "make generate" target that uses the 'macosx' sdkroot.
Rewrite cross compile build script to be more future proof.
|
|
Only build mupdf-x11-curl if the curl thirdparty library exists.
|
|
|
|
Tested with msysgit 1.8.3 environment.
|
|
Also sets the -DHAVE_OPENSSL flag.
|
|
|
|
|
|
Only evaluate pkg-config variables if using system libraries,
using a := assignment in Makethird.
This silences warnings if the library is in thirdparty but not
installed on the system.
|
|
|
|
Starting with 61c1f80d36bf1d946ce26d39f9afb99897fc9923 mupdf requires
pkg-config to build. However pkg-config is not supplied with Xcode
and is therefore not routinely installed on Mac OS X. Even if
pkg-config were available it would not accomplish the goal of that
commit (speed up compilation); on Mac OS X compilation would be
slower.
|
|
Use $(shell xxxx) rather than `xxxx` for pkg-config lines to avoid
repeated reevaluation. Also get X libs from pkg-config too.
Thanks to Michael Weber.
|
|
|
|
Requires GNU make and gcc.
|
|
|
|
|
|
When cloning, ensure the locks are done on the new context, not the
old one; this makes no difference except to suppress some spurious
debugging messages.
Also ensure that DEBUG is predefined for Makefile based debug and memento
builds.
Thanks to Bas Weelinck.
|
|
|
|
Mostly redoing the xps_context to xps_document change and adding
contexts to newly written code.
Conflicts:
apps/pdfapp.c
apps/pdfapp.h
apps/x11_main.c
apps/xpsdraw.c
draw/draw_device.c
draw/draw_scale.c
fitz/base_object.c
fitz/fitz.h
pdf/mupdf.h
pdf/pdf_interpret.c
pdf/pdf_outline.c
pdf/pdf_page.c
xps/muxps.h
xps/xps_doc.c
xps/xps_xml.c
|
|
|
|
|
|
Support cross compiling for iPhone and iPad targets using the makefile.
|
|
Import memento files. Update Makefile to support: make build=memento
(like debug, but with memento too).
Tiny tweak to cmapdump to avoid memento building that utility.
|
|
Add libs (to allow for building of libraries without apps, such
as will be required for the WebOS bindings).
Add 2 webos OS setups to the Makerules file to match the 2 default
webos configurations used in the PDK.
|
|
Simple tweak to aid cross compiling.
|
|
Add 2 new makefile options to Mupdf. If CROSSCOMPILE is defined, then we
avoid performing tasks during the build that require a binary to be built
and then executed as part of the build. Currently this is just the cmap
and font dumping steps.
If NOX11 is defined, then we avoid building the X11 app.
Finally, in Makerules, we have a new section to show how to encapsulate
the changes for a given cross compile target. If OS is defined to be
"beagle-cross" then we build using given compilers/options.
|
|
|