Subject: Re: Replacing path to bash
To: Geert Hendrickx <ghen@telenet.be>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 12/13/2005 14:27:55
On Tue, 13 Dec 2005, Geert Hendrickx wrote:
>> This can actually be done slightly better. You can add "bash" to
>> USE_TOOLS, and then just use ${TOOLS_PATH.bash} instead of needing to
>> derive the path to the bash binary yourself.
>
> Doesn't USE_TOOLS only imply a build dependency?
No.
It is only briefly documented in pkgsrc/doc/guide/files/fixes.xml.
I started writing a doc/guide/files/tools.xml but never committed. I have:
The USE_TOOLS definition is used both internally by pkgsrc and also
in individual packages to define what commands are needed for
building a package (like BUILD_DEPENDS) or for later run-time of
an installed packaged (such as DEPENDS). If the native system
provides the tools, then in many cases, a pkgsrc package will not
be used.
The tools used by a package can be listed by running "make show-tools".
The default set of tools used by pkgsrc is defined in bsd.pkg.mk.
This includes standard Unix tools, such as: cat, awk, chmod, test,
and so on.
If a package needs a specific program to build then the USE_TOOLS
variable can be used to define the tools needed.
Examples:
USE_TOOLS+= mktemp:pkgsrc
USE_TOOLS+= gmake perl:run pkg-config
In the above examples, the :pkgsrc means to use the pkgsrc version
and not the native version and the :run means that it used for a
run-time dependencies also. The default is a build dependency (which can
be set with :build.)
I need to write more about the TOOLS_PATH.foo too.
Please add examples and suggestions to above and I will add this
tools.xml.
Jeremy C. Reed
technical support & remote administration
http://www.pugetsoundtechnology.com/