mirror of
https://github.com/boostorg/build.git
synced 2026-02-09 23:12:23 +00:00
There were two problems: - 'glob' was using __name__ as the name of the project and not project.current, so it would search in project root, and not in child project that inherited project root rules. - the 'import' that's overrided in project context used __name__ to restore the value of current project Thanks to Emil Dotchevski for the bug report. [SVN r30507]
41 lines
773 B
Python
41 lines
773 B
Python
#!/usr/bin/python
|
|
|
|
# Copyright (C) Vladimir Prus 2005.
|
|
# Distributed under the Boost Software License, Version 1.0. (See
|
|
# accompanying file LICENSE_1_0.txt or copy at
|
|
# http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
# Tests that we can declare a rule in Jamroot that will be
|
|
# can be called in child Jamfile to declare a target. Specifically
|
|
# test for use of 'glob' in that rule.
|
|
#
|
|
|
|
from BoostBuild import Tester, List
|
|
import string
|
|
|
|
t = Tester()
|
|
|
|
t.write("Jamroot", """
|
|
project : requirements <link>static ;
|
|
|
|
rule my-lib ( name )
|
|
{
|
|
lib $(name) : [ glob *.cpp ] ;
|
|
}
|
|
""")
|
|
|
|
t.write("sub/a.cpp", """
|
|
""")
|
|
|
|
t.write("sub/Jamfile", """
|
|
my-lib foo ;
|
|
""")
|
|
|
|
|
|
t.run_build_system(subdir="sub")
|
|
|
|
t.expect_addition("sub/bin/$toolset/debug/link-static/foo.lib")
|
|
|
|
t.cleanup()
|
|
|