Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mupdf for openSUSE:Factory checked in at 2026-06-23 17:39:10 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mupdf (Old) and /work/SRC/openSUSE:Factory/.mupdf.new.1956 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mupdf" Tue Jun 23 17:39:10 2026 rev:73 rq:1361347 version:1.27.2 Changes: -------- --- /work/SRC/openSUSE:Factory/mupdf/mupdf.changes 2026-04-28 12:03:23.843013780 +0200 +++ /work/SRC/openSUSE:Factory/.mupdf.new.1956/mupdf.changes 2026-06-23 17:42:13.045111549 +0200 @@ -1,0 +2,20 @@ +Tue Jun 23 11:43:18 UTC 2026 - Martin Pluskal <[email protected]> + +- Build and ship MuPDF as a shared library (make shared=yes) instead of + static-only: + * New subpackage libmupdf27_2 carries libmupdf.so.27.2 (the SONAME + tracks the upstream minor.patch version). + * Replaced the static-only mupdf-devel-static with mupdf-devel, which + ships the .so symlink and a generated mupdf.pc (upstream provides no + pkg-config file). + * mupdf-devel obsoletes the dropped mupdf-devel-static so it is + cleanly replaced on upgrade (resolves the /usr/include/mupdf + header file conflict flagged in staging). +- Consumers that statically embedded libmupdf.a (e.g. zathura's + pdf-mupdf plugin) failed to load with "undefined symbol: + jpeg_resync_to_restart" because openSUSE builds MuPDF against system + codec libraries and the static archive does not pull them in; linking + against the shared library (which carries those codecs in its own + NEEDED) fixes this (boo#1165273). + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mupdf.spec ++++++ --- /var/tmp/diff_new_pack.qwYvhY/_old 2026-06-23 17:42:14.325156420 +0200 +++ /var/tmp/diff_new_pack.qwYvhY/_new 2026-06-23 17:42:14.329156560 +0200 @@ -20,6 +20,9 @@ %if 0%{suse_version} < 1600 %define gcc_ver 11 %endif +# mupdf sets the shared-library SONAME to libmupdf.so.<minor>.<patch>, so it +# changes on every upstream release; keep %%sover in sync with the version. +%define sover 27_2 Name: mupdf Version: 1.27.2 Release: 0 @@ -73,12 +76,24 @@ annotations and search. MuPDF can also read XPS documents (OpenXPS/ECMA-388). -%package devel-static +%package -n libmupdf%{sover} +Summary: MuPDF rendering library (shared) +Group: System/Libraries + +%description -n libmupdf%{sover} +MuPDF is a PDF and XPS viewer and parser/rendering library. + +This package contains the shared rendering library. + +%package devel Summary: Development Files for mupdf Group: Development/Libraries/C and C++ -Requires: %{name} = %{version} +Requires: libmupdf%{sover} = %{version} +# mupdf is now shared-only; the headers moved here from the dropped +# mupdf-devel-static, so obsolete it for a clean upgrade (same version) +Obsoletes: mupdf-devel-static <= %{version} -%description devel-static +%description devel This package contains development files needed for developing applications based on mupdf. @@ -104,6 +119,7 @@ USE_SYSTEM_ZLIB := yes USE_SYSTEM_GLUT := no # need freeglut2-art frok USE_SYSTEM_CURL := yes + LINUX_OR_OPENBSD := yes # ensure the shared-library SONAME symlinks are created " %build @@ -111,23 +127,37 @@ export CC=gcc%{?gcc_ver:-%{gcc_ver}} export CXX=g++%{?gcc_ver:-%{gcc_ver}} export XCFLAGS="%{optflags} -fcommon -fPIC -DJBIG_NO_MEMENTO -DTOFU -DTOFU_CJK" -%make_build build=release verbose=yes +%make_build build=release shared=yes verbose=yes %install -%make_install build=release prefix=%{_prefix} libdir=%{_libdir} +%make_install build=release shared=yes SO_INSTALL_MODE=755 prefix=%{_prefix} libdir=%{_libdir} rm -rf %{buildroot}%{_datadir}/doc/%{name} desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE1} desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE2} mkdir -p %{buildroot}%{_datadir}/icons/hicolor/scalable/apps install -p -m644 docs/logo/mupdf-logo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/mupdf.svg install -p -m644 docs/logo/mupdf-logo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/mupdf-gl.svg -## fix strange permissons -chmod 0644 %{buildroot}%{_libdir}/*.a +# upstream ships no usable pkg-config file; provide one so consumers can link +# against the shared library (mupdf carries its codec deps in its own NEEDED) +mkdir -p %{buildroot}%{_libdir}/pkgconfig +cat > %{buildroot}%{_libdir}/pkgconfig/mupdf.pc <<EOF +prefix=%{_prefix} +libdir=%{_libdir} +includedir=%{_includedir} + +Name: mupdf +Description: MuPDF rendering library +Version: %{version} +Libs: -L\${libdir} -lmupdf +Cflags: -I\${includedir} +EOF find %{buildroot}/%{_mandir} -type f -exec chmod 0644 {} \; find %{buildroot}/%{_includedir} -type f -exec chmod 0644 {} \; cd %{buildroot}/%{_bindir} && ln -s %{name}-x11 %{name} %fdupes %{buildroot}%{_datadir} +%ldconfig_scriptlets -n libmupdf%{sover} + %files %doc README CHANGES docs/* %license COPYING @@ -137,7 +167,12 @@ %{_datadir}/icons/hicolor/scalable/apps/* %{_mandir}/man1/*.1%{?ext_man} -%files devel-static +%files -n libmupdf%{sover} +%license COPYING +%{_libdir}/libmupdf.so.* + +%files devel %{_includedir}/%{name} -%{_libdir}/lib%{name}*.a +%{_libdir}/libmupdf.so +%{_libdir}/pkgconfig/mupdf.pc
