Boost logo

Boost-Build :

Subject: [Boost-build] [Build] Extender Manual, Generators, Actions
From: Lee Winter (lee.j.i.winter_at_[hidden])
Date: 2009-04-20 22:39:36

The Build Extender Manual gives examples and describes creating new
file types. It gives examples and describes derived generators for
new file types. And it gives examples of actions for new file types,
but does not decribe them. Is there a written description for such

If there is no written description, can anyone provide information on
the example in the manual? It is as follows:

      import type ;
      import generators ;
      type.register VERBATIM : verbatim ;
      generators.register-standard verbatim.inline-file : VERBATIM : CPP ;
      actions inline-file
          "./" $(<) $(>)

The areas I'm seeking clarification of are as follow:

1. The manual states that "...the name of the action block should be
specifed when creating targets."

What targets are created in the above example?

2. The manual states that "By convention, generators use the same
name of the action block as their own id."

In the example above, is the name of the generator
"verbatim.inline-file" or "inline-file"? If the former what magic
connects the generator name to the action named with a substring of
the generator's name? Is the file type ("verbatim") automatically

3. The construct "./" is not described in the manual.
It appears to be the invocation of a python script named
"inline-file". Is it? If so, what is the role of the leading "./"?

4. If the shell command needs to invoke a filter program handling
stdin and stdout pipes rather than a typical command-line program that
takes file names as arguments, how should such a filter action be

Thanks in advance for any clarification.

Lee Winter
NP Engineering
Nashua, New Hampshire

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at