Aaron Boman
a77502735e
Fix configuration test.
2016-10-27 20:22:03 -05:00
Aaron Boman
b90915009e
Fix generator_selection test.
...
Allow generators.register_standard() to be called from Jam.
2016-10-27 20:22:03 -05:00
Aaron Boman
1bd0eab600
Enable type checking for Python tests.
2016-10-27 20:22:03 -05:00
Aaron Boman
6cac5a21e5
Fix default_build test.
2016-10-27 20:22:03 -05:00
Aaron Boman
0b02b48235
Make the src directory a Python package.
2016-10-27 20:22:03 -05:00
Aaron Boman
f993e75a7f
Fix conditionals_multiple test.
2016-10-27 20:22:02 -05:00
Aaron Boman
601a721ad5
Optimize Engine.set_target_variable().
...
This removes the extra call to do_set_target_variable() because
it's possible for target variables to be set during the build phase.
The extra call added a decent amount of overhead. Addtionally,
rather than setting the target variables for each target (via the
for loop), the bjam interface "set-target-variable" rule allows
for taking in a list of targets. Thus, even more function calls are
avoided.
2016-10-27 20:22:02 -05:00
Aaron Boman
18e423e405
Optmize apply_default_build().
2016-10-27 20:22:02 -05:00
Aaron Boman
ca9b6035ba
Optimize PropertySet class.
2016-10-27 20:22:02 -05:00
Aaron Boman
5292c95e29
Optimize PropertySet creation.
...
The Property class has been updated so that passing in the same
parameters will always return the same Property instance. Since
no duplicate Property instances will be created, we can assign
a unique ID to each instance. This allows us to create a faster
lookup key when determining whether to create a new PropertySet
or use an existing one as integer comparison is much faster than
(string, string) comparison.
2016-10-27 20:22:02 -05:00
Aaron Boman
7f7995879b
Optimize Property comparisons.
2016-10-27 20:22:02 -05:00
Aaron Boman
6f04175044
Convert all Property and Feature gettters to attribute access.
2016-10-27 20:22:01 -05:00
Aaron Boman
42ffca9c1c
Optimize replace_grist() and forward_slashes().
2016-10-27 20:22:01 -05:00
Aaron Boman
e3b93cffcb
Optimize set.difference().
2016-10-27 20:22:01 -05:00
Aaron Boman
0999a4f1ef
Optimize CScanner in builtin.py
2016-10-27 20:22:01 -05:00
Aaron Boman
4bbde8e2b8
Fix duplicate virtual target error message.
2016-10-27 20:22:01 -05:00
Aaron Boman
0228b8ed7d
Various fixes in toolset.py
2016-10-27 20:22:00 -05:00
Aaron Boman
8c406a88cf
Save best alternative on metatargets.
...
This is useful for virtual target reporting to report which
alternative was chosen.
2016-10-27 20:22:00 -05:00
Aaron Boman
51e665fc45
Various fixes in targets.py
2016-10-27 20:22:00 -05:00
Aaron Boman
bb1fa52a2f
Set target location on metatargets.
2016-10-27 20:22:00 -05:00
Aaron Boman
f663fd8163
Update set_abbreviated_paths() to work from Jam.
2016-10-27 20:22:00 -05:00
Aaron Boman
42e0899eed
Add bjam_signature() to feature.extend().
2016-10-27 20:22:00 -05:00
Aaron Boman
67bafcd133
Add LazyProperty class for delayed Property evaluation.
2016-10-27 20:21:59 -05:00
Aaron Boman
d7b2e0974c
Update gitignore to ignore *.pyo and b2/bjam.exe
2016-10-27 20:21:59 -05:00
Aaron Boman
0055072ad6
Support passing --stacktrace to tests.
2016-10-27 20:21:59 -05:00
Aaron Boman
88f567f2ff
Prevent backreferences from breaking regex.transform().
2016-10-27 20:21:59 -05:00
Aaron Boman
a56aca9212
Fix path.glob().
2016-10-27 20:21:59 -05:00
Aaron Boman
1c315cf87b
Update unix.ArchiveGenerator.run().
2016-10-27 20:21:59 -05:00
Aaron Boman
1080608e11
Remove CScanner from cpp.py as it was already declared in builtin.py
2016-10-27 20:21:58 -05:00
Aaron Boman
8ee37e2afe
Fix asm.set_asm_type() return value.
2016-10-27 20:21:58 -05:00
Aaron Boman
83de3c5827
Fix call to alias() in testing.py.
2016-10-27 20:21:58 -05:00
Aaron Boman
404ae8a89d
Incorrect type passed in rc.py
2016-10-27 20:21:58 -05:00
Aaron Boman
359f21c237
Fix incorrect type passed in msvc.py
2016-10-27 20:21:58 -05:00
Aaron Boman
aaf9187883
Add support for faster MSVC Startup script.
2016-10-27 20:21:58 -05:00
Aaron Boman
aa49e0a141
Fix msvc.preprocess action name in msvc.py.
2016-10-27 20:21:57 -05:00
Aaron Boman
643bc6f410
Fix toolset.flags() call for 'mc.compile' in mc.py.
2016-10-27 20:21:57 -05:00
Aaron Boman
e50815353e
Add preprocessor support in gcc.py/
2016-10-27 20:21:57 -05:00
Aaron Boman
1fee455656
Fix function called with wrong type in gcc.py.
2016-10-27 20:21:57 -05:00
Aaron Boman
eb097ad804
Fix options bug in gcc.py
2016-10-27 20:21:57 -05:00
Aaron Boman
b4b5e3179e
Clean up common.MkDir in common.py.
2016-10-27 20:21:57 -05:00
Aaron Boman
2371e387a0
Make the command line outputs like that of Jam.
2016-10-27 20:21:56 -05:00
Aaron Boman
d5a07dcdb3
Fix get_invocation_command_nodefault().
...
It was possible for command to be None. Thus, calling ' '.join(None) directly
would error out.
2016-10-27 20:21:56 -05:00
Aaron Boman
8f0b57e54e
Fix cast() rule.
...
Previously, only the TYPE was allowed and not the type's rule.
This brings the Python port up to date with Jam.
2016-10-27 20:21:56 -05:00
Aaron Boman
aa42913e08
Finish porting the ArchivingGenerator.
2016-10-27 20:21:56 -05:00
Aaron Boman
593f615a1a
Prevent LinkingGenerator from direclty modifying its source list.
2016-10-27 20:21:56 -05:00
Aaron Boman
a216a9a2c8
Set CScanner as scanner for H and HPP types.
2016-10-27 20:21:56 -05:00
Aaron Boman
0e164d20d2
Fix inconsistency with <asynch-exceptions> in builtin.py.
2016-10-27 20:21:55 -05:00
Aaron Boman
cb8402239d
Remove unnecesary comments in build_system.py
2016-10-27 20:21:55 -05:00
Aaron Boman
1281499719
Fix --ignore-toolset-requirements flag.
2016-10-27 20:21:55 -05:00
Aaron Boman
4a37e4b147
Update version.py
2016-10-27 20:21:55 -05:00