]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/tools/build/test/implicit_dependency.py
update sources to v12.2.3
[ceph.git] / ceph / src / boost / tools / build / test / implicit_dependency.py
CommitLineData
7c673cae
FG
1#!/usr/bin/python
2
3# Copyright (C) Vladimir Prus 2006.
4# Distributed under the Boost Software License, Version 1.0. (See
5# accompanying file LICENSE_1_0.txt or copy at
6# http://www.boost.org/LICENSE_1_0.txt)
7
8# Test the <implicit-dependency> is respected even if the target referred to is
9# not built itself, but only referred to by <implicit-dependency>.
10
11import BoostBuild
12
13t = BoostBuild.Tester(use_test_config=False)
14
15t.write("jamroot.jam", """
16make a.h : : gen-header ;
17explicit a.h ;
18
19exe hello : hello.cpp : <implicit-dependency>a.h ;
20
21import os ;
22if [ os.name ] = NT
23{
24 actions gen-header
25 {
26 echo int i; > $(<)
27 }
28}
29else
30{
31 actions gen-header
32 {
33 echo "int i;" > $(<)
34 }
35}
36""")
37
38t.write("hello.cpp", """
39#include "a.h"
40int main() { return i; }
41""")
42
43
44t.run_build_system()
45
b32b8144 46t.expect_addition("bin/$toolset/debug*/hello.exe")
7c673cae
FG
47
48t.rm("bin")
49
50t.write("jamroot.jam", """
51make dir/a.h : : gen-header ;
52explicit dir/a.h ;
53
54exe hello : hello.cpp : <implicit-dependency>dir/a.h ;
55
56import os ;
57if [ os.name ] = NT
58{
59 actions gen-header
60 {
61 echo int i; > $(<)
62 }
63}
64else
65{
66 actions gen-header
67 {
68 echo "int i;" > $(<)
69 }
70}
71""")
72
73t.write("hello.cpp", """
74#include "dir/a.h"
75int main() { return i; }
76""")
77t.run_build_system()
78
b32b8144 79t.expect_addition("bin/$toolset/debug*/hello.exe")
7c673cae
FG
80
81t.cleanup()