OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 | 2 |
3 # Copyright (c) 2009 Google Inc. All rights reserved. | 3 # Copyright (c) 2009 Google Inc. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 """ | 7 """ |
8 Verifies building a target and a subsidiary dependent target from a | 8 Verifies building a target and a subsidiary dependent target from a |
9 .gyp file in a subdirectory, without specifying an explicit output build | 9 .gyp file in a subdirectory, without specifying an explicit output build |
10 directory, and using the generated solution or project file at the top | 10 directory, and using the generated solution or project file at the top |
11 of the tree as the entry point. | 11 of the tree as the entry point. |
12 | 12 |
13 There is a difference here in the default behavior of the underlying | 13 There is a difference here in the default behavior of the underlying |
14 build tools. Specifically, when building the entire "solution", Xcode | 14 build tools. Specifically, when building the entire "solution", Xcode |
15 puts the output of each project relative to the .xcodeproj directory, | 15 puts the output of each project relative to the .xcodeproj directory, |
16 while Visual Studio (and our implementations of SCons and Make) put it | 16 while Visual Studio (and our implementation of Make) put it |
17 in a build directory relative to the "solution"--that is, the entry-point | 17 in a build directory relative to the "solution"--that is, the entry-point |
18 from which you built the entire tree. | 18 from which you built the entire tree. |
19 """ | 19 """ |
20 | 20 |
21 import TestGyp | 21 import TestGyp |
22 | 22 |
23 test = TestGyp.TestGyp() | 23 test = TestGyp.TestGyp() |
24 | 24 |
25 test.run_gyp('prog1.gyp', chdir='src') | 25 test.run_gyp('prog1.gyp', chdir='src') |
26 | 26 |
27 test.relocate('src', 'relocate/src') | 27 test.relocate('src', 'relocate/src') |
28 | 28 |
29 test.build('prog1.gyp', test.ALL, chdir='relocate/src') | 29 test.build('prog1.gyp', test.ALL, chdir='relocate/src') |
30 | 30 |
31 test.run_built_executable('prog1', | 31 test.run_built_executable('prog1', |
32 stdout="Hello from prog1.c\n", | 32 stdout="Hello from prog1.c\n", |
33 chdir='relocate/src') | 33 chdir='relocate/src') |
34 | 34 |
35 if test.format == 'xcode': | 35 if test.format == 'xcode': |
36 chdir = 'relocate/src/subdir' | 36 chdir = 'relocate/src/subdir' |
37 else: | 37 else: |
38 chdir = 'relocate/src' | 38 chdir = 'relocate/src' |
39 test.run_built_executable('prog2', | 39 test.run_built_executable('prog2', |
40 chdir=chdir, | 40 chdir=chdir, |
41 stdout="Hello from prog2.c\n") | 41 stdout="Hello from prog2.c\n") |
42 | 42 |
43 test.pass_test() | 43 test.pass_test() |
OLD | NEW |