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

Re: About the libraries shipped with the sources of a package.

On Tue, Jun 27, 2006 at 03:13:41PM +0900, Charles Plessy wrote:
> I am packaging Treeview X (GPL) and the upstream tarball contains also
> the TreeLib (LGPL) and the Nexus library (GPL). For the moment,
> Treeview X is statically linked to them, just as what is done when
> building by ./configure && make.
OK, checking on what this was, I think I've read too much about biology
and done my head in.

> The binary package does not contain the libraries per se, but bits and
> pieces of them in the binary program. If I understand correctly, I will
> have to mention their licences in the copyright file.
It's statically linked, wether or not this is a good idea depends on 
if the library could be used elsewhere, it appears to use wxwidgets
which are already packaged and you should use those ones.

> Is adding something like this appropriate?
>   "Treeview X is statically linked to libfoo, and libbar. Libfoo (c) MrFoo
>   1999 is distributed under the terms of the GPL, and libbar (c) MrBar
>   1998 is distributed under the terms of the LGPL" (adding extract and link
>   similar to what is already done for the GPL in this file)
If you ship with them, then yes.

> Do I need separate statements for the statically linked binary file and
> the full sources of the libraries in the source package?
All your statements must cover all the software you ship. How you
arrange them is not that important as long as it makes sense.

> I also wanted to know wether these libraries were already distributed in
> other source packages, but packages.debian.org did not find anything.
> But is it searching the sources packages as well ?
treelib itself sounds just like a bunch of things that treeviewX needs,
so I suspect not. Nexus appears to be some sort of generic format, eg
biococoa can read "NEXUS files", whatever the hell they are.

> Lastly, I am wondering wether packaging the libraries separately would
> be useful if Treeview X would be the only program to use them (in
> particular, I know that packaging libraries are not recommended to
> beginners in the art of packaging).
Nexus class libraries are found at http://hydrodictyon.eeb.uconn.edu/ncl/
I would strongly reccomend that these were packaged separately and that
you use the ones directly from the author's site.

Now we have a clash of names, as treelib could imply it has something to
do with treeview (eg it is a library for treeview).  However, wxwidgets
has a treeview (it is the directory tree thing for things like viewing
a filesystem). Which one is it?

While it would be quicker and simpler to just use what it comes with and
go nuts and statically compile the lot, it is not the best solution.
Keep specific libraries within the package, anything sourced elsewhere
should use the original source and be separate.  We get a better Debian
distribution  in the end.

A small example, what happens if someone wants to package the python
bindings for Nexus? If the library is "locked into" treeviewx then we
have duplicates. If the library is separate, we can just have the
bindings depend on the library in the usual Debian fashion.

 - Craig
Craig Small      GnuPG:1C1B D893 1418 2AF4 45EE  95CB C76C E5AC 12CA DFA5
Eye-Net Consulting http://www.enc.com.au/   MIEE         Debian developer
csmall at : enc.com.au                      ieee.org           debian.org

Reply to: