OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 | 2 |
3 # Copyright (c) 2012 Google Inc. All rights reserved. | 3 # Copyright (c) 2012 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 when the --generator-output= option is used to put | 8 Verifies building a target when the --generator-output= option is used to put |
9 the build configuration files in a separate directory tree referenced by a | 9 the build configuration files in a separate directory tree referenced by a |
10 symlink. | 10 symlink. |
11 """ | 11 """ |
12 | 12 |
13 import TestGyp | 13 import TestGyp |
14 import os | 14 import os |
15 | 15 |
16 # Android doesn't support --generator-output. | 16 test = TestGyp.TestGyp() |
17 test = TestGyp.TestGyp(formats=['!android']) | |
18 if not hasattr(os, 'symlink'): | 17 if not hasattr(os, 'symlink'): |
19 test.skip_test('Missing os.symlink -- skipping test.\n') | 18 test.skip_test('Missing os.symlink -- skipping test.\n') |
20 | 19 |
21 test.writable(test.workpath('src'), False) | 20 test.writable(test.workpath('src'), False) |
22 | 21 |
23 test.writable(test.workpath('src/subdir2/deeper/build'), True) | 22 test.writable(test.workpath('src/subdir2/deeper/build'), True) |
24 | 23 |
25 test.subdir(test.workpath('build')) | 24 test.subdir(test.workpath('build')) |
26 test.subdir(test.workpath('build/deeper')) | 25 test.subdir(test.workpath('build/deeper')) |
27 test.symlink('build/deeper', test.workpath('symlink')) | 26 test.symlink('build/deeper', test.workpath('symlink')) |
28 | 27 |
29 test.writable(test.workpath('build/deeper'), True) | 28 test.writable(test.workpath('build/deeper'), True) |
30 test.run_gyp('deeper.gyp', | 29 test.run_gyp('deeper.gyp', |
31 '-Dset_symroot=2', | 30 '-Dset_symroot=2', |
32 '--generator-output=' + test.workpath('symlink'), | 31 '--generator-output=' + test.workpath('symlink'), |
33 chdir='src/subdir2/deeper') | 32 chdir='src/subdir2/deeper') |
34 | 33 |
35 chdir = 'symlink' | 34 chdir = 'symlink' |
36 test.build('deeper.gyp', test.ALL, chdir=chdir) | 35 test.build('deeper.gyp', test.ALL, chdir=chdir) |
37 | 36 |
38 if test.format == 'xcode': | 37 if test.format == 'xcode': |
39 chdir = 'src/subdir2/deeper' | 38 chdir = 'src/subdir2/deeper' |
40 test.run_built_executable('deeper', | 39 test.run_built_executable('deeper', |
41 chdir=chdir, | 40 chdir=chdir, |
42 stdout="Hello from deeper.c\n") | 41 stdout="Hello from deeper.c\n") |
43 test.pass_test() | 42 test.pass_test() |
OLD | NEW |