Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Jul 2014 16:52:56 +0200
From:      Tijl Coosemans <tijl@FreeBSD.org>
To:        marino@freebsd.org
Cc:        svn-ports-head@freebsd.org, kwm@FreeBSD.org, Baptiste Daroussin <bapt@FreeBSD.org>, svn-ports-all@freebsd.org, ports-committers@freebsd.org
Subject:   Re: svn commit: r362304 - head/x11-toolkits/pango
Message-ID:  <20140720165256.1f4d5d07@kalimero.tijl.coosemans.org>
In-Reply-To: <20140720113124.GD26778@ivaldir.etoilebsd.net>
References:  <201407200815.s6K8FG8b003096@svn.freebsd.org> <20140720132259.156d687e@kalimero.tijl.coosemans.org> <53CBA770.2010409@marino.st> <20140720113124.GD26778@ivaldir.etoilebsd.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_/Os+GbdkTchr9R6cRt2UIJb2
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

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 the
>>>>   generated pkgconf files.  Before any library indirectly pulled in, s=
uch
>>>>   as libm, was not listed.
>>>>  =20
>>>>   This fixes numerous regression in dports and it's more correct anywa=
y.
>>>=20
>>> 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.
>>=20
>> 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 directly
>> used by pango)
>>=20
>> so no, it is not wrong.  The generated pc file was wrong, now it's not.
>> This is why the configuration argument exists.

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)).

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.

The reason the configure argument exists is probably because this is an
old .pc file from before the .private fields existed.

> The good question is "does pango exposes parts of libm or not?" if yes
> then libm should be listed in the libraries of pango.pc is not it should
> only appears in the private field.

--Sig_/Os+GbdkTchr9R6cRt2UIJb2
Content-Type: application/pgp-signature; name=signature.asc
Content-Disposition: attachment; filename=signature.asc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iF4EAREKAAYFAlPL18wACgkQfoCS2CCgtiuIVAD/eZBwuRptaIdY9p16RH+RDbLQ
sE+K/W7jQ0iuZS3SiGMA/jrmLhMpHBsxl4RR6UeiRbnydJmo6c+hGleRL7rea9LQ
=inB8
-----END PGP SIGNATURE-----

--Sig_/Os+GbdkTchr9R6cRt2UIJb2--



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