Implement SingleThreadProxy CommitVSyncParameters
[chromium-blink-merge.git] / third_party / boringssl / boringssl.gyp
blobd0b716a8f7d43b348f336d69441f3bf34cb4d4eb
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6   'targets': [
7     {
8       'target_name': 'boringssl',
9       'type': '<(component)',
10       'includes': [
11         'boringssl.gypi',
12       ],
13       'sources': [
14         '<@(boringssl_lib_sources)',
15       ],
16       'defines': [
17         'BORINGSSL_IMPLEMENTATION',
18         'BORINGSSL_NO_STATIC_INITIALIZER',
19       ],
20       # TODO(davidben): Fix size_t truncations in BoringSSL.
21       # https://crbug.com/429039
22       'msvs_disabled_warnings': [ 4267, ],
23       'conditions': [
24         ['component == "shared_library"', {
25           'defines': [
26             'BORINGSSL_SHARED_LIBRARY',
27           ],
28         }],
29         ['target_arch == "arm"', {
30           'sources': [ '<@(boringssl_linux_arm_sources)' ],
31         }],
32         ['target_arch == "ia32"', {
33           'conditions': [
34             ['OS == "mac"', {
35               'sources': [ '<@(boringssl_mac_x86_sources)' ],
36             }],
37             ['OS == "linux" or OS == "android"', {
38               'sources': [ '<@(boringssl_linux_x86_sources)' ],
39             }],
40             ['OS == "win"', {
41               'sources': [ '<@(boringssl_win_x86_sources)' ],
42               # Windows' assembly is built with Yasm. The other platforms use
43               # the platform assembler.
44               'variables': {
45                 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/boringssl',
46               },
47               'includes': [
48                 '../yasm/yasm_compile.gypi',
49               ],
50             }],
51             ['OS != "mac" and OS != "linux" and OS != "win" and OS != "android"', {
52               'defines': [ 'OPENSSL_NO_ASM' ],
53             }],
54           ]
55         }],
56         ['target_arch == "x64"', {
57           'conditions': [
58             ['OS == "mac"', {
59               'sources': [ '<@(boringssl_mac_x86_64_sources)' ],
60             }],
61             ['OS == "linux" or OS == "android"', {
62               'sources': [ '<@(boringssl_linux_x86_64_sources)' ],
63             }],
64             ['OS == "win"', {
65               'sources': [ '<@(boringssl_win_x86_64_sources)' ],
66               # Windows' assembly is built with Yasm. The other platforms use
67               # the platform assembler.
68               'variables': {
69                 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/boringssl',
70               },
71               'includes': [
72                 '../yasm/yasm_compile.gypi',
73               ],
74             }],
75             ['OS != "mac" and OS != "linux" and OS != "win" and OS != "android"', {
76               'defines': [ 'OPENSSL_NO_ASM' ],
77             }],
78           ]
79         }],
80         ['target_arch != "arm" and target_arch != "ia32" and target_arch != "x64"', {
81           'defines': [ 'OPENSSL_NO_ASM' ],
82         }],
83       ],
84       'include_dirs': [
85         'src/include',
86         # This is for arm_arch.h, which is needed by some asm files. Since the
87         # asm files are generated and kept in a different directory, they
88         # cannot use relative paths to find this file.
89         'src/crypto',
90       ],
91       'direct_dependent_settings': {
92         'include_dirs': [
93           'src/include',
94         ],
95         'conditions': [
96           ['component == "shared_library"', {
97             'defines': [
98               'BORINGSSL_SHARED_LIBRARY',
99             ],
100           }],
101         ],
102       },
103     },
104   ],