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

Re: ardour



On Sat, 31 Aug 2002, Robert Jordens wrote:
> Users complained they were not able to compile ardour because of these
> libraries and C++'s ABI instability.

Distribution users (well, at least Debian's) don't have to worry about this,
since you (the maintainer) will have taken care of those details already,
and our dependency system will keep the build sane.  Failing to build from
source is a severe bug and causes the package to be removed from the stable
releases, after all.

> So Paul Davis (upstream) decided to include all C++ libraries except
> libstdc++ (I don't understand that exception) in the CVS tree. Namely

Ugh.  No way in hell, this is prone to cause problems, including missing
security updates, major breakage on uncommon archs, and so on.

> and are in the CVS anyway. The libraries having to do with GUI
> (libgtk-canvas, libgtkmm, libart, libgtkmmext) are statically linked
> into the ardour executable, the others are statically linked together
> into libardour (libpbd, libmidi++, libardour, libsigc++) which itself is
> shared.

You cannot statically link libs in dynamic libs easily in many
architectures, unless they are all built with -fPIC and other small details
that are all too easy to get wrong.

> In my attempt to prepare ardour for Debian I removed the external
> libraries and linked against the ones in Debian dynamically.

This is the right thing to do.

> "I will firmly and publically denounce any packaging of Ardour that use
> dynamic linking to any C++ library except (and possibly including)
> libstdc++." (He means "linking to libraries not compiled in one run with
> ardour").
> http://boudicca.tux.org/hypermail/ardour-dev/2002-Jun/0068.html

He is wrong on doing that. It is his program, but the same way we do not go
murderous on upstream maintainers that do not take the (extreme) pains to
get sonames, library versioning, and other _distribution_ problems (because
they are usually not a problem to a single user dealing with his own
machine),  upstream should not go in a fit or rage due to distributions
doing what is right (for distributions).

> Although stating this is problably not against the GPL, disobeying Paul as
> upstream won't make maintaining the Debian package very easy.

No, it will not. Maybe Paul can be made to understand that what you are
doing is not going to damage his software, and that the Debian build will
always be only an apt-get source -b  away...

> It is clearly against policy and libpkg-guide.

Yes. Such hideous linking [for something in a distribution, again this is
NOT about a lone user and his machine] is not acceptable in Debian.

> a) No ardour in Debian
Acceptable, IMHO.

> b) build the libraries with ardour and link statically against them
>    (Pauls wish, against policy and my feelings)
Not acceptable, no hideous hacks here please.

> c) dynamically link against the libraries in Debian (against Paul,
>    compliant with policy and my feelings)
Your call.

> d) distribute *-dbg binaries that are statically compiled as a reference 
>    that is to be used prior to writing bug reports (I don't know how Paul 
>    thinks about this, whether he he wants fresh libraries to be compiled 
>    and whether that's okay with policy. At least lintian complains, though.)

How many Ardour users are able to use gdb to track down bugs?  If the answer
is the standard "not many", you needn't do this IMHO.  You will have to
properly filter all bug reports so that you send Paul information he can
use, but that's already implied in the duty of a downstream maintainer...

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh



Reply to: