Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 07 Aug 2007 12:42:00 +0200
From:      Michael Nottebrock <lofi@freebsd.org>
To:        Alexander Leidinger <Alexander@leidinger.net>
Cc:        Henrik Brix Andersen <henrik@brixandersen.dk>, cvs-all@freebsd.org, ports-committers@freebsd.org, Pav Lucistnik <pav@freebsd.org>, Kris Kennaway <kris@obsecurity.org>, cvs-ports@freebsd.org
Subject:   Re: cvs commit: ports/Mk bsd.port.mk
Message-ID:  <46B84C78.3030009@freebsd.org>
In-Reply-To: <20070807111509.ojm8nc4ao0g080ck@webmail.leidinger.net>
References:  <200706281553.l5SFr56i099807@repoman.freebsd.org>	<20070802181715.46yikycm8gc8g8kk@webmail.leidinger.net>	<20070803125410.GB1062@tirith.brixandersen.dk>	<200708032144.57558.lofi@freebsd.org>	<20070803204215.GA68620@rot26.obsecurity.org>	<20070806074318.q9mw6ulngg00gwsw@webmail.leidinger.net>	<20070806065634.GA31676@rot26.obsecurity.org>	<20070806113855.0fcq213io0www04k@webmail.leidinger.net>	<46B7072E.8070307@freebsd.org> <20070807111509.ojm8nc4ao0g080ck@webmail.leidinger.net>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigFBA46BBEFF0354363AA4BA6A
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Alexander Leidinger schrieb:
>
>> Explicit dependencies would be great, if they can be guaranteed to be
>> correct, which basically means we need a way auto-generate them. Maybe=

>
> Auto generation would be nice, but it doesn't need to be a hard
> requirement. See below.
>
>> this could be done in a similar way to the security check target - run=

>> ldd/objdump over installed executables and libraries, record symbol
>> names somewhere, determine dependencies by comparing records ...
>
> I think this is a little bit over-engineered. Looking into the
> binaries (maybe with objdump, ldd is not really suitable for this task
> I think) for the references to libraries would be enough.
Yeah, I just pulled that out of my hat while writing the email.
>
> How do you want to calculate the RUN_DEPENDS?
RUN_DEPENDS need to be done manually, but I don't consider them a major
problem - those can indeed be sorted out manually and via user feedback
quite well. Experience shows that there is more of a problem with stale
runtime dependencies, which were once necessary, then at some point
became obsolete and nobody noticed. A possible exception to this are the
perl module ports. But my beef really is with library dependencies.
>
>> Explicit dependencies that need to be determined and maintained manual=
ly
>> by port maintainers are useless, since they'll be almost guaranteed to=

>> be wrong most of the time for those ports that would profit the most
>> (shave off the most implicit dependencies) from having them.
>
> I don't think so.
Well, I do. What now? :P
> I think it will be the same as currently. Things which are not catched
> by pointyhat will be reported by users.
Yes. Over and over again. Getting explicit library dependencies right
for all of KDE (and Qt) for instance means explicitly depending on
single xorg library ports in each of the KDE and Qt ports. With every
update, these dependencies are likely to change and thus need review
(and if the review isn't done (properly), will cause fallout for people
trying to save time on updates and thus waste even more time - a very
frustrating user experience). Moreover, the dependencies are likely to
change depending on the user's installation for a certain number of
ports, i.e. in some circumstances, a library/binary might contain
references to libXrender, in others it might not. Catching all these
cases will need very careful review and again, they are likely to change
from release to release. I maintain that it is futile to try and do this
without some sort of automatic dependency generation (or at least checkin=
g).

That said, let me stress again that I'd *like* correct explicit library
dependencies. I actually already tried once to explicity depend on
single X libraries for the Qt4 ports and all the ports further down in
their dependency tree, but gave up because USE_XORG/bsd.xorg.mk at the
moment cannot be used after bsd.port.pre.mk and I didn't have enough
time to try and fix that as well. :)

Cheers,
--=20
   ,_,   | Michael Nottebrock               | lofi@freebsd.org
 (/^ ^\) | FreeBSD - The Power to Serve     | http://www.freebsd.org
   \u/   | K Desktop Environment on FreeBSD | http://freebsd.kde.org



--------------enigFBA46BBEFF0354363AA4BA6A
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGuEx6Xhc68WspdLARAtL8AKCICsTtCZ/VVpTpp6UkqDdfxThs6ACfeO+O
hiUxMTrHzhyr2vzH2NEEX3M=
=jiMP
-----END PGP SIGNATURE-----

--------------enigFBA46BBEFF0354363AA4BA6A--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46B84C78.3030009>