15c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org#!/usr/bin/env python
25c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
35c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org# Copyright (c) 2012 Google Inc. All rights reserved.
45c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org# Use of this source code is governed by a BSD-style license that can be
55c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org# found in the LICENSE file.
65c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
75c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org"""
85c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.orgVerifies that OTHER_LDFLAGS is passed to libtool.
95c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org"""
105c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
115c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.orgimport TestGyp
125c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
135c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.orgimport sys
145c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
155c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.orgif sys.platform == 'darwin':
165c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org  test = TestGyp.TestGyp(formats=['ninja', 'make', 'xcode'],
175c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org                         match = lambda a, b: True)
185c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
195c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org  build_error_code = {
20f59557f654455f51d47ccd1137c64d2f5e7ff0fcthakis@chromium.org    'xcode': [1, 65],  # 1 for xcode 3, 65 for xcode 4 (see `man sysexits`)
215c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org    'make': 2,
225c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org    'ninja': 1,
235c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org  }[test.format]
245c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
255c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org  CHDIR = 'ldflags-libtool'
265c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org  test.run_gyp('test.gyp', chdir=CHDIR)
275c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
285c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org  test.build('test.gyp', 'ldflags_passed_to_libtool', chdir=CHDIR,
295c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org             status=build_error_code)
305c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org
315c809bab10c272ab2e34289a2505fc19ccd1da2cthakis@chromium.org  test.pass_test()
32