diff options
author | Ethan Vrhel <ethan@Michaels-MacBook-Pro.local> | 2021-08-10 14:48:11 -0700 |
---|---|---|
committer | Ethan Vrhel <ethanvrhel@gmail.com> | 2021-08-17 14:51:26 -0700 |
commit | d75125eea1d60809d7a68417dd32075aa6a9a672 (patch) | |
tree | 2cec05e3ecd19afc89ad676640974ccc80357ee5 /demos | |
parent | 9f652f4803d54618f39c843e8b7307de6380e5c7 (diff) | |
download | ghostpdl-d75125eea1d60809d7a68417dd32075aa6a9a672.tar.gz |
Added build scripts for Mac OS X
The build scripts are named the same as the Linux build
scripts except they are suffixed with "_darwin".
Diffstat (limited to 'demos')
-rw-r--r-- | demos/java/gsjava/build.sh | 4 | ||||
-rw-r--r-- | demos/java/gsjava/build_darwin.sh | 62 | ||||
-rw-r--r-- | demos/java/gsjava/src/com/artifex/gsjava/GSAPI.java | 5 | ||||
-rw-r--r-- | demos/java/gsviewer/Manifest.txt | 2 | ||||
-rw-r--r-- | demos/java/gsviewer/build_darwin.sh | 37 | ||||
-rw-r--r-- | demos/java/gsviewer/start_darwin.sh | 5 | ||||
-rw-r--r-- | demos/java/jni/gs_jni/build_darwin.sh | 57 |
7 files changed, 169 insertions, 3 deletions
diff --git a/demos/java/gsjava/build.sh b/demos/java/gsjava/build.sh index 207100727..48817d367 100644 --- a/demos/java/gsjava/build.sh +++ b/demos/java/gsjava/build.sh @@ -6,7 +6,7 @@ echo "Compiling gs_jni C++ source..." cd "../jni/gs_jni" -bash make.sh +bash build.sh cd "../../gsjava" @@ -59,4 +59,4 @@ cd bin echo "Packing gsjava JAR file..." jar cfm "../gsjava.jar" "../Manifest.txt" "com/" -cd ..
\ No newline at end of file +cd .. diff --git a/demos/java/gsjava/build_darwin.sh b/demos/java/gsjava/build_darwin.sh new file mode 100644 index 000000000..4522c219a --- /dev/null +++ b/demos/java/gsjava/build_darwin.sh @@ -0,0 +1,62 @@ +#!/bin/bash + +mkdir -p bin + +echo "Compiling gs_jni C++ source..." + +cd "../jni/gs_jni" + +bash build_darwin.sh + +cd "../../gsjava" + +echo "Compiling gsjava Java source..." +javac -sourcepath src/ -d bin/ \ + "src/com/artifex/gsjava/GSAPI.java" \ + "src/com/artifex/gsjava/GSInstance.java" \ + \ + "src/com/artifex/gsjava/util/AllocationError.java" \ + "src/com/artifex/gsjava/util/ByteArrayReference.java" \ + "src/com/artifex/gsjava/util/BytePointer.java" \ + "src/com/artifex/gsjava/util/NativeArray.java" \ + "src/com/artifex/gsjava/util/NativePointer.java" \ + "src/com/artifex/gsjava/util/Reference.java" \ + "src/com/artifex/gsjava/util/StringUtil.java" \ + \ + "src/com/artifex/gsjava/callbacks/DisplayCallback.java" \ + "src/com/artifex/gsjava/callbacks/ICalloutFunction.java" \ + "src/com/artifex/gsjava/callbacks/IPollFunction.java" \ + "src/com/artifex/gsjava/callbacks/IStdErrFunction.java" \ + "src/com/artifex/gsjava/callbacks/IStdInFunction.java" \ + "src/com/artifex/gsjava/callbacks/IStdOutFunction.java" \ + \ + "src/com/artifex/gsjava/devices/BMPDevice.java" \ + "src/com/artifex/gsjava/devices/Device.java" \ + "src/com/artifex/gsjava/devices/DeviceInUseException.java" \ + "src/com/artifex/gsjava/devices/DeviceNotSupportedException.java" \ + "src/com/artifex/gsjava/devices/DisplayDevice.java" \ + "src/com/artifex/gsjava/devices/EPSDevice.java" \ + "src/com/artifex/gsjava/devices/FAXDevice.java" \ + "src/com/artifex/gsjava/devices/FileDevice.java" \ + "src/com/artifex/gsjava/devices/HighLevelDevice.java" \ + "src/com/artifex/gsjava/devices/JPEGDevice.java" \ + "src/com/artifex/gsjava/devices/OCRDevice.java" \ + "src/com/artifex/gsjava/devices/PCXDevice.java" \ + "src/com/artifex/gsjava/devices/PDFDevice.java" \ + "src/com/artifex/gsjava/devices/PDFImageDevice.java" \ + "src/com/artifex/gsjava/devices/PDFPostscriptDeviceFamily.java" \ + "src/com/artifex/gsjava/devices/PNGDevice.java" \ + "src/com/artifex/gsjava/devices/PNMDevice.java" \ + "src/com/artifex/gsjava/devices/PostScriptDevice.java" \ + "src/com/artifex/gsjava/devices/PSDDevice.java" \ + "src/com/artifex/gsjava/devices/PXLDevice.java" \ + "src/com/artifex/gsjava/devices/TextDevice.java" \ + "src/com/artifex/gsjava/devices/TIFFDevice.java" \ + "src/com/artifex/gsjava/devices/XPSDevice.java" + +cd bin + +echo "Packing gsjava JAR file..." +jar cfm "../gsjava.jar" "../Manifest.txt" "com/" + +cd .. diff --git a/demos/java/gsjava/src/com/artifex/gsjava/GSAPI.java b/demos/java/gsjava/src/com/artifex/gsjava/GSAPI.java index a7c2bba19..fa4a08c00 100644 --- a/demos/java/gsjava/src/com/artifex/gsjava/GSAPI.java +++ b/demos/java/gsjava/src/com/artifex/gsjava/GSAPI.java @@ -35,6 +35,11 @@ public class GSAPI { System.load(libgpdl.getAbsolutePath()); File gsjni = new File("gs_jni.so"); System.load(gsjni.getAbsolutePath()); + } else if (System.getProperty("os.name").equalsIgnoreCase("Mac OS X")) { + File libgpdl = new File("libgpdl.dylib"); + System.load(libgpdl.getAbsolutePath()); + File gsjni = new File("gs_jni.dylib"); + System.load(gsjni.getAbsolutePath()); } else { System.loadLibrary("gs_jni"); } diff --git a/demos/java/gsviewer/Manifest.txt b/demos/java/gsviewer/Manifest.txt index 24a8af4b1..77639479e 100644 --- a/demos/java/gsviewer/Manifest.txt +++ b/demos/java/gsviewer/Manifest.txt @@ -1,3 +1,3 @@ Manifest-Version: 1.0 Class-Path: gsjava.jar ./ -Main-Class: com.artifex.gsviewer.Main
\ No newline at end of file +Main-Class: com.artifex.gsviewer.Main diff --git a/demos/java/gsviewer/build_darwin.sh b/demos/java/gsviewer/build_darwin.sh new file mode 100644 index 000000000..0f3d038a3 --- /dev/null +++ b/demos/java/gsviewer/build_darwin.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +# build gsjava +cd ../gsjava + +bash build_darwin.sh + +cd ../gsviewer + +cp ../gsjava/gsjava.jar gsjava.jar + +mkdir -p bin + +echo "Compiling gsviewer Java source..." +javac -sourcepath src/ -d bin/ \ + -classpath "../gsjava/bin" \ + "src/com/artifex/gsviewer/DefaultUnhandledExceptionHandler.java" \ + "src/com/artifex/gsviewer/Page.java" \ + "src/com/artifex/gsviewer/Settings.java" \ + "src/com/artifex/gsviewer/Document.java" \ + "src/com/artifex/gsviewer/ImageUtil.java" \ + "src/com/artifex/gsviewer/PageUpdateCallback.java" \ + "src/com/artifex/gsviewer/StdIO.java" \ + "src/com/artifex/gsviewer/GSFileFilter.java" \ + "src/com/artifex/gsviewer/Main.java" \ + "src/com/artifex/gsviewer/PDFFileFilter.java" \ + "src/com/artifex/gsviewer/ViewerController.java" \ + \ + "src/com/artifex/gsviewer/gui/ScrollMap.java" \ + "src/com/artifex/gsviewer/gui/SettingsDialog.java" \ + "src/com/artifex/gsviewer/gui/ViewerGUIListener.java" \ + "src/com/artifex/gsviewer/gui/ViewerWindow.java" + +cd bin + +echo "Packing gsviewer JAR file..." +jar cfm "../gsviewer.jar" "../Manifest.txt" "com/" diff --git a/demos/java/gsviewer/start_darwin.sh b/demos/java/gsviewer/start_darwin.sh new file mode 100644 index 000000000..c2941c8cc --- /dev/null +++ b/demos/java/gsviewer/start_darwin.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +export LD_PRELOAD=/usr/lib/libgpdl.dylib + +java -jar gsviewer.jar diff --git a/demos/java/jni/gs_jni/build_darwin.sh b/demos/java/jni/gs_jni/build_darwin.sh new file mode 100644 index 000000000..0dfc65f61 --- /dev/null +++ b/demos/java/jni/gs_jni/build_darwin.sh @@ -0,0 +1,57 @@ +#!/bin/bash + +unset LD_LIBRARY_PATH + +mkdir -p obin + +echo "Compiling gs_jni C++ source..." + +echo "Compile callbacks.cpp" +g++ -c -Wall -O3 -fPIC \ + -std=c++14 \ + -I./include \ + -I./include/darwin \ + -I./../../../../psi \ + -I./../../../../devices \ + "callbacks.cpp" \ + -o "obin/callbacks.o" + +echo "Compile com_artifex_gsjava_GSAPI.cpp" +g++ -c -Wall -O3 -fPIC \ + -std=c++14 \ + -I./include \ + -I./include/darwin \ + -I./../../../../psi \ + -I./../../../../devices \ + "com_artifex_gsjava_GSAPI.cpp" \ + -o "obin/com_artifex_gsjava_GSAPI.o" + +echo "Compile com_artifex_gsjava_util_NativePointer.cpp" +g++ -c -Wall -O3 -fPIC \ + -std=c++14 \ + -I./include \ + -I./include/darwin \ + -I./../../../../psi \ + -I./../../../../devices \ + "com_artifex_gsjava_util_NativePointer.cpp" \ + -o "obin/com_artifex_gsjava_util_NativePointer.o" + +echo "Compile jni_util.cpp" +g++ -c -Wall -O3 -fPIC \ + -std=c++14 \ + -I./include \ + -I./include/darwin \ + -I./../../../../psi \ + -I./../../../../devices \ + "jni_util.cpp" \ + -o "obin/jni_util.o" + +echo "Link" +g++ -dynamiclib -fPIC \ + -Wl \ + -o "gs_jni.dylib" \ + "obin/callbacks.o" \ + "obin/com_artifex_gsjava_GSAPI.o" \ + "obin/com_artifex_gsjava_util_NativePointer.o" \ + "obin/jni_util.o" \ + "../../../../sobin/libgpdl.dylib" |