559 lines
17 KiB
Diff
559 lines
17 KiB
Diff
--- a/Makefile
|
|
+++ b/Makefile
|
|
@@ -16,6 +16,12 @@
|
|
|
|
include Makethird
|
|
|
|
+LINKER = $(CC)
|
|
+ifeq ($(THIRD_NEEDS_CXX_LINKER),yes)
|
|
+ LINKER = $(CXX)
|
|
+endif
|
|
+THIRD_LINK_LIBS := $(filter-out $(CXX_LINKER_FLAG),$(THIRD_LIBS))
|
|
+
|
|
# --- Configuration ---
|
|
|
|
# Do not specify CFLAGS, LDFLAGS, LIB_LDFLAGS, EXE_LDFLAGS or LIBS on the make
|
|
@@ -81,20 +87,20 @@
|
|
ifdef RANLIB
|
|
RANLIB_CMD = $(QUIET_RANLIB) $(RANLIB) $@
|
|
endif
|
|
-LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(CC) $(EXE_LDFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
|
|
+LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(LINKER) $(EXE_LDFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
|
|
TAGS_CMD = $(QUIET_TAGS) ctags
|
|
OBJCOPY_CMD = $(QUIET_OBJCOPY) $(MKTGTDIR) ; $(LD) -r -b binary -z noexecstack -o $@ $<
|
|
SYMLINK_CMD = $(QUIET_SYMLINK) $(MKTGTDIR) ; ln -sf
|
|
|
|
ifeq ($(shared),yes)
|
|
ifeq ($(USE_ARGUMENT_FILE),yes)
|
|
- LINK_SO_CMD = $(QUIET_LINK_SO) $(MKTGTDIR) ; $(CC) $(LIB_LDFLAGS) $(LDFLAGS) -o $@ $(file > $@.in,$^) @$@.in
|
|
+ LINK_SO_CMD = $(QUIET_LINK_SO) $(MKTGTDIR) ; $(LINKER) $(LIB_LDFLAGS) $(LDFLAGS) -o $@ $(file > $@.in,$^) @$@.in
|
|
else
|
|
- LINK_SO_CMD = $(QUIET_LINK_SO) $(MKTGTDIR) ; $(CC) $(LIB_LDFLAGS) $(LDFLAGS) -o $@ $^
|
|
+ LINK_SO_CMD = $(QUIET_LINK_SO) $(MKTGTDIR) ; $(LINKER) $(LIB_LDFLAGS) $(LDFLAGS) -o $@ $^
|
|
endif
|
|
ifeq ($(OS),OpenBSD)
|
|
# OpenBSD linker magic doesn't use soname; so fake it by using -L$(OUT) and -lmupdf.
|
|
- LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(CC) $(EXE_LDFLAGS) $(LDFLAGS) -o $@ -L$(OUT) \
|
|
+ LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(LINKER) $(EXE_LDFLAGS) $(LDFLAGS) -o $@ -L$(OUT) \
|
|
$(subst $(OUT)/libmupdf.$(SO)$(SO_VERSION),-lmupdf,$^) \
|
|
$(LIBS)
|
|
endif
|
|
@@ -244,10 +250,10 @@
|
|
|
|
FONT_GEN := $(FONT_BIN:%=generated/%.c)
|
|
|
|
-generated/%.cff.c : %.cff $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
|
|
-generated/%.otf.c : %.otf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
|
|
-generated/%.ttf.c : %.ttf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
|
|
-generated/%.ttc.c : %.ttc $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
|
|
+generated/%.cff.c : %.cff $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
|
|
+generated/%.otf.c : %.otf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
|
|
+generated/%.ttf.c : %.ttf $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
|
|
+generated/%.ttc.c : %.ttc $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
|
|
|
|
ifeq ($(HAVE_OBJCOPY),yes)
|
|
MUPDF_OBJ += $(FONT_BIN:%=$(OUT)/%.o)
|
|
@@ -273,7 +279,7 @@
|
|
|
|
HYPH_GEN := $(HYPH_BIN:%=generated/%.c)
|
|
|
|
-generated/%.zip.c : %.zip $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; bash $(HEXDUMP_SH) > $@ $<
|
|
+generated/%.zip.c : %.zip $(HEXDUMP_SH) ; $(QUIET_GEN) $(MKTGTDIR) ; sh $(HEXDUMP_SH) > $@ $<
|
|
|
|
ifeq ($(HAVE_OBJCOPY),yes)
|
|
MUPDF_OBJ += $(HYPH_BIN:%.zip=$(OUT)/%.zip.o)
|
|
@@ -329,7 +335,7 @@
|
|
|
|
ifeq ($(shared),yes)
|
|
$(OUT)/libmupdf.$(SO)$(SO_VERSION): $(MUPDF_OBJ) $(THIRD_OBJ)
|
|
- $(LINK_SO_CMD) $(THIRD_LIBS) $(LIBCRYPTO_LIBS) $(LIBS)
|
|
+ $(LINK_SO_CMD) $(THIRD_LINK_LIBS) $(LIBCRYPTO_LIBS) $(LIBS)
|
|
ifeq ($(OS),OpenBSD)
|
|
# should never create symlink
|
|
MUPDF_LIB = $(OUT)/libmupdf.$(SO)$(SO_VERSION)
|
|
@@ -376,13 +382,13 @@
|
|
MUTOOL_OBJ := $(MUTOOL_SRC:%.c=$(OUT)/%.o)
|
|
MUTOOL_EXE := $(OUT)/mutool
|
|
$(MUTOOL_EXE) : $(MUTOOL_OBJ) $(MUPDF_LIB) $(THIRD_LIB) $(PKCS7_LIB) $(THREAD_LIB)
|
|
- $(LINK_CMD) $(THIRD_LIBS) $(THREADING_LIBS) $(LIBCRYPTO_LIBS)
|
|
+ $(LINK_CMD) $(THIRD_LINK_LIBS) $(THREADING_LIBS) $(LIBCRYPTO_LIBS)
|
|
TOOL_APPS += $(MUTOOL_EXE)
|
|
|
|
MURASTER_OBJ := $(OUT)/source/tools/muraster.o
|
|
MURASTER_EXE := $(OUT)/muraster
|
|
$(MURASTER_EXE) : $(MURASTER_OBJ) $(MUPDF_LIB) $(THIRD_LIB) $(PKCS7_LIB) $(THREAD_LIB)
|
|
- $(LINK_CMD) $(THIRD_LIBS) $(THREADING_LIBS) $(LIBCRYPTO_LIBS)
|
|
+ $(LINK_CMD) $(THIRD_LINK_LIBS) $(THREADING_LIBS) $(LIBCRYPTO_LIBS)
|
|
EXTRA_TOOL_APPS += $(MURASTER_EXE)
|
|
|
|
ifeq ($(HAVE_GLUT),yes)
|
|
@@ -390,7 +396,7 @@
|
|
MUVIEW_GLUT_OBJ := $(MUVIEW_GLUT_SRC:%.c=$(OUT)/%.o)
|
|
MUVIEW_GLUT_EXE := $(OUT)/mupdf-gl
|
|
$(MUVIEW_GLUT_EXE) : $(MUVIEW_GLUT_OBJ) $(MUPDF_LIB) $(THIRD_LIB) $(THIRD_GLUT_LIB) $(PKCS7_LIB)
|
|
- $(LINK_CMD) $(THIRD_LIBS) $(LIBCRYPTO_LIBS) $(THIRD_GLUT_LIBS)
|
|
+ $(LINK_CMD) $(THIRD_LINK_LIBS) $(LIBCRYPTO_LIBS) $(THIRD_GLUT_LIBS)
|
|
VIEW_APPS += $(MUVIEW_GLUT_EXE)
|
|
endif
|
|
|
|
@@ -400,7 +406,7 @@
|
|
MUVIEW_X11_OBJ += $(OUT)/platform/x11/x11_main.o
|
|
MUVIEW_X11_OBJ += $(OUT)/platform/x11/x11_image.o
|
|
$(MUVIEW_X11_EXE) : $(MUVIEW_X11_OBJ) $(MUPDF_LIB) $(THIRD_LIB) $(PKCS7_LIB)
|
|
- $(LINK_CMD) $(THIRD_LIBS) $(X11_LIBS) $(LIBCRYPTO_LIBS)
|
|
+ $(LINK_CMD) $(THIRD_LINK_LIBS) $(X11_LIBS) $(LIBCRYPTO_LIBS)
|
|
VIEW_APPS += $(MUVIEW_X11_EXE)
|
|
endif
|
|
|
|
@@ -414,7 +420,7 @@
|
|
MUVIEW_X11_CURL_OBJ += $(OUT)/platform/x11/curl/curl_stream.o
|
|
MUVIEW_X11_CURL_OBJ += $(OUT)/platform/x11/curl/prog_stream.o
|
|
$(MUVIEW_X11_CURL_EXE) : $(MUVIEW_X11_CURL_OBJ) $(MUPDF_LIB) $(THIRD_LIB) $(PKCS7_LIB) $(CURL_LIB)
|
|
- $(LINK_CMD) $(THIRD_LIBS) $(X11_LIBS) $(LIBCRYPTO_LIBS) $(CURL_LIBS) $(PTHREAD_LIBS)
|
|
+ $(LINK_CMD) $(THIRD_LINK_LIBS) $(X11_LIBS) $(LIBCRYPTO_LIBS) $(CURL_LIBS) $(PTHREAD_LIBS)
|
|
EXTRA_VIEW_APPS += $(MUVIEW_X11_CURL_EXE)
|
|
endif
|
|
endif
|
|
@@ -440,13 +446,13 @@
|
|
examples: $(OUT)/example $(OUT)/multi-threaded $(OUT)/storytest $(OUT)/searchtest
|
|
|
|
$(OUT)/example: docs/examples/example.c $(MUPDF_LIB) $(THIRD_LIB)
|
|
- $(LINK_CMD) $(CFLAGS) $(THIRD_LIBS)
|
|
+ $(LINK_CMD) $(CFLAGS) $(THIRD_LINK_LIBS)
|
|
$(OUT)/multi-threaded: docs/examples/multi-threaded.c $(MUPDF_LIB) $(THIRD_LIB)
|
|
- $(LINK_CMD) $(CFLAGS) $(THIRD_LIBS) -lpthread
|
|
+ $(LINK_CMD) $(CFLAGS) $(THIRD_LINK_LIBS) -lpthread
|
|
$(OUT)/storytest: docs/examples/storytest.c $(MUPDF_LIB) $(THIRD_LIB)
|
|
- $(LINK_CMD) $(CFLAGS) $(THIRD_LIBS)
|
|
+ $(LINK_CMD) $(CFLAGS) $(THIRD_LINK_LIBS)
|
|
$(OUT)/searchtest: docs/examples/searchtest.c $(MUPDF_LIB) $(THIRD_LIB)
|
|
- $(LINK_CMD) $(CFLAGS) $(THIRD_LIBS)
|
|
+ $(LINK_CMD) $(CFLAGS) $(THIRD_LINK_LIBS)
|
|
|
|
# --- Format man pages ---
|
|
|
|
@@ -523,13 +529,13 @@
|
|
install: install-libs install-apps install-docs
|
|
|
|
docs:
|
|
- bash scripts/build-docs.sh
|
|
+ sh scripts/build-docs.sh
|
|
|
|
docs-live:
|
|
- bash scripts/build-docs-live.sh
|
|
+ sh scripts/build-docs-live.sh
|
|
|
|
docs-markdown:
|
|
- bash scripts/build-docs-markdown.sh
|
|
+ sh scripts/build-docs-markdown.sh
|
|
|
|
docs-clean:
|
|
rm -rf build/docs
|
|
@@ -541,7 +547,7 @@
|
|
cp -r build/docs/* $(DESTDIR)$(docdir)
|
|
|
|
tarball:
|
|
- bash scripts/archive.sh
|
|
+ sh scripts/archive.sh
|
|
|
|
# --- Clean and Default ---
|
|
|
|
@@ -577,7 +583,7 @@
|
|
$(TAGS_CMD) -a --sort=no --c-kinds=t $(TAG_SRC_FILES) $(TAG_HDR_FILES)
|
|
|
|
find-try-return:
|
|
- @ bash scripts/find-try-return.sh
|
|
+ @ sh scripts/find-try-return.sh
|
|
|
|
cscope.files: $(shell find include source platform -name '*.[ch]')
|
|
@ echo $^ | tr ' ' '\n' > $@
|
|
--- a/Makerules
|
|
+++ b/Makerules
|
|
@@ -207,6 +207,7 @@
|
|
SYS_LEPTONICA_LIBS := -llept
|
|
SYS_LIBARCHIVE_LIBS := -larchive
|
|
SYS_ZXINGCPP_LIBS := -lzxing-cpp -lzint
|
|
+CXX_LINKER_FLAG := --mupdf-cxx-linker
|
|
|
|
ifneq "$(CLUSTER)" ""
|
|
CFLAGS += -DCLUSTER
|
|
@@ -217,6 +218,7 @@
|
|
SYS_GLUT_CFLAGS := -Wno-deprecated-declarations
|
|
SYS_GLUT_LIBS := -framework GLUT -framework OpenGL
|
|
CC = xcrun cc
|
|
+ CXX = xcrun c++
|
|
AR = xcrun ar
|
|
LD = xcrun ld
|
|
RANLIB = xcrun ranlib
|
|
@@ -236,8 +238,15 @@
|
|
|
|
else
|
|
|
|
+ LD_SUPPORTS_BINARY_OBJECTS := $(shell tmp=$$(mktemp -d 2>/dev/null || mktemp -d -t mupdf); \
|
|
+ trap 'rm -rf "$$tmp"' EXIT HUP INT TERM; \
|
|
+ : > "$$tmp/empty"; \
|
|
+ if $(LD) -r -b binary -z noexecstack -o "$$tmp/empty.o" "$$tmp/empty" >/dev/null 2>&1; then \
|
|
+ echo yes; \
|
|
+ fi)
|
|
+
|
|
ifeq ($(OS),Linux)
|
|
- HAVE_OBJCOPY := yes
|
|
+ HAVE_OBJCOPY := $(LD_SUPPORTS_BINARY_OBJECTS)
|
|
endif
|
|
|
|
ifeq ($(OS),OpenBSD)
|
|
--- a/Makelists
|
|
+++ b/Makelists
|
|
@@ -612,7 +612,7 @@
|
|
TESSERACT_BUILD_CFLAGS += $(LEPTONICA_CFLAGS)
|
|
|
|
TESSERACT_LIBS += -lpthread
|
|
-TESSERACT_LIBS += -lstdc++
|
|
+TESSERACT_LIBS += $(CXX_LINKER_FLAG)
|
|
|
|
TESSERACT_SRC += thirdparty/tesseract/src/api/altorenderer.cpp
|
|
TESSERACT_SRC += thirdparty/tesseract/src/api/baseapi.cpp
|
|
@@ -817,7 +817,7 @@
|
|
ZXINGCPP_BUILD_CFLAGS += -Ithirdparty/zint/backend
|
|
ZXINGCPP_BUILD_CFLAGS += -Iscripts/zxing-cpp
|
|
|
|
-ZXINGCPP_LIBS += -lstdc++
|
|
+ZXINGCPP_LIBS += $(CXX_LINKER_FLAG)
|
|
|
|
ZXINGCPP_SRC += thirdparty/zxing-cpp/core/src/aztec/AZDecoder.cpp
|
|
ZXINGCPP_SRC += thirdparty/zxing-cpp/core/src/aztec/AZDetector.cpp
|
|
--- a/Makethird
|
|
+++ b/Makethird
|
|
@@ -141,6 +141,7 @@
|
|
THIRD_CFLAGS += $(SYS_HARFBUZZ_CFLAGS)
|
|
THIRD_LIBS += $(SYS_HARFBUZZ_LIBS)
|
|
else
|
|
+ THIRD_NEEDS_CXX_LINKER := yes
|
|
THIRD_CFLAGS += $(HARFBUZZ_CFLAGS)
|
|
THIRD_LIBS += $(HARFBUZZ_LIBS)
|
|
THIRD_SRC += $(HARFBUZZ_SRC)
|
|
@@ -287,8 +288,9 @@
|
|
|
|
ifeq ($(HAVE_TESSERACT),yes)
|
|
THIRD_CFLAGS += -DHAVE_TESSERACT
|
|
+ THIRD_NEEDS_CXX_LINKER := yes
|
|
ifeq ($(USE_SYSTEM_TESSERACT),yes)
|
|
- THIRD_LIBS += $(SYS_TESSERACT_LIBS) -lstdc++
|
|
+ THIRD_LIBS += $(SYS_TESSERACT_LIBS) $(CXX_LINKER_FLAG)
|
|
TESSERACT_CFLAGS = $(SYS_TESSERACT_CFLAGS)
|
|
TESSERACT_LANGFLAGS =
|
|
else
|
|
@@ -303,8 +305,9 @@
|
|
|
|
ifeq ($(HAVE_ZXINGCPP),yes)
|
|
THIRD_CFLAGS += -DHAVE_ZXINGCPP
|
|
+ THIRD_NEEDS_CXX_LINKER := yes
|
|
ifeq ($(USE_SYSTEM_ZXINGCPP),yes)
|
|
- THIRD_LIBS += $(SYS_ZXINGCPP_LIBS) -lstdc++
|
|
+ THIRD_LIBS += $(SYS_ZXINGCPP_LIBS) $(CXX_LINKER_FLAG)
|
|
ZXINGCPP_CFLAGS = $(SYS_ZXINGCPP_CFLAGS) -DUSE_SYSTEM_ZXINGCPP
|
|
ZXINGCPP_LANGFLAGS =
|
|
else
|
|
@@ -373,7 +376,8 @@
|
|
ifeq ($(HAVE_LIBARCHIVE),yes)
|
|
THIRD_CFLAGS += -DHAVE_LIBARCHIVE
|
|
THIRD_CFLAGS += $(SYS_LIBARCHIVE_CFLAGS)
|
|
- THIRD_LIBS += $(SYS_LIBARCHIVE_LIBS) -lstdc++
|
|
+ THIRD_LIBS += $(SYS_LIBARCHIVE_LIBS) $(CXX_LINKER_FLAG)
|
|
+ THIRD_NEEDS_CXX_LINKER := yes
|
|
endif
|
|
|
|
# --- HAVE_SMARTOFFICE ---
|
|
--- a/platform/java/Makefile
|
|
+++ b/platform/java/Makefile
|
|
@@ -6,6 +6,7 @@
|
|
|
|
JAVA := java
|
|
JAVAC := javac
|
|
+JAVA_LINK = $(CXX)
|
|
|
|
ifndef build
|
|
build := release
|
|
@@ -25,12 +26,14 @@
|
|
endif
|
|
|
|
ifeq ($(OS),Darwin)
|
|
+CC = xcrun cc
|
|
+CXX = xcrun c++
|
|
MUPDF_JAVA := ../../$(OUT)/libmupdf_java64.jnilib
|
|
JAVA_VM := $(shell /usr/libexec/java_home)
|
|
JAVA_CFLAGS := \
|
|
-I $(JAVA_VM)/include \
|
|
-I $(JAVA_VM)/include/darwin
|
|
-JAVA_LDFLAGS := -lstdc++
|
|
+JAVA_LDFLAGS :=
|
|
|
|
else
|
|
|
|
@@ -108,7 +111,7 @@
|
|
$(JAVA_CFLAGS) $(BUILD_FLAGS)
|
|
|
|
$(MUPDF_JAVA) : ../../$(OUT)/mupdf_native.o $(MUPDF_CORE)
|
|
- $(CC) -shared $(JAVA_LDFLAGS) -o $(MUPDF_JAVA) $^ $(JAVA_LIBS) $(BUILD_FLAGS)
|
|
+ $(JAVA_LINK) -shared $(JAVA_LDFLAGS) -o $(MUPDF_JAVA) $^ $(JAVA_LIBS) $(BUILD_FLAGS)
|
|
|
|
jshell: $(MUPDF_JAVA) $(EXAMPLE_JAVA_OBJECTS) $(MUPDF_JAR)
|
|
jshell --class-path ../../$(OUT)/ -R-Djava.library.path="../../$(OUT)" init.jshell $$MUPDF_ARGS
|
|
--- a/platform/wasm/Makefile
|
|
+++ b/platform/wasm/Makefile
|
|
@@ -1,10 +1,10 @@
|
|
default:
|
|
@npm install -s
|
|
- bash tools/build.sh
|
|
+ sh tools/build.sh
|
|
|
|
memento:
|
|
BUILD=memento \
|
|
- bash tools/build.sh
|
|
+ sh tools/build.sh
|
|
|
|
clean:
|
|
rm -f LICENSE
|
|
--- a/platform/wasm/package.json
|
|
+++ b/platform/wasm/package.json
|
|
@@ -24,7 +24,7 @@
|
|
"dist/*"
|
|
],
|
|
"scripts": {
|
|
- "prepack": "bash tools/build.sh && bash tools/compress.sh",
|
|
+ "prepack": "sh tools/build.sh && sh tools/compress.sh",
|
|
"simple-viewer": "npx http-server -c -1 -b -o examples/simple-viewer",
|
|
"super-simple-viewer": "npx http-server -c -1 -b -o examples/super-simple-viewer"
|
|
},
|
|
--- a/platform/wasm/tools/build.sh
|
|
+++ b/platform/wasm/tools/build.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
#
|
|
# Script to build the WASM binary.
|
|
#
|
|
@@ -23,7 +23,7 @@
|
|
fi
|
|
|
|
export EMSDK_QUIET=1
|
|
-source $EMSDK/emsdk_env.sh
|
|
+. "$EMSDK/emsdk_env.sh"
|
|
|
|
emsdk install 4.0.8 >/dev/null || exit
|
|
emsdk activate 4.0.8 >/dev/null || exit
|
|
--- a/platform/wasm/tools/compress.sh
|
|
+++ b/platform/wasm/tools/compress.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
echo BROTLI
|
|
test -f dist/mupdf.js.br || brotli dist/mupdf.js
|
|
--- a/resources/fonts/sil/tocff.sh
|
|
+++ b/resources/fonts/sil/tocff.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
# python3 scripts/makesubset.py -lig scripts/MES-2.TXT > resources/fonts/sil/subset.mes
|
|
# python3 scripts/makesubset.py -sc -lig scripts/MES-2.TXT > resources/fonts/sil/subset.mes.sc
|
|
--- a/resources/fonts/urw/tocff.sh
|
|
+++ b/resources/fonts/urw/tocff.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
# python3 scripts/makesubset.py -lig scripts/MES-2.TXT > resources/fonts/urw/subset.mes
|
|
# python3 scripts/makesubset.py -lig scripts/SECS.TXT > resources/fonts/urw/subset.secs
|
|
--- a/scripts/archive.sh
|
|
+++ b/scripts/archive.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
REV=$(git describe --tags)
|
|
STEM=mupdf-$REV-source
|
|
@@ -7,7 +7,7 @@
|
|
echo git archive $STEM.tar
|
|
git archive --format=tar --prefix=$STEM/ -o $STEM.tar HEAD
|
|
|
|
-function make_submodule_archive {
|
|
+make_submodule_archive() {
|
|
# Make tarballs for submodules, stripped of unnecessary files.
|
|
M=$1
|
|
shift
|
|
--- a/scripts/build-docs-live.sh
|
|
+++ b/scripts/build-docs-live.sh
|
|
@@ -1,8 +1,8 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
# Set up a 'venv' and run sphinx to build the docs!
|
|
|
|
python -m venv build/venv-docs
|
|
-source build/venv-docs/bin/activate
|
|
+. build/venv-docs/bin/activate
|
|
|
|
pip install -r docs/requirements.txt
|
|
|
|
--- a/scripts/build-docs-markdown.sh
|
|
+++ b/scripts/build-docs-markdown.sh
|
|
@@ -1,8 +1,8 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
# Set up a 'venv' and run sphinx to build the docs!
|
|
|
|
python -m venv build/venv-docs
|
|
-source build/venv-docs/bin/activate
|
|
+. build/venv-docs/bin/activate
|
|
|
|
pip install -r docs/requirements.txt
|
|
|
|
--- a/scripts/build-docs.sh
|
|
+++ b/scripts/build-docs.sh
|
|
@@ -1,8 +1,8 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
# Set up a 'venv' and run sphinx to build the docs!
|
|
|
|
python -m venv build/venv-docs
|
|
-source build/venv-docs/bin/activate
|
|
+. build/venv-docs/bin/activate
|
|
|
|
pip install -r docs/requirements.txt
|
|
|
|
--- a/scripts/copyblob.sh
|
|
+++ b/scripts/copyblob.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
cat > copyblob.txt <<EOF
|
|
// Copyright (C) 2004-2021 Artifex Software, Inc.
|
|
--- a/scripts/find-try-return.sh
|
|
+++ b/scripts/find-try-return.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
for F in $(find source platform -name '*.c')
|
|
do
|
|
awk -f scripts/find-try-return.awk $F
|
|
--- a/scripts/findunused.sh
|
|
+++ b/scripts/findunused.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
make build=debug -j4
|
|
rm -f build/debug/mutool build/debug/mupdf-gl
|
|
make build=debug XLIBS=-Wl,--print-gc-sections build/debug/mutool 2>&1 | grep 'libmupdf\.' | sort > build/debug/mutool.gc
|
|
--- a/scripts/githooks/pre-commit
|
|
+++ b/scripts/githooks/pre-commit
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
#
|
|
# pre-commit hook to fix whitespace errors
|
|
#
|
|
--- a/scripts/gitsetup.sh
|
|
+++ b/scripts/gitsetup.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
# Tell git to fix whitespace errors automatically
|
|
git config apply.whitespace fix
|
|
--- a/scripts/hexdump.sh
|
|
+++ b/scripts/hexdump.sh
|
|
@@ -1,9 +1,9 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
FILE=$1
|
|
if [ ! -f "$FILE" ]
|
|
then
|
|
- echo usage: bash scripts/hexdump.sh input.ttf
|
|
+ echo usage: sh scripts/hexdump.sh input.ttf
|
|
exit 1
|
|
fi
|
|
|
|
--- a/scripts/jshell.sh
|
|
+++ b/scripts/jshell.sh
|
|
@@ -1,3 +1,3 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
make -s -C platform/java
|
|
jshell -q --class-path build/java/debug -R-Djava.library.path="build/java/debug" platform/java/init.jshell "$@"
|
|
--- a/scripts/pdftohtml.sh
|
|
+++ b/scripts/pdftohtml.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
#
|
|
# Convert PDF to hybrid HTML output with images and line art rendered to a
|
|
# background image, and text overlaid on top as absolutely positioned HTML
|
|
--- a/scripts/runcmapdump.sh
|
|
+++ b/scripts/runcmapdump.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
|
|
LIST=$(echo resources/cmaps/* | sort)
|
|
|
|
--- a/scripts/runcmapshare.sh
|
|
+++ b/scripts/runcmapshare.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
#
|
|
# This script expects to find the original CMap resources in thirdparty/cmap-resources.
|
|
#
|
|
@@ -6,7 +6,7 @@
|
|
rm -f build/cmaps/*
|
|
mkdir -p build/cmaps
|
|
|
|
-function flatten {
|
|
+flatten() {
|
|
for DIR in $(echo thirdparty/cmap-resources/Adobe-*)
|
|
do
|
|
if [ -f $DIR/CMap/$1 ]
|
|
--- a/scripts/runfontdump.sh
|
|
+++ b/scripts/runfontdump.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
# Generate fontdump resources and update visual studio project files.
|
|
|
|
FONTS="resources/fonts/urw/*.cff resources/fonts/han/*.ttc resources/fonts/droid/*.ttf resources/fonts/noto/*.ttf resources/fonts/noto/*.otf resources/fonts/sil/*.cff"
|
|
--- a/scripts/runhyphen.sh
|
|
+++ b/scripts/runhyphen.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
#
|
|
# Generate hyphenation data zip archive.
|
|
#
|
|
@@ -14,5 +14,5 @@
|
|
advzip -4 -z resources/hyphen/hyph-std.zip
|
|
advzip -4 -z resources/hyphen/hyph-all.zip
|
|
|
|
-bash scripts/hexdump.sh > generated/resources/hyphen/hyph-std.zip.c resources/hyphen/hyph-std.zip
|
|
-bash scripts/hexdump.sh > generated/resources/hyphen/hyph-all.zip.c resources/hyphen/hyph-all.zip
|
|
+sh scripts/hexdump.sh > generated/resources/hyphen/hyph-std.zip.c resources/hyphen/hyph-std.zip
|
|
+sh scripts/hexdump.sh > generated/resources/hyphen/hyph-all.zip.c resources/hyphen/hyph-all.zip
|
|
--- a/scripts/runiccdump.sh
|
|
+++ b/scripts/runiccdump.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
rm -f source/fitz/icc/*.h
|
|
for f in resources/icc/*.icc
|
|
do
|
|
--- a/scripts/runjsdump.sh
|
|
+++ b/scripts/runjsdump.sh
|
|
@@ -1,4 +1,4 @@
|
|
-#!/bin/bash
|
|
+#!/bin/sh
|
|
for f in source/pdf/js/*.js
|
|
do
|
|
echo Dumping $f
|