deactivating dep listed in both depends_{build,lib}
Bradley Giesbrecht
pixilla at macports.org
Thu Jul 25 17:25:17 PDT 2013
On Jul 25, 2013, at 4:56 PM, Joshua Root wrote:
> On 2013-7-26 01:12 , Lawrence Velázquez wrote:
>> On Jul 25, 2013, at 10:40 AM, Bradley Giesbrecht <pixilla at macports.org> wrote:
>>
>>> $ port -q installed libmemcached ; port -q deps libmemcached
>>> libmemcached @1.0.10_0 (active)
>>> Build Dependencies: gcc46
>>> Library Dependencies: memcached, gcc46
>>
>> The build dependency is coming from the Portfile; the library dependency is coming from base.
>>
>> The Portfile is declaring the dependency incorrectly, in multiple ways: (1) the dependency on GCC should be a library dependency, and (2) it wipes out the existing build dependencies (perl5 and cyrus-sasl2).
>>
>>> I am surprised that I can deactivate gcc46 without warning or forcing. Is this intended behavior?
>>
>> Probably not. The build dependency is being declared after the library dependency; maybe it overrides it somehow?
>
> I would guess libmemcached was installed before base was updated to 2.2,
> and thus didn't have a lib dep on gcc46 recorded in the registry.
Yes, libmemcached was installed before base was updated to 2.2.
> Separately but related, it might be interesting to check if it does in
> fact link to libraries provided by gcc46.
Port rev-upgrade seems to think so. Deactivating gcc46 caused rev-upgrade to consider libmemcached broken and proceeded to install gcc46.
How would I test if the linking is due to the .la files I've been hearing about?
Do I add "delete_la_files yes" to the gcc46 Portfile and rebuild gcc46?
Regards,
Bradley Giesbrecht (pixilla)
More information about the macports-dev
mailing list