Hi!

Steve Langasek [2005-08-08 17:11 -0700]:
> Package: libpq-dev
> Version: 8.0.3-12
> Severity: normal
> 
> Hi Martin, Oliver,
> 
> I've been taking a closer look at the new postgresql -dev package layout
> now that FTBFS bugs are finding themselves filed against packages, and
> I'm concerned that the current layout seems to more or less gratuitously
> break compatibility with historical sources.

This was done with the possibility in mind to allow installation of
several versions of libpq-dev in mind. E. g. suppose postgresql-8.1
introduces a new client API libpq5, so we need libpq4-dev and
libpq5-dev. Since we also want to support older major releases of
postgresql, we can't just drop libpq4-dev. That, and the existence of
pg_config (which should be used by packages to solve this problem once
and for all) were the reasons why I did it that way.

> The package moves the headers from /usr/include/postgresql/ to
> /usr/include/postgresql/8.0/, which definitely breaks any sources that
> include the headers as <postgresql/foo.h>; and the recommended interface
> for detecting the include path is now pg_config --includedir.
> 
> But there can only ever be one package installed at a time which
> provides pg_config...  So if all such -dev packages must conflict, why
> not use the /usr/include/postgresql/ path directly?

Right, this is not yet perfect yet. It is possible to change pg_config
to work for multiple libpqX-dev, it just didn't happen yet since it is
not necessary right now.

> I realize this may be the result of an upstream decision, but I think
> this is worth considering given the number of packages that are still 
> failing to build as a result of this change.

I see your point. I'm just afraid that this takes the pressure out of
maintainers to drop the postgresql-dev dependency out of their
packages and use pg_config to get the path information. I definitively
want to drop postgresql-dev after Etch, so at some point maintainers
just _have_ to fix their packages. But if it helps the release
process, I can certainly move the client-side include files back to
the old location.

Martin

-- 
Martin Pitt        http://www.piware.de
Ubuntu Developer   http://www.ubuntu.com
Debian Developer   http://www.debian.org

Attachment: signature.asc
Description: Digital signature

Reply via email to