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""" 8Verifies inclusion of $HOME/.gyp/include.gypi works properly with relocation 9and with regeneration. 10""" 11 12import os 13import TestGyp 14 15# Regenerating build files when a gyp file changes is currently only supported 16# by the make generator. 17test = TestGyp.TestGyp(formats=['make']) 18 19os.environ['HOME'] = os.path.abspath('home') 20 21test.run_gyp('all.gyp', chdir='src') 22 23# After relocating, we should still be able to build (build file shouldn't 24# contain relative reference to ~/.gyp/include.gypi) 25test.relocate('src', 'relocate/src') 26 27test.build('all.gyp', test.ALL, chdir='relocate/src') 28 29test.run_built_executable('printfoo', 30 chdir='relocate/src', 31 stdout='FOO is fromhome\n') 32 33# Building should notice any changes to ~/.gyp/include.gypi and regyp. 34test.sleep() 35 36test.write('home/.gyp/include.gypi', test.read('home2/.gyp/include.gypi')) 37 38test.build('all.gyp', test.ALL, chdir='relocate/src') 39 40test.run_built_executable('printfoo', 41 chdir='relocate/src', 42 stdout='FOO is fromhome2\n') 43 44test.pass_test() 45