1 #!/usr/bin/env python 2 3 # Copyright (c) 2013 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 make_global_settings. 9 """ 10 11 import os 12 import sys 13 import TestGyp 14 15 test_format = ['ninja'] 16 if sys.platform in ('linux2', 'darwin'): 17 test_format += ['make'] 18 19 test = TestGyp.TestGyp(formats=test_format) 20 21 test.run_gyp('make_global_settings.gyp') 22 23 if test.format == 'make': 24 cc_expected = """ifneq (,$(filter $(origin CC), undefined default)) 25 CC = $(abspath clang) 26 endif 27 """ 28 if sys.platform == 'linux2': 29 link_expected = """ 30 LINK ?= flock $(builddir)/linker.lock $(abspath clang) 31 """ 32 elif sys.platform == 'darwin': 33 link_expected = """ 34 LINK ?= ./gyp-mac-tool flock $(builddir)/linker.lock $(abspath clang) 35 """ 36 test.must_contain('Makefile', cc_expected) 37 test.must_contain('Makefile', link_expected) 38 if test.format == 'ninja': 39 cc_expected = 'cc = ' + os.path.join('..', '..', 'clang') 40 ld_expected = 'ld = $cc' 41 if sys.platform == 'win32': 42 ld_expected = 'link.exe' 43 test.must_contain('out/Default/build.ninja', cc_expected) 44 test.must_contain('out/Default/build.ninja', ld_expected) 45 46 test.pass_test() 47