To Require or not to Require?

Toshio Kuratomi a.badger at gmail.com
Fri Aug 12 15:27:13 UTC 2011


On Fri, Aug 12, 2011 at 04:15:49PM +0200, Andreas Schwab wrote:
> Your whole argument is just void.  There is not a single difference
> between "external" packages and (sub-)packages.
> 
Here's a couple differences:

(libfoo-1.0 building subpackage foo-utils) is licensed LGPLv2
(libfoo-1.0.1 building subpackage foo-utils) is licensed LGPLv3

Our guidelines let you package the license information in the base package
when the subpackage depends on it.  In this case, the subpackage won't pull
in the updated license information based on soname alone.


libfoo-1.0 has private data:

foopublic.h
struct Data {
  int public;
  void *private;
}

fooprivate.h

struct PrivateData {
  [...]
}

Rightly or wrongly, upstream libfoo-1.0 has some additional utilities that
access the PrivateData.  Because the utilities are built from the libfoo
source, they can include the fooprivate.h header file and do this.  When
libfoo goes to 1.0.1, upstream changes the definition of PrivateData and
updates the utilities to work with the new datastructure.  Since the public
ABI stayed the same, the SONAME doesn't change and external programs
compiled against libfoo-1.0 continue to work but the utilities built as
a subpackage would be broken without stricter versioning.

-Toshio
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
Url : http://lists.fedoraproject.org/pipermail/devel/attachments/20110812/4c9f8d31/attachment.bin 


More information about the devel mailing list