PostgreSQL transition: main done, universe outstanding

Martin Pitt martin.pitt at ubuntu.com
Tue Jun 7 05:33:17 CDT 2005


Hi again!

Martin Pitt [2005-05-31 11:39 +0200]:
> I will upload the server, client, and common packages at Monday next
> week.

This has happened now.

> For main, this affects:
> 
>   courier cyrus-sasl2 dovecot exim4 libapache2-mod-auth-pgsql
>   libgda2 nagios nagios-plugins php4-pgsql pike7.6 postfix psycopg
>   pygresql python-pgsql qt-x11-free

These packages were fixed by me (I also did pike7.2 and pike7.4 while
I was at it). I put the applied debdiffs to [1], this URL will be used
to push changes to Debian and also is useful as examples how to fix
the other packages.

> This also affects a great deal of universe packages:
> 
>   aolserver-nspostgres aolserver4-nspostgres asterisk bacula cl-sql
>   cvm cyphesis-cpp dak dbbalancer dbmail flow-tools gambas gdal
>   gnade gnokii gnugk gnustep-dl2 gphotocoll gql grass guile-pg
>   guile-simplesql haskell-hsql hk-classes jabberd2 koffice
>   libapache-mod-acct libapache-mod-auth-pgsql libdbd-pg-perl
>   libdbi-drivers libgda libnss-pgsql libpg-perl libpgsql-ocaml
>   libpgsql-ruby libpqxx mapserver mit-scheme mnogosearch motion
>   mydns nufw pam-pgsql pdns perdition pgadmin3 pgeasy pgplsh php3
>   plr pmacct postgis postgresql-ocaml postgresql-plruby
>   prelude-manager proftpd pure-ftpd python-popy qgis snort specter
>   sqlrelay sqlxx tac-plus teapop ulogd www-sql wzdftpd yate

These are still outstanding, and I greatly appreciate help with this.
The steps that need to be done for client applications are:

 1. Change the build-dependency postgresql-dev to libpq-dev.
 2. Fix include directory path:
  - Very few packages use pg_config to determine include and library
    directories (pygresql is the only package in main that did). In
    this case no additional changes should be required any more.
    pg_config has been there for ages, but apparently nobody bothered
    to use it.
  - If the package does not use pg_config, then the ideal solution is
    to convert it to do so. This is easily possible for almost all
    packages (e. g. in debian/rules, add a configure option like
    --with-pgsql-include=`pg_config --includedir`).
  - If the packaging hardcodes include paths and has a crappy build
    system (cyrus-sasl2 was a pretty nonstandard one), then just fix
    the path for now (/usr/include/postgresql/8.0); maybe the Debian
    maintainer can come up with a better solution that uses pg_config.
 3. Test build. As a rule of thumb, if the package builds, it works.
    libpq-dev mainly changed paths and has a new library SONAME
    behind (libpq4), but the client library did not change any
    interface and thus should be fully backwards compatible.
 4. Upload.
 5. Generate a debdiff and collect them on a common place (e. g. send
    it to me, then I can put it onto [1], or put it somewhere else).

Server-side extensions are a bit more delicate, these will be done in
Debian in cooperation with the respective maintainers.

I uploaded the new packages to Debian Sid now and asked the
maintainers to do the transition, so I hope that the bulk of fixes
will come from Debian.

Thanks and enjoy the wonderful world of databases! :-)

Martin

[1] http://people.ubuntu.com/~pitti/postgresql-transition/

-- 
Martin Pitt              http://www.piware.de
Ubuntu Developer   http://www.ubuntulinux.org
Debian Developer        http://www.debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.ubuntu.com/archives/ubuntu-devel/attachments/20050607/1222eaf7/attachment-0001.pgp


More information about the ubuntu-devel mailing list