• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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