Ely Office: six offline-first desktop apps in Rust and GPUI
ElyDoc, ElyTable, ElyShow (LibreOfficeKit), ElyPDF (MuPDF), ElyTree (Git), ElyMark (Milkdown and CodeMirror in CEF). ElyMail and ElyAgent follow.
This commit is contained in:
817 files changed
+143101
No files matched your search
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/env bash
|
||||
# Builds the pinned MuPDF, with patches/mupdf, into engines/mupdf-build.
|
||||
set -euo pipefail
|
||||
|
||||
root=$(cd "$(dirname "$0")/.." && pwd)
|
||||
src=$root/engines/mupdf-src
|
||||
out=$root/engines/mupdf-build
|
||||
jobs=$(sysctl -n hw.ncpu 2>/dev/null || nproc)
|
||||
|
||||
# reference/ stays read-only; the copy takes the patches.
|
||||
mkdir -p "$src"
|
||||
rsync -a --delete --exclude .git "$root/reference/mupdf/" "$src/"
|
||||
for patch in "$root"/patches/mupdf/*.patch; do
|
||||
patch -d "$src" -p1 --forward --batch --quiet <"$patch"
|
||||
done
|
||||
flags="build=release HAVE_X11=no HAVE_GLUT=no HAVE_CURL=no HAVE_LIBCRYPTO=yes tesseract=yes"
|
||||
# make does not track flags; a change rebuilds all.
|
||||
if [ "$(cat "$out/.flags" 2>/dev/null)" != "$flags" ]; then
|
||||
rm -rf "$out"
|
||||
fi
|
||||
# shellcheck disable=SC2086
|
||||
make -C "$src" OUT="$out" $flags -j"$jobs" libs "$out/libmupdf-pkcs7.a"
|
||||
echo "$flags" >"$out/.flags"
|
||||
Reference in new issue
Block a user