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.
8 'target_name': 'boringssl',
9 'type': '<(component)',
14 '<@(boringssl_crypto_sources)',
15 '<@(boringssl_ssl_sources)',
18 'BORINGSSL_IMPLEMENTATION',
19 'BORINGSSL_NO_STATIC_INITIALIZER',
21 # TODO(davidben): Fix size_t truncations in BoringSSL.
22 # https://crbug.com/429039
23 'msvs_disabled_warnings': [ 4267, ],
25 ['component == "shared_library"', {
27 'BORINGSSL_SHARED_LIBRARY',
30 ['target_arch == "arm" and msan == 0', {
32 ['OS == "linux" or OS == "android"', {
33 'sources': [ '<@(boringssl_linux_arm_sources)' ],
35 'defines': [ 'OPENSSL_NO_ASM' ],
39 ['target_arch == "arm64" and msan == 0', {
41 ['OS == "linux" or OS == "android"', {
42 'sources': [ '<@(boringssl_linux_aarch64_sources)' ],
44 'defines': [ 'OPENSSL_NO_ASM' ],
48 ['target_arch == "ia32" and msan == 0', {
50 ['OS == "mac" or OS == "ios"', {
51 'sources': [ '<@(boringssl_mac_x86_sources)' ],
53 ['OS == "linux" or OS == "android"', {
54 'sources': [ '<@(boringssl_linux_x86_sources)' ],
57 'sources': [ '<@(boringssl_win_x86_sources)' ],
58 # Windows' assembly is built with Yasm. The other platforms use
59 # the platform assembler.
61 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/boringssl',
64 '../yasm/yasm_compile.gypi',
67 ['OS != "mac" and OS != "ios" and OS != "linux" and OS != "win" and OS != "android"', {
68 'defines': [ 'OPENSSL_NO_ASM' ],
72 ['target_arch == "x64" and msan == 0', {
74 ['OS == "mac" or OS == "ios"', {
75 'sources': [ '<@(boringssl_mac_x86_64_sources)' ],
77 ['OS == "linux" or OS == "android"', {
78 'sources': [ '<@(boringssl_linux_x86_64_sources)' ],
81 'sources': [ '<@(boringssl_win_x86_64_sources)' ],
82 # Windows' assembly is built with Yasm. The other platforms use
83 # the platform assembler.
85 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/boringssl',
88 '../yasm/yasm_compile.gypi',
91 ['OS != "mac" and OS != "ios" and OS != "linux" and OS != "win" and OS != "android"', {
92 'defines': [ 'OPENSSL_NO_ASM' ],
96 ['msan == 1 or (target_arch != "arm" and target_arch != "ia32" and target_arch != "x64" and target_arch != "arm64")', {
97 'defines': [ 'OPENSSL_NO_ASM' ],
102 # This is for arm_arch.h, which is needed by some asm files. Since the
103 # asm files are generated and kept in a different directory, they
104 # cannot use relative paths to find this file.
107 'direct_dependent_settings': {
112 ['component == "shared_library"', {
114 'BORINGSSL_SHARED_LIBRARY',