portupgrade idea [Was: Re: Samba3 Port install fails due to OpenLDAP dependency version problem]

Andriy Gapon avg at icyb.net.ua
Wed Jun 21 18:16:21 UTC 2006


> 20060616:
>   AFFECTS: users of net/openldap22{,-sasl}-client
>   AUTHOR: linimon at FreeBSD.org
> 
>   OpenLDAP version 2.3 is now the default. To upgrade all ports do
>     portupgrade -rfo net/openldap23-client openldap-client
>   (or a similar command for the SASL variant). If you do not want to
>   upgrade, add the line `WANT_OPENLDAP_VER?=22' to /etc/make.conf.

sometimes, in cases like this, it seems that portupgrade -rf is a huge
overkill, because (in my case) most of the ports recorded as depending
on openldap 22 do not actually care/know about it, but rather they
depend on something that [depends on something ...] depends on openldap 22.
E.g.:
$ pkg_info -R openldap-client-2.2.30 | wc -l
      86
But if I use libchk and pkg_which to fins what ports install anything
that depends on openldap shared libraries I get only 8 ports.
What I want to say that there is no way that a tool like gucharmap-gnome
*must* be rebuilt/reinstalled when openldap is upgraded.

I understand that shared libs is not the only way through which
dependencies may come.

It still would be very nice to introduce a concept of "immediate
dependencies" to portupgrade tools (or maybe to ports/packages in
general ???) and have some options to work only on those.
Completely fictional example:
1. say gdb depends on libstack
2. say xgdb is a X front-end to gdb which apparently depends on gdb
3. when libstack is changed in such a way that all programs using it
must be recompiled I want an option to distinguish between gdb which
depends on libstack directly and xgdb which is completely uncoupled from
libstack.

-- 
Andriy Gapon


More information about the freebsd-ports mailing list