Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 203418 - postgres USE flag should usually require libpq, not postgresql
Summary: postgres USE flag should usually require libpq, not postgresql
Status: VERIFIED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-27 07:46 UTC by Bob's Your Uncle
Modified: 2011-05-20 10:05 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bob's Your Uncle 2007-12-27 07:46:16 UTC
PostgreSQL was split into libpq and postgresql (originally postgresql-server and postgresql-client IIRC) ebuilds some time back.

I use PostgreSQL quite extensively and as such, want support in a lot of applications across my network.  That said, I only have a couple database servers which are strictly that, and the rest merely run apps that need to be able to communicate with the database(s).  All that they generally need for that is libpq, NOT postgresql, but there are many ebuilds that are erroneously requiring postgresql (this happens to work out since postgresql pulls in libpq but not vice versa).  It gets annoying when doing system updates when you end up having to wait for postgresql to compile on a box where it will never be used.

I just ran a little script to chug through the portage tree and tell me the latest release of all the packages using the postgres use flag to require postgresql.  Here is the output:

app-admin/ulogd/ulogd-1.24
app-backup/bacula/bacula-2.2.6
app-crypt/onak/onak-0.3.3-r1
app-editors/xemacs/xemacs-21.4.21
app-forensics/samhain/samhain-2.2.0
app-mobilephone/gammu/gammu-1.17.0
app-mobilephone/gnokii/gnokii-0.6.22-r1
app-mobilephone/kannel/kannel-1.4.1
dev-db/hk_classes/hk_classes-0.8.3
dev-db/libdbi-drivers/libdbi-drivers-0.8.1
dev-db/mysql-super-smack/mysql-super-smack-1.3
dev-db/opendbx/opendbx-1.3.4
dev-db/rekall/rekall-2.2.6
dev-libs/cyrus-sasl/cyrus-sasl-2.1.22
dev-libs/libhome/libhome-0.10.1
dev-libs/libpreludedb/libpreludedb-0.9.2
dev-lisp/clisp/clisp-2.43
dev-lisp/cl-sql/cl-sql-3.2.1
dev-util/gambas/gambas-1.9.23
dev-util/global/global-4.7.2
games-server/pvpgn/pvpgn-1.8.0
kde-misc/krecipes/krecipes-1.0_beta1
mail-filter/anubis/anubis-3.9.95
mail-filter/dspam/dspam-3.8.0-r9
mail-filter/gld/gld-1.7
mail-mta/courier/courier-0.55.1
mail-mta/exim/exim-4.68
mail-mta/postfix/postfix-2.4.6-r1
media-video/motion/motion-3.2.9
net-analyzer/barnyard/barnyard-0.2.0-r2
net-analyzer/echoping/echoping-6.0.2
net-analyzer/flow-tools/flow-tools-0.68-r5
net-analyzer/ipac-ng/ipac-ng-1.31-r2
net-analyzer/nagios-core/nagios-core-1.4.1
net-analyzer/nagios-plugins/nagios-plugins-1.4.11
net-analyzer/pmacct/pmacct-0.9.5
net-analyzer/snort/snort-2.7.0.1
net-analyzer/zabbix-server/zabbix-server-1.1_alpha7
net-dialup/freeradius/freeradius-1.1.7
net-dialup/gnuradius/gnuradius-1.5
net-dialup/isdn4k-utils/isdn4k-utils-3.9_pre20060124
net-dns/mydns/mydns-1.1.0
net-firewall/nufw/nufw-2.2.8
net-ftp/proftpd/proftpd-1.3.1_rc3
net-ftp/pure-ftpd/pure-ftpd-1.0.21-r1
net-im/jabberd2/jabberd2-2.1.19
net-im/jabberd/jabberd-1.4.4-r3
net-irc/atheme/atheme-1.2.1
net-irc/eggdrop/eggdrop-1.6.18-r3
net-libs/courier-authlib/courier-authlib-0.59.2
net-libs/cvm/cvm-0.76
net-mail/courier-imap/courier-imap-3.0.8
net-mail/dbmail/dbmail-2.2.8_rc1
net-mail/dovecot/dovecot-1.1_beta11
net-mail/mailutils/mailutils-0.6-r3
net-mail/perdition/perdition-1.17
net-mail/teapop/teapop-0.3.8
net-mail/tpop3d/tpop3d-1.5.3
net-misc/asterisk/asterisk-1.2.21.1
net-misc/ser/ser-0.9.6
net-nntp/nntpswitch/nntpswitch-0.11
net-print/pykota/pykota-1.25_p2437-r1
net-voip/gnugk/gnugk-2.2.5
net-voip/yate/yate-1.2.0
sci-geosciences/grass/grass-6.2.1
sci-libs/gdal/gdal-1.4.2
sci-physics/root/root-5.16.00
www-apache/mod_auth_nufw/mod_auth_nufw-2.2.0
www-apache/mod_spin/mod_spin-1.0.12
www-apps/lxr/lxr-0.9.5
www-client/seamonkey/seamonkey-1.1.7
x11-libs/qt-embedded/qt-embedded-3.3.8
x11-libs/qt/qt-3.3.4-r8

At a glance, I don't think ANY of these actually require PostgreSQL to be installed locally.  The few packages that would require that, such as plruby, require postgresql directly and do not have a USE flag.

Can we fix all these?
Comment 1 Tiziano Müller (RETIRED) gentoo-dev 2007-12-27 16:46:13 UTC
em, no. Or better: not yet.
The problem is that dev-db/postgresql also installs some libraries:
- libecpg.so.5
- libpgtypes.so.2
- libecpg_compat.so.2
And some packages need them to build. So, unless we re-split the postgresql-stuff (in postgresql-server and postgresql-libs for example as it is done in the postgresql overaly) it doesn't make sense to try to "fix" packages.
Comment 2 Bob's Your Uncle 2007-12-27 17:22:06 UTC
Ahh, I was confused - I knew I'd seen a postgresql-server package before, and that was from the overlay.  This makes sense now - thanks.

I haven't used the overlay much though, and the time that I did was when 8.2 was still very new.  Does the -libs package build pretty quick, or is it an involved process to get those libraries built so that you don't really end up saving any time, and possibly spending more due to unpacking/building the package twice two different ways?
Comment 3 Aaron W. Swenson gentoo-dev 2011-05-20 10:05:30 UTC
The ebuilds have been resplit and fixes this issue.