Boost logo

Boost-Build :

Subject: Re: [Boost-build] prototyping alternative Boost.Build syntax
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2016-11-04 11:18:26


AMDG

On 11/04/2016 07:29 AM, Stefan Seefeld wrote:
>
> I have done some work on my Python port, and am now able to set
> target-specific variables and use them (example:
> https://github.com/stefanseefeld/boost.build/blob/proto/example/action/build.py#L17)
>
> I previously added support for Python callables as actions (use the
> existing "function_python" function
> (https://github.com/stefanseefeld/boost.build/blob/proto/src/engine/function.c#L4998).
> However, calling that won't see these target-specific variables yet. I'm
> not exactly sure what is missing for this to work (something to do with
> "pushsettings()", I suppose).
>

  The target variables are applied.
They're set in the module of the
action, which for actions defined
from Python probably means the global
module.

> Thus I have a few questions:
>
> * where in the code are target settings activated / deactivated so they
> are visible to actions ?

Target settings are applied in make1.c
around the call to the action.

> * what is a "module" and how is it used in the engine ?
>

See modules.h. Also
http://www.boost.org/build/doc/html/jam/language.html#jam.language.modules

In Christ,
Steven Watanabe


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk