Date: Mon, 18 Jan 2016 18:46:40 +1100 From: Kubilay Kocak <koobs@FreeBSD.org> To: lists@tcm.yi.org Cc: freebsd-ports@freebsd.org Subject: Re: TEST_DEPENDS in all-depends-list et al.? Message-ID: <569C9860.9030907@FreeBSD.org> In-Reply-To: <20160118-7a552ff82b94efc3@tcm.yi.org> References: <20160117-122b5781c3b2d8de@tcm.yi.org> <569C5427.3060506@FreeBSD.org> <20160118-7a552ff82b94efc3@tcm.yi.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 18/01/2016 2:36 PM, lists@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@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. Agreed. > >> 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 > > _UNIFIED_DEPENDS=${PKG_DEPENDS} ${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS} ${RUN_DEPENDS} ${TEST_DEPENDS} > > 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. >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?569C9860.9030907>