From owner-svn-ports-all@FreeBSD.ORG Sun Jul 20 22:06:18 2014 Return-Path: Delivered-To: svn-ports-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E5FE4AE8; Sun, 20 Jul 2014 22:06:18 +0000 (UTC) Received: from mail-wi0-x22d.google.com (mail-wi0-x22d.google.com [IPv6:2a00:1450:400c:c05::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AF5AB2160; Sun, 20 Jul 2014 22:06:17 +0000 (UTC) Received: by mail-wi0-f173.google.com with SMTP id f8so3216539wiw.6 for ; Sun, 20 Jul 2014 15:06:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=xwHWgmOP18sTmvlDxoHjXJPRPb//CddzYBCdFnwtlFo=; b=ZvzJK8ec41Ey3sIvUFWrmeolhyamBhP1Cq9U2DqDdNRNjgNWdwtm46bI9A6q82Qogt vtOw772DkmRi9MN0lEKspoP/kxenDFVX37kkRyrXih9hbI3pCuKP4TRPf/kiQI0BEXJj bVJFXMxHKT8cfR2RZ6UlapNUoSVNdpu41L4V2LRGY8YB9EE0qknmtjSJJlPsFTuTahb9 uj0tNmnB5XM9JhEefdllaEvAbMWrtjhATjX98BI7m9iUcf6wa3IkQJwM4MIFHb0HvlE4 KAikzXmwgn3lRRvFffyKEzuhAFgVjKf4cnE2KsQG0/+x5bl86+Wu5sXS7T8dpa/jTJ2/ KLSw== X-Received: by 10.194.71.132 with SMTP id v4mr17026325wju.102.1405893975127; Sun, 20 Jul 2014 15:06:15 -0700 (PDT) Received: from ivaldir.etoilebsd.net ([2001:41d0:8:db4c::1]) by mx.google.com with ESMTPSA id wd7sm32688579wjc.36.2014.07.20.15.06.13 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 20 Jul 2014 15:06:14 -0700 (PDT) Sender: Baptiste Daroussin Date: Mon, 21 Jul 2014 00:06:12 +0200 From: Baptiste Daroussin To: marino@freebsd.org Subject: Re: svn commit: r362304 - head/x11-toolkits/pango Message-ID: <20140720220612.GH26778@ivaldir.etoilebsd.net> References: <201407200815.s6K8FG8b003096@svn.freebsd.org> <20140720132259.156d687e@kalimero.tijl.coosemans.org> <53CBA770.2010409@marino.st> <20140720113124.GD26778@ivaldir.etoilebsd.net> <20140720165256.1f4d5d07@kalimero.tijl.coosemans.org> <53CBF2D7.4070005@marino.st> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="xQmOcGOVkeO43v2v" Content-Disposition: inline In-Reply-To: <53CBF2D7.4070005@marino.st> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: svn-ports-head@freebsd.org, kwm@FreeBSD.org, Tijl Coosemans , svn-ports-all@freebsd.org, ports-committers@freebsd.org X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Jul 2014 22:06:19 -0000 --xQmOcGOVkeO43v2v Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Jul 20, 2014 at 06:48:23PM +0200, John Marino wrote: >=20 >=20 > On 7/20/2014 16:52, Tijl Coosemans wrote: > > On Sun, 20 Jul 2014 13:31:24 +0200 Baptiste Daroussin wrote: > >> On Sun, Jul 20, 2014 at 01:26:40PM +0200, John Marino wrote: > >>> On 7/20/2014 13:22, Tijl Coosemans wrote: > >>>> On Sun, 20 Jul 2014 08:15:16 +0000 (UTC) John Marino wrote: > >>>>> Author: marino > >>>>> Date: Sun Jul 20 08:15:16 2014 > >>>>> New Revision: 362304 > >>>>> URL: http://svnweb.freebsd.org/changeset/ports/362304 > >>>>> QAT: https://qat.redports.org/buildarchive/r362304/ > >>>>> > >>>>> Log: > >>>>> x11-toolkits/pango: require explicit linking > >>>>> =20 > >>>>> This new configure argument will list all required libraries in t= he > >>>>> generated pkgconf files. Before any library indirectly pulled in= , such > >>>>> as libm, was not listed. > >>>>> =20 > >>>>> This fixes numerous regression in dports and it's more correct an= yway. > >>>> > >>>> No, this is wrong. Each port should link to the libraries it needs = on > >>>> its own. No port should rely on other ports to pull in libraries for > >>>> them. > >>> > >>> Then I guess we really don't need pkgconfig .pc files at all then? > >>> (This is the point of .pc files, it tells how to link. libm is direc= tly > >>> used by pango) > >>> > >>> so no, it is not wrong. The generated pc file was wrong, now it's no= t. > >>> This is why the configuration argument exists. > >=20 > > A .pc file normally has 1 library in the Libs field (the library the .pc > > file is created for) and 0 items in the Requires field. Dependencies go > > in the Libs.private or Requires.private fields. The only reason to add > > dependencies to Libs or Requires is if the headers of the library expose > > the API of those dependencies (e.g. the library headers define macros or > > inline functions that expand to calls to functions in a dependency (such > > as Gtk macros that expand to Glib function calls)). > >=20 > > The pango headers don't even include math.h or complex.h so they cannot > > expose its API. The generated .pc file was correct, now it is wrong. > >=20 > > The reason the configure argument exists is probably because this is an > > old .pc file from before the .private fields existed. >=20 > Again, linking libpango without -libm is an error when explicit linking > is required (as has been the default on binutils for the last 3 > versions). The previous pc did not consider -lm, so it's wrong. >=20 > The proof is in the pudding. When enabling the explicit linking > configure option, it fixed all the explict linking errors seen by ports > depending on pango. >=20 > The is not the only port that sets the explicit-depends configure option > either. >=20 > What is the concern here? Linkers that don't require explicitly > specified libraries still link with those libraries through recursive > searching. The end result is the same, so I'm not understanding the > motivation for this discussion, especially since gnome@ (the maintainer) > approved the change. >=20 > John >=20 Checking on some linux they seems to not have the problem with -lm are you = sure that there is no problem with binutils on dragonfly? because checking at pa= ngo headers I cannot see why it would leaking things from libm. regards, Bapt --xQmOcGOVkeO43v2v Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlPMPVQACgkQ8kTtMUmk6EwCRQCfcBbFA9CIPGzWB7eg3L7A4kYi AqgAoK+pH9C9qoGPUoyfwpqbtkp3UQ+P =xXal -----END PGP SIGNATURE----- --xQmOcGOVkeO43v2v--