target rule for xslt is automatically defined, this call uses that
rule, not the 'action rule' which is intended to call.
In addition, 'xslt' was called without including xslproc, and xsltproc
was injecting internal rules into global namespace.
[SVN r26481]
Thanks to Toon Knapen for the bug report.
* tools/builtin.jam
(archiving-generator.run): Add <library> properties to sources.
* test/library_chain.py: New test.
[SVN r26447]
stage a1 : a1.txt : <location>dist ;
stage a2 : a2.txt : <location>dist <dependency>a1 ;
The problem is that 'a1' is requested with <os>LINUX but the returned target
have <location>dist as the only property, which causes this bogus warning.
[SVN r26421]
* tools/stage.jam
(copy-file, relink-file): Add stage's dependency properies to
the staged targets properties, so that <dependency> is copied too.
* test/stage.py: New test.
[SVN r26420]
* tools/stage.jam
(stage-shared-linking-generator.run): Don't hardcode 'so' suffix.
* build/virtual-target.jam
(abstract-file-target.suffix): Compute and return the real suffix
that will be used. Previously, it would return something only if the
suffix was explicitly set.
[SVN r26414]
enviroment variables in the list of values. No it's possible to add
an element to a variable.
* build/project.jam: Remove obsolete test.
* build/toolset.jam (find-property-subset): No longer local,
so that test can call it.
* test/test.jam: Import 'print' and 'common'.
* util/print.jam: Comment out failing unit test.
[SVN r26413]
* tools/stage.jam
(stage-target-class.targets-to-stage): New rule, partly extracted
from construct, and former 'select-included'.
(stage-target-class.construct): Cleanup.
* build/virtual-target.jam
(file-target.path): If <location> feature is present, use the
value as the path.
[SVN r26411]
* build/targets.jam (generate-realy):
After applying tag, we used to 'temporary' change self.name,
which is horrible. How pass the name to 'construct'.
(construct): New parameter 'name'.
(tag-name): New rule, extracted from basic-target. This needs to be
separate rule so that we can call it from 'stage'. Check for a value of
from '@something' and interpret 'something' as a rule which returns the
new name.
[SVN r26408]
shared libraries when needed.
* tools/stage.jam
(copy-file, relink-file): New rules, extracted from other classes.
(STAGED_SHARED_LIB): New type.
(stage-shared-lib-generator): New class
[SVN r26399]
Description: If the number of characters exceeds 2047, the cl command fails.
Plattform: MSYS shell, VC++ 7.1
Resolution: Using of the response file facility
* tools/msvc.jam
Change *compile* generators to produce RSP target too.
Change compile actions to use RSP file
And compile rules to call common.response-file
* tools/common.jam
(response-file): Write defines and includes.
Thanks to Johannes Brunen for the patch.
[SVN r26275]
as the first elements of result. Those usage requirements will be combined
with explicitly specified for the main target.
This is yet another step towards making 'main target classes' unnecessary.
* build/generators.jam
(try-one-generator): Check if generator returned usage requirements or not.
(construct): Make sure first element of result is always property set.
(many other methods): Induced changes
* tools/builtin.jam
(exe-target-class, lib-target-class): Remove.
(linking-generator, seached-lib-generator): Compute usage requirements.
(archiving-generator): New class
[SVN r26192]
property, since it's typically used when only headers are used.
* build/virtual-target.jam (subvariant.all-referenced-targets): Return
the names of properties.
* tools/stage.jam (stage-target-class.collect-targets): Filter out <use>
Thanks to Jurgen Hunold for the bug report.
[SVN r26052]
are configured.
* tools/gcc.jam (init-link-flags): New parameter 'toolset'.
* tools/darwin.jam (init): Move flags inheriting out of here
* tools/intel-linux.jam (init): Likewise.
[SVN r25817]
* tools/gcc.jam
(init): passing $(condition) to init-link-flags
(init-link-flags): now takes new condition parameter
moved common flags out of it
* tools/intel-linux.jam
(init): moved call to inherit-flags into it because we need to call
gcc.init-link-flags with the 'condition' parameter.
* tools/darwin.jam
(init): moved call to inherit-flags into it because we need to call
gcc.init-link-flags with the 'condition' parameter.
Fixes related to init-link-flags
* tools/gcc.jam
(init): passing $(condition) to init-link-flags
(init-link-flags): now takes new condition parameter
moved common flags out of it
* tools/intel-linux.jam
(init): moved call to inherit-flags into it because we need to call
gcc.init-link-flags with the 'condition' parameter.
* tools/darwin.jam
(init): moved call to inherit-flags into it because we need to call
gcc.init-link-flags with the 'condition' parameter.
Patch from Andre Hentz.
[SVN r25816]
write
using gcc : ... : ... : <cxxflags>foo <linkflags>bar ;
* tools/common.jam (handle-options): The login for setting the common
options.
[SVN r25767]
(check-tool): Try finding both first and the last element. This avoid
warning both in the case of "distcc g++", and in case of
'"set FOO=bar &&" como'.
(get-invocation-command): Returns the user-specified command even if
it can't be found anywere. This means user specified command will show
up in the command line, and even if it fails, it's less confusing than
command line with no compiler name at all.
[SVN r25765]
* v2/tools/gcc.jam
(init): parse the new options and call the new rule.
(init-link-flags): new rule. Initialize flags based on linker type.
put back -minpure-text
* v2/test/conditionals.py
small modification to avoid empty binaries.
Patch from Andre Hentz.
[SVN r25764]
would force us to relink all libraries when staging.
Now that libraries do not hardcode dll paths, add a check that correct
-rpath-link options are added. When staging, we don't hardcode-dll-paths,
and libraries never hardcode dll paths, so if there's a long chain of
libraries, we should add -rpath-link, otherwise the linker won't find
the dynamic libraries and will complain.
[SVN r25756]
lib png : z : <name>png ;
lib z : : <name>z ;
now works: if you link to 'png' you'll also link to 'z'.
lib png : z : <file>png.a ;
lib z : : <file>z.a ;
now works too. The 'prebuilt.jam' modules which used to handle <file> for
all target kinds is now removed.
[SVN r25703]
* build/toolset.jam (inherit-generator): New parameter 'generators-to-ignore'.
* tools/gcc.jam: Ignore *link* generators when inheriting. Declare the
gcc specific generator.
* test/gcc_runtime.py: Test that <link-runtime>static is correctly handled.
The gcc specific generator is necessary exactly for that reason.
[SVN r25700]