From owner-cvs-ports@FreeBSD.ORG Tue May 19 07:53:11 2009 Return-Path: Delivered-To: cvs-ports@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8981B1065674 for ; Tue, 19 May 2009 07:53:11 +0000 (UTC) (envelope-from pav@FreeBSD.org) Received: from raven.customer.vol.cz (raven.customer.vol.cz [195.250.144.108]) by mx1.freebsd.org (Postfix) with ESMTP id 14FC78FC1D for ; Tue, 19 May 2009 07:53:10 +0000 (UTC) (envelope-from pav@FreeBSD.org) Received: from [172.19.10.16] (nat-application.b1.lan.prg.vol.cz [195.122.204.152]) (authenticated bits=0) by raven.customer.vol.cz (8.14.3/8.14.3) with ESMTP id n4J7r4f0050415; Tue, 19 May 2009 09:53:05 +0200 (CEST) (envelope-from pav@FreeBSD.org) From: Pav Lucistnik To: Jan Henrik Sylvester In-Reply-To: <4A11E1FE.9010601@janh.de> References: 20090518182452.2B7F310656B4@hub.freebsd.org <4A11E1FE.9010601@janh.de> Content-Type: multipart/signed; micalg="pgp-sha1"; protocol="application/pgp-signature"; boundary="=-JvFSQsG+yxg0QQE7VT92" Date: Tue, 19 May 2009 09:53:04 +0200 Message-Id: <1242719584.93676.14.camel@pav.hide.vol.cz> Mime-Version: 1.0 X-Mailer: Evolution 2.26.1.1 FreeBSD GNOME Team Port X-Spam-Score: -1.641 () AWL,BAYES_00,MIME_QP_LONG_LINE X-Scanned-By: MIMEDefang 2.64 on 195.250.144.108 Cc: cvs-ports@FreeBSD.org, Pietro Cerutti Subject: Re: [review] cvs commit: ports/math/libqalculate Makefile X-BeenThere: cvs-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: pav@FreeBSD.org List-Id: CVS commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 May 2009 07:53:11 -0000 --=-JvFSQsG+yxg0QQE7VT92 Content-Type: text/plain; charset="ISO8859-2" Content-Transfer-Encoding: quoted-printable Jan Henrik Sylvester p=ED=B9e v =FAt 19. 05. 2009 v 00:32 +0200: > Pav Lucistnik wrote: > > Pietro Cerutti p=ED=B9e v po 18. 05. 2009 v 18:24 +0000: > >> gahr 2009-05-18 18:24:36 UTC > >>=20 > >> FreeBSD ports repository > >>=20 > >> Modified files: > >> math/libqalculate Makefile=20 > >> Log: > >> - Add dependency on math/libgmp4 > >> - Bump PORTREVISION > >> =20 > >> Reported by: Jan Henrik Sylvester > >=20 > >> -LIB_DEPENDS=3D cln.5:${PORTSDIR}/math/cln > >> +LIB_DEPENDS=3D cln.5:${PORTSDIR}/math/cln \ > >> + gmp.8:${PORTSDIR}/math/libgmp4 > >=20 > > Why are you adding a dependency on libgmp4, when this port is depended > > on already, indirectly, via math/cln ? > >=20 > > This is unneeded in FreeBSD Ports. >=20 > I really would like to understand this. >=20 > As far as I understand, if a shared library version is bumped -- for=20 > example recently libgmp.so.7 was bumped to libgmp.so.8 -- all ports that=20 > have gmp.7 listed in LIB_DEPENDS are changed to gmp.8 and have their=20 > PORTREVISION bumped at the same time to trigger a rebuild of the package. >=20 > Ports that depend on the library only indirectly are not bumped, since=20 > it would be a waste to rebuild everything recursively. This can only=20 > work, if all ports linking a library actually list that dependency as=20 > there is no other way for someone bumping a shared library version to=20 > know which packages actually link that library. >=20 > In this case, /usr/local/bin/qalc from math/libqalculate linked=20 > libgmp.so.7, but since the dependency was not listed, the PORTREVISION=20 > was not bumped leaving the package broken. Your observation about the need to recompile packages is correct. But we cannot guarantee that all ports, that link some library, have it listed in LIB_DEPENDS, and, indeed, it is not a common practice. Imagine some complex ports having hundred of LIB_DEPENDS lines in their Makefile! Current practice of bumping PORTREVISION based on presence of LIB_DEPENDS line is insufficient. What we really need is a post-commit hook in portupgrade that would scan all binaries under /usr/local, and trigger forced rebuilds if anything links libraries from compat/pkg subdirectory. --=20 Pav Lucistnik Your sig line (k) was stolen! -more- There is a puff of smoke! --=-JvFSQsG+yxg0QQE7VT92 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Toto je =?UTF-8?Q?digit=C3=A1ln=C4=9B?= =?ISO-8859-1?Q?_podepsan=E1?= =?UTF-8?Q?_=C4=8D=C3=A1st?= =?ISO-8859-1?Q?_zpr=E1vy?= -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEABECAAYFAkoSZWAACgkQntdYP8FOsoIEugCeOxp/OV2Vg/82WYwke+tcbDHA RoIAn1kbfd/s1HII6LFW1WyLK1GI9uRu =a/q5 -----END PGP SIGNATURE----- --=-JvFSQsG+yxg0QQE7VT92--