Files
patches/mupdf/mupdf-1.27.2-ungnuify.patch
T
2026-05-26 02:08:47 -05:00

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