[Bug 216823] graphics/mupdf: Build shared libraries

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Feb 6 15:26:15 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=216823

Tijl Coosemans <tijl at FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|freebsd-ports-bugs at FreeBSD. |tijl at FreeBSD.org
                   |org                         |

--- Comment #7 from Tijl Coosemans <tijl at FreeBSD.org> ---
You cannot use DISTVERSION here because upstream released 1.10a after 1.10 and
1.10.a comes before 1.10.

There's an extra patch for graphics/llpp.  What is that about?

SO_MAJOR is just an arbitrary name for a variable.  What matters is that the
library is now linked with -soname=$@ where $@ means the make target which is
$(MUPDF_LIB) or $(THIRD_LIB).

If upstream does not guarantee ABI compatibility between versions (e.g. they
may change function prototypes or change the size of types), then you must use
a versioned soname.  Programs that use the library will then fail to start with
a new version because they are still looking for the old library name.  This is
a safer failure mode than the unpredictable failures that may happen when
programs blindly use an unversioned and possibly incompatible library.

You can use any string as soname.  I think it would be better to replace
${SO_MAJOR}.0 with $(SOVERSION) in the OpenBSD patch and set
SOVERSION=${PORTVERSION} in the port Makefile.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list