summaryrefslogtreecommitdiff
path: root/platform/java/src/com/artifex
diff options
context:
space:
mode:
Diffstat (limited to 'platform/java/src/com/artifex')
-rw-r--r--platform/java/src/com/artifex/mupdf/fitz/Context.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/platform/java/src/com/artifex/mupdf/fitz/Context.java b/platform/java/src/com/artifex/mupdf/fitz/Context.java
index d8edf378..3ee91822 100644
--- a/platform/java/src/com/artifex/mupdf/fitz/Context.java
+++ b/platform/java/src/com/artifex/mupdf/fitz/Context.java
@@ -15,12 +15,24 @@ public class Context
public static void init() {
if (!inited) {
inited = true;
- System.loadLibrary("mupdf_java");
+ System.loadLibrary(getLibraryName());
if (initNative() < 0)
throw new RuntimeException("cannot initialize mupdf library");
}
}
+ private static String getLibraryName(void) {
+ /* Mac OS always uses 64bit DLLs for any JDK 1.7 or above */
+ if (System.getProperty("os.name").toLowerCase().contains("mac os")) {
+ return "mupdf_java64";
+ }
+ String val = System.getProperty("sun.arch.data.model");
+ if (val != null && val.equals("32")) {
+ return "mupdf_java32"
+ }
+ return "mupdf_java64";
+ }
+
static { init(); }
// FIXME: We should support the store size being changed dynamically.