mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-06-24 14:15:16 -04:00
250 lines
9.3 KiB
XML
250 lines
9.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
|
|
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
|
|
|
|
<section id="bbv2.reference.modules.path">
|
|
|
|
<title>path</title>
|
|
<indexterm>
|
|
<primary>path</primary>
|
|
<secondary>module</secondary>
|
|
</indexterm>
|
|
|
|
<para>
|
|
Performs various path manipulations. Paths are always in a 'normalized'
|
|
representation. In it, a path may be either:
|
|
|
|
<itemizedlist>
|
|
<listitem><para><code>'.'</code>, or</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
<code>['/'] [ ( '..' '/' )* (token '/')* token ]</code>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
In plain english, a path can be rooted, <code>'..'</code>
|
|
elements are allowed only at the beginning, and it never
|
|
ends in slash, except for the path consisting of slash only.
|
|
</para>
|
|
|
|
<orderedlist>
|
|
|
|
<listitem id="bbv2.reference.modules.path.make">
|
|
<indexterm zone="bbv2.reference.modules.path.make">
|
|
<primary>make</primary>
|
|
<secondary>path</secondary>
|
|
</indexterm>
|
|
<code language="jam">rule make ( native )</code>
|
|
<para>Converts the native path into normalized form.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.native">
|
|
<indexterm zone="bbv2.reference.modules.path.native">
|
|
<primary>native</primary>
|
|
</indexterm>
|
|
<code language="jam">rule native ( path )</code>
|
|
<para>Builds the native representation of the path.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.is-rooted">
|
|
<indexterm zone="bbv2.reference.modules.path.is-rooted">
|
|
<primary>is-rooted</primary>
|
|
</indexterm>
|
|
<code language="jam">rule is-rooted ( path )</code>
|
|
<para>Tests if a path is rooted.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.has-parent">
|
|
<indexterm zone="bbv2.reference.modules.path.has-parent">
|
|
<primary>has-parent</primary>
|
|
</indexterm>
|
|
<code language="jam">rule has-parent ( path )</code>
|
|
<para>Tests if a path has a parent.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.basename">
|
|
<indexterm zone="bbv2.reference.modules.path.basename">
|
|
<primary>basename</primary>
|
|
</indexterm>
|
|
<code language="jam">rule basename ( path )</code>
|
|
<para>Returns the path without any directory components.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.parent">
|
|
<indexterm zone="bbv2.reference.modules.path.parent">
|
|
<primary>parent</primary>
|
|
</indexterm>
|
|
<code language="jam">rule parent ( path )</code>
|
|
<para>Returns the parent directory of the path. If no parent exists, an error is issued.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.reverse">
|
|
<indexterm zone="bbv2.reference.modules.path.reverse">
|
|
<primary>reverse</primary>
|
|
</indexterm>
|
|
<code language="jam">rule reverse ( path )</code>
|
|
<para>
|
|
Returns <code language="jam">path2</code> such that
|
|
<code language="jam">[ join path path2 ] = "."</code>.
|
|
The path may not contain <code language="jam">".."</code>
|
|
element or be rooted.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.join">
|
|
<indexterm zone="bbv2.reference.modules.path.join">
|
|
<primary>join</primary>
|
|
</indexterm>
|
|
<code language="jam">rule join ( elements + )</code>
|
|
<para>
|
|
Concatenates the passed path elements. Generates an error if any
|
|
element other than the first one is rooted. Skips any empty or
|
|
undefined path elements.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.root">
|
|
<indexterm zone="bbv2.reference.modules.path.root">
|
|
<primary>root</primary>
|
|
</indexterm>
|
|
<code language="jam">rule root ( path root )</code>
|
|
<para>
|
|
If <code language="jam">path</code> is relative, it is rooted at
|
|
<code language="jam">root</code>. Otherwise, it is unchanged.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.pwd">
|
|
<indexterm zone="bbv2.reference.modules.path.pwd">
|
|
<primary>pwd</primary>
|
|
</indexterm>
|
|
<code language="jam">rule pwd ( )</code>
|
|
<para>Returns the current working directory.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.glob">
|
|
<indexterm zone="bbv2.reference.modules.path.glob">
|
|
<primary>glob</primary>
|
|
</indexterm>
|
|
<code language="jam">rule glob ( dirs * : patterns + : exclude-patterns * )</code>
|
|
<para>
|
|
Returns the list of files matching the given pattern in the specified
|
|
directory. Both directories and patterns are supplied as portable paths. Each
|
|
pattern should be a non-absolute path, and can't contain "." or ".." elements.
|
|
Each slash separated element of a pattern can contain the following special
|
|
characters:
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>'?' matches any character</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>'*' matches an arbitrary number of characters</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
A file $(d)/e1/e2/e3 (where 'd' is in $(dirs)) matches the pattern p1/p2/p3 if and
|
|
only if e1 matches p1, e2 matches p2 and so on.
|
|
|
|
For example:
|
|
<programlisting language="jam">
|
|
[ glob . : *.cpp ]
|
|
[ glob . : */build/Jamfile ]
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.glob-tree">
|
|
<indexterm zone="bbv2.reference.modules.path.glob-tree">
|
|
<primary>glob-tree</primary>
|
|
</indexterm>
|
|
<code language="jam">rule glob-tree ( roots * : patterns + : exclude-patterns * )</code>
|
|
<para>
|
|
Recursive version of <link linkend="bbv2.reference.modules.path.glob">glob</link>.
|
|
Builds the glob of files while also searching in
|
|
the subdirectories of the given roots. An optional set of exclusion patterns
|
|
will filter out the matching entries from the result. The exclusions also
|
|
apply to the subdirectory scanning, such that directories that match the
|
|
exclusion patterns will not be searched.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.exists">
|
|
<indexterm zone="bbv2.reference.modules.path.exists">
|
|
<primary>exists</primary>
|
|
</indexterm>
|
|
<code language="jam">rule exists ( file )</code>
|
|
<para>Returns true if the specified file exists.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.all-parents">
|
|
<indexterm zone="bbv2.reference.modules.path.all-parents">
|
|
<primary>all-parents</primary>
|
|
</indexterm>
|
|
<code language="jam">rule all-parents ( path : upper_limit ? : cwd ? )</code>
|
|
<para>
|
|
Find out the absolute name of path and return the list of all the parents,
|
|
starting with the immediate one. Parents are returned as relative names. If
|
|
<code language="jam">upper_limit</code> is specified, directories above it
|
|
will be pruned.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.glob-in-parents">
|
|
<indexterm zone="bbv2.reference.modules.path.glob-in-parents">
|
|
<primary>glob-in-parents</primary>
|
|
</indexterm>
|
|
<code language="jam">rule glob-in-parents ( dir : patterns + : upper-limit ? )</code>
|
|
<para>
|
|
Search for <code language="jam">patterns</code> in parent directories
|
|
of <code language="jam">dir</code>, up to and including
|
|
<code language="jam">upper_limit</code>, if it is specified, or
|
|
till the filesystem root otherwise.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.relative">
|
|
<indexterm zone="bbv2.reference.modules.path.relative">
|
|
<primary>relative</primary>
|
|
</indexterm>
|
|
<code language="jam">rule relative ( child parent : no-error ? )</code>
|
|
<para>
|
|
Assuming <code language="jam">child</code> is a subdirectory of
|
|
<code language="jam">parent</code>, return the relative path from
|
|
<code language="jam">parent</code> to <code language="jam">child</code>.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.relative-to">
|
|
<indexterm zone="bbv2.reference.modules.path.relative-to">
|
|
<primary>relative-to</primary>
|
|
</indexterm>
|
|
<code language="jam">rule relative-to ( path1 path2 )</code>
|
|
<para>Returns the minimal path to path2 that is relative path1.</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.programs-path">
|
|
<indexterm zone="bbv2.reference.modules.path.programs-path">
|
|
<primary>programs-path</primary>
|
|
</indexterm>
|
|
<code language="jam">rule programs-path ( )</code>
|
|
<para>
|
|
Returns the list of paths which are used by the operating system for
|
|
looking up programs.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem id="bbv2.reference.modules.path.mkdirs">
|
|
<indexterm zone="bbv2.reference.modules.path.mkdirs">
|
|
<primary>mkdirs</primary>
|
|
</indexterm>
|
|
<code language="jam">rule makedirs ( path )</code>
|
|
<para>
|
|
Creates a directory and all parent directories that do not
|
|
already exist.
|
|
</para>
|
|
</listitem>
|
|
|
|
</orderedlist>
|
|
|
|
</section>
|