## Chapter 8. Frequently Asked Questions

## How do I get the current value of feature in Jamfile?

This is not possible, since Jamfile does not have "current" value of any feature, be it toolset, build variant or anything else. For a single invocation of `bjam`, any given main target can be built with several property sets. For example, user can request two build variants on the command line. Or one library is built as shared when used from one application, and as static when used from another. Obviously, Jamfile is read only once, so generally, there's no single value of a feature you can access in Jamfile.

A feature has a specific value only when building a target, and there are two ways how you can use that value:

- Use conditional requirements or indirect conditional requirements. See the section called “Requirements”.
- Define a custom generator and a custom main target type. The custom generator can do arbitrary processing or properties. See the Chapter 6, Extender Manual.