[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#571776: document symbols



* Russ Allbery <rra@debian.org>, 2012-01-02, 13:51:
	  <p>
	    A common example of when a change
	    to <var>minimal-version</var> is required is a function that
	    takes an enum or struct argument that controls what the
	    function does.  For example:
	    <example>
enum library_op { OP_FOO, OP_BAR };
int library_do_operation(enum library_op);
	    </example>
	    If a new operation, <tt>OP_BAZ</tt>, is added,
	    the <var>minimal-version</var>
	    of <tt>library_do_operation</tt> must be increased to the
	    version at which <tt>OP_BAZ</tt> was introduced.  Otherwise, a
	    binary built against the new version of the library (having
	    detected at compile-time that the library
	    supports <tt>OP_BAZ</tt>) may be installed with a shared
	    library that doesn't support <tt>OP_BAZ</tt> and will fail at
	    runtime when it tries to pass <tt>OP_BAZ</tt> into this
	    function.
	  </p>

Hmm. It was my understanding that one of the purposes of Build-Depends-Package is to avoid bumping symbol versions in situations like this.

--
Jakub Wilk



Reply to: