Ryo ONODERA <ryo_on%yk.rim.or.jp@localhost> writes: > Do you know about the expected behavior of USE_TOOLS :pkgsrc modifier? > I have added USE_TOOLS+=grep:pkgsrc to some packages, but I do not find any > effects under NetBSD current. As I read mk/bsd.prefs.mk and mk/tools/replace.mk, the :pkgsrc modifier is like the empty modifier (which should perhaps be :run but isn't) except that it indicates the tool is needed by the pkgsrc infrastructure rather than a particular package. > I have expected that :pkgsrc modifier may force pkgsrc package dependency > instead of dependency to base command. I can see how you might expect that. But, I can't find anything in the sources that would do as you say. > Could you explain me the expected behavior of :pkgsrc modifier? I think: it's like no modifer, but for pkgsrc internal use no package makefile should use it. > This question is blocker of my implementation of USE_TOOLS=TOOLSNAME>=VERNUM > like mechanism. It would be good to also think about cross compilation a bit. USE_TOOLS is a bit funny; it means multiple things. One is that something (a "tool") is needed to run on the build system during the build. Another is that something is needed to run on the target system (:run). That is more or less like buildlink3.mk, except that it's about running programs rather than linking libraries. I'm not sure that USE_TOOLS+=foo:run is the right way to do that, vs thinking that bl3 is about providing the entire ABI of a dependency in the target. For bl3, we have BUILDLIND_ABI_DEPENDS to express minimum versions. I would expect that we would have TOOL_ABI_DEPENDS.foo or similar for tools. In the case of wanting tools from pkgsrc, there's an implicit claim (probably true) that sometimes host versions of tools are not ok. Sometimes that can be about version, and sometimes about other things. Tools may be from different implementations and not even have a common version scheme. I do not know if PREFER_PKGSRC affects tools.
Description: PGP signature