1f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com#!/usr/bin/env python
2f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com
3df8224662e615bd36cf8bebae8e58c017201f998sgk@chromium.org# Copyright (c) 2009 Google Inc. All rights reserved.
4df8224662e615bd36cf8bebae8e58c017201f998sgk@chromium.org# Use of this source code is governed by a BSD-style license that can be
5df8224662e615bd36cf8bebae8e58c017201f998sgk@chromium.org# found in the LICENSE file.
6df8224662e615bd36cf8bebae8e58c017201f998sgk@chromium.org
7f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com"""
8f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.comVerifies that toolsets are correctly applied
9f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com"""
106b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.orgimport os
116b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.orgimport sys
12f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.comimport TestGyp
13f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com
146b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.orgif sys.platform.startswith('linux'):
156b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org
166b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  test = TestGyp.TestGyp(formats=['make', 'ninja'])
17f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com
186b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  oldenv = os.environ.copy()
196b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  try:
206b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org    os.environ['GYP_CROSSCOMPILE'] = '1'
216b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org    test.run_gyp('toolsets.gyp')
226b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  finally:
236b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org    os.environ.clear()
246b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org    os.environ.update(oldenv)
25f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com
266b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  test.build('toolsets.gyp', test.ALL)
27f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com
286b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  test.run_built_executable('host-main', stdout="Host\nShared: Host\n")
296b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  test.run_built_executable('target-main', stdout="Target\nShared: Target\n")
30f6affe1df80f8e59a0e17f2077182ba6c337004fbradnelson@google.com
316b00a9ff28317a25380e1f1157afaf4337e8fb44yfriedman@chromium.org  test.pass_test()
32