File: wrong_project.py

package info (click to toggle)
boost1.90 1.90.0-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 593,120 kB
  • sloc: cpp: 4,190,908; xml: 196,648; python: 34,618; ansic: 23,145; asm: 5,468; sh: 3,774; makefile: 1,161; perl: 1,020; sql: 728; ruby: 676; yacc: 478; java: 77; lisp: 24; csh: 6
file content (39 lines) | stat: -rw-r--r-- 937 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/usr/bin/env python3

# Copyright Vladimir Prus 2005.
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE.txt or copy at
# https://www.bfgroup.xyz/b2/LICENSE.txt)

# Regression test. When Jamfile contained "using whatever ; " and the 'whatever'
# module declared a project, then all targets in Jamfile were considered to be
# declared in the project associated with 'whatever', not with the Jamfile.

import BoostBuild

t = BoostBuild.Tester(use_test_config=False)

t.write("a.cpp", "int main() {}\n")

t.write("jamroot.jam", """\
using some_tool ;
exe a : a.cpp ;
""")

t.write("some_tool.jam", """\
import project ;
project.initialize $(__name__) ;
rule init ( ) { }
""")

t.write("some_tool.py", """\
from b2.manager import get_manager
get_manager().projects().initialize(__name__)
def init():
    pass
""")

t.run_build_system()
t.expect_addition("bin/$toolset/debug*/a.exe")

t.cleanup()