| # Copyright 2014 The Chromium Authors. All rights reserved. | 
 | # Use of this source code is governed by a BSD-style license that can be | 
 | # found in the LICENSE file. | 
 |  | 
 | { | 
 |   'targets': [ | 
 |     { | 
 |       'target_name': 'boringssl', | 
 |       'type': '<(component)', | 
 |       'includes': [ | 
 |         'boringssl.gypi', | 
 |       ], | 
 |       'sources': [ | 
 |         '<@(boringssl_lib_sources)', | 
 |       ], | 
 |       'defines': [ | 
 |         'BORINGSSL_IMPLEMENTATION', | 
 |         'BORINGSSL_NO_STATIC_INITIALIZER', | 
 |       ], | 
 |       # TODO(davidben): Fix size_t truncations in BoringSSL. | 
 |       # https://crbug.com/429039 | 
 |       'msvs_disabled_warnings': [ 4267, ], | 
 |       'conditions': [ | 
 |         ['component == "shared_library"', { | 
 |           'defines': [ | 
 |             'BORINGSSL_SHARED_LIBRARY', | 
 |           ], | 
 |         }], | 
 |         ['target_arch == "arm"', { | 
 |           'sources': [ '<@(boringssl_linux_arm_sources)' ], | 
 |         }], | 
 |         ['target_arch == "arm64"', { | 
 |           'sources': [ '<@(boringssl_linux_aarch64_sources)' ], | 
 |         }], | 
 |         ['target_arch == "ia32"', { | 
 |           'conditions': [ | 
 |             ['OS == "mac"', { | 
 |               'sources': [ '<@(boringssl_mac_x86_sources)' ], | 
 |             }], | 
 |             ['OS == "linux" or OS == "android"', { | 
 |               'sources': [ '<@(boringssl_linux_x86_sources)' ], | 
 |             }], | 
 |             ['OS == "win"', { | 
 |               'sources': [ '<@(boringssl_win_x86_sources)' ], | 
 |               # Windows' assembly is built with Yasm. The other platforms use | 
 |               # the platform assembler. | 
 |               'variables': { | 
 |                 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/boringssl', | 
 |               }, | 
 |               'includes': [ | 
 |                 '../yasm/yasm_compile.gypi', | 
 |               ], | 
 |             }], | 
 |             ['OS != "mac" and OS != "linux" and OS != "win" and OS != "android"', { | 
 |               'defines': [ 'OPENSSL_NO_ASM' ], | 
 |             }], | 
 |           ] | 
 |         }], | 
 |         ['target_arch == "x64"', { | 
 |           'conditions': [ | 
 |             ['OS == "mac"', { | 
 |               'sources': [ '<@(boringssl_mac_x86_64_sources)' ], | 
 |             }], | 
 |             ['OS == "linux" or OS == "android"', { | 
 |               'sources': [ '<@(boringssl_linux_x86_64_sources)' ], | 
 |             }], | 
 |             ['OS == "win"', { | 
 |               'sources': [ '<@(boringssl_win_x86_64_sources)' ], | 
 |               # Windows' assembly is built with Yasm. The other platforms use | 
 |               # the platform assembler. | 
 |               'variables': { | 
 |                 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/boringssl', | 
 |               }, | 
 |               'includes': [ | 
 |                 '../yasm/yasm_compile.gypi', | 
 |               ], | 
 |             }], | 
 |             ['OS != "mac" and OS != "linux" and OS != "win" and OS != "android"', { | 
 |               'defines': [ 'OPENSSL_NO_ASM' ], | 
 |             }], | 
 |           ] | 
 |         }], | 
 |         ['target_arch != "arm" and target_arch != "ia32" and target_arch != "x64" and target_arch != "arm64"', { | 
 |           'defines': [ 'OPENSSL_NO_ASM' ], | 
 |         }], | 
 |       ], | 
 |       'include_dirs': [ | 
 |         'src/include', | 
 |         # This is for arm_arch.h, which is needed by some asm files. Since the | 
 |         # asm files are generated and kept in a different directory, they | 
 |         # cannot use relative paths to find this file. | 
 |         'src/crypto', | 
 |       ], | 
 |       'direct_dependent_settings': { | 
 |         'include_dirs': [ | 
 |           'src/include', | 
 |         ], | 
 |         'conditions': [ | 
 |           ['component == "shared_library"', { | 
 |             'defines': [ | 
 |               'BORINGSSL_SHARED_LIBRARY', | 
 |             ], | 
 |           }], | 
 |         ], | 
 |       }, | 
 |     }, | 
 |   ], | 
 | } |