Alcatel-Lucent nmake Product Builder Alcatel-Lucent

More Features and Benefits

Built-in Tool Probe
  • Automatically probes build tools and configures build rules.
Portable Makefiles
  • Run Makefiles across platforms/compilers without change.
  • Consequence of high level assertions, feature-based tool probe, built-in tool knowledge.
Hierarchical Rule Management
  • Makefile -> Project rules -> baserules
  • Flexible rule distribution from multiple rule repositories.
  • Fine-grained rule project and subsystem specific rule and variable overrides.
  • Minimizes redundant rule specification and enhances portability.
Metarules; Metarule Closure
  • Infer prerequisites and action by pattern.
Target Attributes
  • Ability to associate arbitrary attributes to targets and then operate on targets accordingly.
  • Attributes may associate to targets based upon target pattern.
  • Persistent.
  • Example: during scan, detect files containing specified token or that are empty and tag targets with attribute for later special processing.
  • Attributes can drive pattern-directed rules on equal footing with file names/file suffixes.
Optimized Shell Interface
  • Uses single persistent shell -- eliminates fork/exec overhead and allows more natural action block syntax and semantics.
  • Generalizes naturally to distributed network shell execution leading to distributed builds.
Source in Multiple Directories
  • Uses .SOURCE.suffix special atoms to define what directories to search for files ending with .suffix and .SOURCE for all files (with transparent viewpathing.)
State Variables
  • Can have explicit and implicit dependencies on state variables.
  • Can represent #define values such that changing a value will only recompile code using that #define.
  • Can represent compiler name and/or compiler flags so changing compilers or flags can trigger recompilation.
Dependency Based Java Support
  • Automatic dependency generation.
  • Incremental dependency update.
  • Dependency cycles and implicit targets.
  • Batched compilations for improved performance.
  • Concurrent and distributed build.
  • Incremental global build.
  • Incremental safe inside package local build.
  • Simplified user interface.
  • Full viewpathing support.
  • Jar file creation.
Support for C++
  • Handles compiler-specific header processing and template generation procedures.
Rule Based Concurrency Control
  • The .SEMAPHORE special atom provides rule based concurrency control.
Makefiles up to 10x Shorter
Code Instrumentation Support
  • Support for the following intrumentation tools: Purify, Quantify, PureCoverage, Codewizard, Insure++, Sentinel.

Last Update: Wednesday,20-Dec-06 13:22:02 CST