1 #!/usr/bin/env python 2 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 5 # found in the LICENSE file. 6 7 """ 8 Verifies building a subsidiary dependent target from a .gyp file in a 9 subdirectory, without specifying an explicit output build directory, 10 and using the subdirectory's solution or project file as the entry point. 11 """ 12 13 import TestGyp 14 import errno 15 16 # Android doesn't support running from subdirectories. 17 # Ninja doesn't support relocation. 18 # CMake produces a single CMakeLists.txt in the output directory. 19 test = TestGyp.TestGyp(formats=['!ninja', '!android', '!cmake']) 20 21 test.run_gyp('prog1.gyp', chdir='src') 22 23 test.relocate('src', 'relocate/src') 24 25 chdir = 'relocate/src/subdir' 26 27 test.build('prog2.gyp', chdir=chdir) 28 29 test.built_file_must_not_exist('prog1', type=test.EXECUTABLE, chdir=chdir) 30 31 test.run_built_executable('prog2', 32 chdir=chdir, 33 stdout="Hello from prog2.c\n") 34 35 test.pass_test() 36