TEST_DEPENDS in all-depends-list et al.?

Kubilay Kocak koobs at FreeBSD.org
Mon Jan 18 07:46:48 UTC 2016

On 18/01/2016 2:36 PM, lists at tcm.yi.org wrote:
> On Mon, Jan 18, 2016 at 01:55:35PM +1100, Kubilay Kocak wrote:
>> On 18/01/2016 7:11 AM, lists at tcm.yi.org wrote:
>>> ports/head from around 2015-12-18 had about 15(?) dependencies in
>>> www/py-requests for example. Now it wants to build over 90!
>>> How can I turn this off? Is this a bug?
>> By definition all-depends means (and should mean) literally all
>> dependencies (*_DEPENDS), so in that regard it makes sense.
> I'm not sure what exactly changed between 2015-12-18 and now.
> Specifically, www/py-requests' Makefile last changed in October,
> but from December to today its all-depends-list grew from
> ~10 to 90.

I see the list at 53 currently, but agreed it's unexpected.

> Mk/Scripts/depends-list.sh also last changed outside the time
> frame in question.
>> Having said that, given the special nature of the test stage (orthogonal
>> and independent to build/run dependencies), it sounds reasonable to ask
>> whether they should be included in the target (all-depends-list) that
>> has otherwise always only meant "what things does this port need to 'work'".
>> My personal opinion is that all-depends-list is fine, and a less
>> encompassing <something-else>-depends-list that only shows actual
>> end-user functional dependencies is needed.
> My problem isn't exactly with all-depends-list, but rather with
> showconfig-recursive and package-recursive, whose dependency list grew
> as well, since they use the same dependency script. I don't want
> to build, package or configure TEST_DEPENDS ports in the course of
> normal package building.


>> This question is also relevant for the case of OPTION'al dependencies
>> (they're not included in all-depends by default unless they're
>> inOPTIONS_DEFAULT too), and would *also* apply if ports/pkg's had (or
>> ever will have) any notion of 'suggested/recommended' but otherwise
>> non-compulsory dependencies like other packaging systems.
> I'm perfectly fine with not dealing with ports that I have
> excluded or that are excluded by default. This is what I would
> expect.
> For the time being, I have changed this line in Mk/bsd.port.mk
> by removing the ${TEST_DEPENDS} variable. Now I get the same
> behaviour as before, but clearly, this is a horrible kludge.
> Mk/bsd.port.mk also had no relevant changes that I can see
> between 2015-12-18 and now.
> So I'm still not sure if this is a bug or not. Is the
> package-recursive target really meant to pull in all
> TEST_DEPENDS ports? I was under the impression that
> tests are exclusively run via 'make test' in the ports tree,
> making it completely irrelevant to binary packages.

Possibly, perhaps there's an unexpected interaction.

I cant answer whether package-recursive *should* or not, but I can say
'yes' confidently to TEST_DEPENDS *ought* only be relevant during test,
or any target that uses test:.

> Thanks and best regards.

More information about the freebsd-ports mailing list