Merge pull request #260982 from marsam/fix-llpp-linux

llpp: fix build
This commit is contained in:
Lily Foster 2023-10-14 11:22:10 -04:00 committed by GitHub
commit f341d42886
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 14 additions and 80 deletions

View file

@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
url = "https://aur.archlinux.org/cgit/aur.git/plain/system-makedeps.patch?h=llpp&id=0d2913056aaf3dbf7431e57b7b08b55568ba076c";
hash = "sha256-t9PLXsM8+exCeYqJBe0LSDK0D2rpktmozS8qNcEAcHo=";
})
./fix-mupdf.patch
];
postPatch = ''

View file

@ -1,80 +0,0 @@
diff --git a/build.bash b/build.bash
index 7c278b6..41494c5 100755
with manual adjustments
--- a/build.bash
+++ b/build.bash
@@ -30,7 +30,6 @@ srcd="$(dirname $0)"
mudir=$outd/mupdf
muinc="-I $mudir/include -I $mudir/thirdparty/freetype/include"
-test -d "$mudir" || die muPDF not found, consult $(dirname $0)/BUILDING
mkdir -p $outd/{$wsid,lablGL}
:>$outd/ordered
@@ -41,12 +40,6 @@ isfresh() { test -r "$1.past" && . "$1.past" && test "$k" = "$2"; }
mulibst="$mudir/build/$mbt/libs"
mulibs="$mudir/build/$mbt/libmupdf.a $mudir/build/$mbt/libmupdf-third.a"
-keycmd="(cd $mudir && make -q build=$mbt libs && echo); digest $mulibs"
-isfresh "$mulibst" "$(eval $keycmd)" || (
- make -C "$mudir" build=$mbt -j $mjobs libs
- eval $keycmd >${mulibst}.past
-) && vecho "fresh mupdf"
-
oincs() {
local i=
local incs1=
@@ -100,35 +93,6 @@ mflags() {
}
overs="$(ocamlc -vnum 2>/dev/null)" || overs=""
-test "$overs" = "4.11.1" || {
- url=https://caml.inria.fr/pub/distrib/ocaml-4.11/ocaml-4.11.1.tar.xz
- txz=$outd/$(basename $url)
- keycmd="printf $url; digest $txz;"
- isfresh $txz "$(eval $keycmd)" || {
- executable_p() { command -v "$1" >/dev/null 2>&1; }
- if executable_p wget; then dl() { wget -q "$1" -O "$2"; }
- elif executable_p curl; then dl() { curl -L "$1" -o "$2"; }
- else die "no program to fetch remote urls found"
- fi
- dl $url $txz
- eval $keycmd >$txz.past
- } && vecho "fresh $txz"
- absprefix=$(cd $outd &>/dev/null; pwd -P)
- export PATH=$absprefix/bin:$PATH
- ocamlc=$absprefix/bin/ocamlc
- keycmd="printf $url; digest $ocamlc;"
- isfresh $ocamlc "$(eval $keycmd)" || (
- tar xf $txz -C $outd
- bn=$(basename $url)
- cd $outd/${bn%.tar.xz}
- ./configure --disable-ocamldoc --disable-ocamltest \
- --enable-debugger=no --prefix=$absprefix
- make -j $mjobs world
- make install
- eval $keycmd >$absprefix/bin/ocamlc.past
- ) && vecho "fresh ocamlc"
- overs=$(ocamlc -vnum 2>/dev/null)
-}
ccomp=${LLPP_CC-$(ocamlc -config | grep "^c_compiler: " | \
{ read _ c; echo $c; })}
@@ -243,7 +208,7 @@ bobjc() {
} && vecho "fresh $o"
}
-ver=$(cd $srcd && git describe --tags --dirty) || ver=unknown
+ver=@version@
cmd="(. $srcd/genconfstr.sh >$outd/confstruct.ml)"
keycmd="digest $srcd/genconfstr.sh $outd/confstruct.ml"
@@ -291,7 +256,7 @@ for m in ml_gl ml_glarray ml_raw; do
done
libs="str.cma unix.cma"
-clibs="-L$mudir/build/$mbt -lmupdf -lmupdf-third -lpthread"
+clibs="-lmupdf -lmupdf-third -lfreetype -lgumbo -ljpeg -lopenjp2 -ljbig2dec -llcms2 -lharfbuzz -lpthread -lz"
if $darwin; then
mcomp=$(ocamlc -config | grep bytecomp_c_co | { read _ c; echo $c; })
clibs="$clibs -framework Cocoa -framework OpenGL"

View file

@ -0,0 +1,13 @@
--- a/link.c
+++ b/link.c
@@ -1522,8 +1522,9 @@ static void *mainloop (void UNUSED_ATTR *unused)
if (pdf && nameddest && *nameddest) {
fz_point xy;
struct pagedim *pdim;
- int pageno = pdf_lookup_anchor (state.ctx, pdf, nameddest,
+ fz_location location = fz_resolve_link (state.ctx, state.doc, nameddest,
&xy.x, &xy.y);
+ int pageno = location.page;
pdim = pdimofpageno (pageno);
xy = fz_transform_point (xy, pdim->ctm);
printd ("a %d %d %d", pageno, (int) xy.x, (int) xy.y);