* gcc.jam: Handle the <dll-path> feature.
* builtin.jam
New features <dll-path> and <hardcode-dll-paths>.
(link-action.adjust-properties): Add library's
full paths to <dll-path> when <hardcode-dll-paths>
is specified.
[SVN r16588]
* new/targets.jam
(basic-target.generate): Use 'generate-dependencies'
for use requirements on this target.
* test/use_requirements.py: More tests.
[SVN r16580]
* new/generators.jam
(find-viable-generators): Allow target type of
"*" mean any type. Try generators for "*" first.
Really ignore generators for base types when
there's a generator for derived type. Allow
grist-only element in generators requirements
to match all values of property.
* new/prebuilt.jam
(prebuilt-target-class): Remove
(prebuild-file-generator): New class.
[SVN r16578]
introduce separate <link-runtime> feature.
Allow to use the 'lib' rule to declare
libraries that should be searched for.
* builtin.jam: Remove 'shared' features. Introduce
'link' and 'link-runtime'.
(searched-lib-target): New class
(searched-lib-generator): New generator.
(lib-action): New class, derived from 'action'.
Handles instances of 'searched-lib-target' in sources.
Also, moves all libraries from sources to property value,
so that we can repeat them twice in command line.
(lib-generator): Generator which uses 'lib-action'.
* generators.jam: Allow empty list of sources everywhere.
* virtual-target.jam (file-target): Split into
'abstract-file-target' and 'file-target'.
(abstra
(action.actualize-sources): New rule. Allows to
handle the fact that some sources are special,
and should not become $(>) in action body.
[SVN r16573]
* new/gcc.jam (init): New rule. Allows to specify alternative
gcc versions.
* new/toolset.jam
(using): New rule.
(set-target-variables): Bufgix. I was making indirect call
via variable with multiple values.
* new/build-request.jam
(looks-like-implicit-value): New rule.
(from-command-line): Use the above.
(convert-command-line-element): Don't validate
elements with dashes (this probably must be fixed).
[SVN r16468]
present in target path, instead of doing this
high in control structure.
* new/targets.jam
(main-target.generate): Don't bother with setting
extra path on generated targets.
* new/virtual-target.jam
(virtual-target.extra-path): Remove.
(virtual-target.compute-extra-path): New method.
(subvariant): Document better.
[SVN r16454]
in it. Don't generate all main target into separate subdirectories
in this case.
* new/targets.jam:
(project-target.reference-properties): New method
(generate): Moved from basic-target.generate-source
(generate-dependencies): New rule.
* test/project_dependencies.py: New test.
[SVN r16453]
* borland.jam: New file. Does not support dll yet.
* builtin.jam: Use "obj" and "lib" extensions on
Windows for objects and static libraries, respectively.
[SVN r16441]
* gcc.jam: Extend the 'toolset' feature with gcc here.
Use flags for linking too and eliminate 'link-options'
rule. Remove empty compile/archive/link/link-dll rules.
* toolset.jam (flags): Document somehow.
(set-target-variables): Call 'actualize' on values
of dependency features.
[SVN r16440]
* new/builtin.jam: Made 'toolset' and 'variant'
features symmentic. Document and fix the 'variant' rule.
* new/virtual-target.jam: Refactoring attempts. Split
virtual-target into virtual-target and derived from it
file-target. Eliminate some duplication in setting target
locations.
[SVN r16437]
the transformation search. Don't use global
'.had-composing-generator' variable.
* targets.jam (typed-target.construct): Pass 'allow-composing'
to 'generators.construct'.
* generators.jam (find-viable-generators): New parameter
'allow-composing'.
(construct): Better document the 'allow-composing' parameter.
Pass that parameter to 'find-viable-generators'.
[SVN r16372]
Add support for building the grammar in Windows, now that there is yyacc.c program.
Attempt to fix the build of MSVC and VC7 with the location of the kernel32.lib.
[SVN r16368]
Add support for bootstrapping the gramar, now that there is yyacc.c program.
Attempt to fix the build of MSVC and VC7 with the location of the kernel32.lib.
[SVN r16367]
* new/targets.jam
(abstract-target.name): New method.
(abstract-target.project): New method.
(main-target-alternative): Simplify. Only register
main target alternative. Don't to fancy processing
of arguments.
(main-target-requirements): New rule.
(main-target-use-requirements): New rule.
(main-target-default-build): New rule.
[SVN r16249]