1db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org#!/usr/bin/env python
2db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
3db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org# Copyright (c) 2012 Google Inc. All rights reserved.
4db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org# Use of this source code is governed by a BSD-style license that can be
5db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org# found in the LICENSE file.
6db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
7db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org"""
8db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.orgMake sure libpath is extracted properly.
9db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org"""
10db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
11db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.orgimport TestGyp
12db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
13db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.orgimport sys
14db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
15db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.orgif sys.platform == 'win32':
16db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  test = TestGyp.TestGyp(formats=['msvs', 'ninja'])
17db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
18db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  CHDIR = 'linker-flags'
19db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
20db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  # Build subdirectory library.
21db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  test.run_gyp('subdir/library.gyp', chdir=CHDIR)
22db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  test.build('subdir/library.gyp', test.ALL, chdir=CHDIR)
23db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
24db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  # And then try to link the main project against the library using only
25db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  # LIBPATH to find it.
26db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  test.run_gyp('library-directories.gyp', chdir=CHDIR)
27db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
28db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  # Without additional paths specified, should fail.
29db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  test.build('library-directories.gyp', 'test_libdirs_none', chdir=CHDIR,
30db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org      status=1)
31db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
32db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  # With the additional library directory, should pass.
33db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  test.build('library-directories.gyp', 'test_libdirs_with', chdir=CHDIR)
34db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org
35db7808a22a67ccaa736ca66dd67871ea4d4db0bascottmg@chromium.org  test.pass_test()
36