gnu: mupdf: Use only dynamic linking.

* gnu/packages/pdf.scm (mupdf)[source]: Add patch.
[arguments]: Build and find the shared library.
(zathura-pdf-mupdf)[arguments]: Add a 'remove-libmupdfthird.a-requirement
phase to deal with the now-missing static one.
* gnu/packages/patches/mupdf-fix-linkage.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
Tobias Geerinckx-Rice 2020-11-24 12:15:09 +01:00
parent 43ac6f59c5
commit 8b6ce47ccc
No known key found for this signature in database
GPG key ID: 0DB0FF884F556D79
3 changed files with 39 additions and 0 deletions

View file

@ -0,0 +1,27 @@
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Tue, 24 Nov 2020 10:29:28 +0000
Subject: [PATCH] gnu: mupdf: Fix linkage.
Replace broken linkage to build/shared-release/libmupdf.so with the
proper -L$(libdir) -lmupdf incantation, and fix libmupdf.so's mode.
--- mupdf-1.18.0-source.org/Makefile
+++ mupdf-1.18.0-source/Makefile
@@ -61,7 +61,7 @@
ifdef RANLIB
RANLIB_CMD = $(QUIET_RANLIB) $(RANLIB) $@
endif
-LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
+LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(CC) $(LDFLAGS) -o $@ $(subst $(MUPDF_LIB),-L$(libdir) -L$(OUT) -lmupdf,$^) $(LIBS)
TAGS_CMD = $(QUIET_TAGS) ctags -R --c-kinds=+p
WINDRES_CMD = $(QUIET_WINDRES) $(MKTGTDIR) ; $(WINDRES) $< $@
OBJCOPY_CMD = $(QUIET_OBJCOPY) $(MKTGTDIR) ; $(LD) -r -b binary -z noexecstack -o $@ $<
@@ -364,7 +364,7 @@ install: libs apps
install -m 644 include/mupdf/pdf/*.h $(DESTDIR)$(incdir)/mupdf/pdf
install -d $(DESTDIR)$(libdir)
- install -m 644 $(INSTALL_LIBS) $(DESTDIR)$(libdir)
+ install -m 755 $(INSTALL_LIBS) $(DESTDIR)$(libdir)
install -d $(DESTDIR)$(bindir)
install -m 755 $(TOOL_APPS) $(VIEW_APPS) $(DESTDIR)$(bindir)