diff options
Diffstat (limited to 'third_party/boringssl')
-rw-r--r-- | third_party/boringssl/BUILD.gn | 65 | ||||
-rw-r--r-- | third_party/boringssl/boringssl_nacl.gyp | 50 |
2 files changed, 115 insertions, 0 deletions
diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn new file mode 100644 index 0000000..52a3ff3 --- /dev/null +++ b/third_party/boringssl/BUILD.gn @@ -0,0 +1,65 @@ +# 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. + +# Config for us and everybody else depending on BoringSSL. +config("openssl_config") { + include_dirs = [] + include_dirs += [ "src/include" ] +} + +# Config internal to this build file. +config("openssl_internal_config") { + visibility = ":*" # Only targets in this file can depend on this. +} + +# The list of BoringSSL files is kept in boringssl.gypi. +gypi_values = exec_script( + "//build/gypi_to_gn.py", + [ rebase_path("//third_party/boringssl/boringssl.gypi") ], + "scope", + [ "//third_party/boringssl/boringssl.gypi" ]) + +component("boringssl") { + sources = gypi_values.boringssl_lib_sources + + direct_dependent_configs = [ ":openssl_config" ] + + cflags = [] + + configs -= [ "//build/config/compiler:chromium_code" ] + configs += [ "//build/config/compiler:no_chromium_code" ] + + # Also gets the include dirs from :openssl_config + 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", + ] + + if (cpu_arch == "x64") { + if (is_mac) { + sources += gypi_values.boringssl_mac_x86_64_sources + } else if (is_linux || is_android) { + sources += gypi_values.boringssl_linux_x86_64_sources + } else if (is_win) { + sources += gypi_values.boringssl_win_x86_64_sources + } else { + defines += [ "OPENSSL_NO_ASM" ] + } + } else if (cpu_arch == "x86") { + if (is_mac) { + sources += gypi_values.boringssl_mac_x86_sources + } else if (is_linux || is_android) { + sources += gypi_values.boringssl_linux_x86_sources + } else { + defines += [ "OPENSSL_NO_ASM" ] + } + } else if (cpu_arch == "arm") { + sources += gypi_values.boringssl_linux_arm_sources + } else { + defines += [ "OPENSSL_NO_ASM" ] + } +} diff --git a/third_party/boringssl/boringssl_nacl.gyp b/third_party/boringssl/boringssl_nacl.gyp new file mode 100644 index 0000000..6ab4b9d --- /dev/null +++ b/third_party/boringssl/boringssl_nacl.gyp @@ -0,0 +1,50 @@ +# 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. +{ + 'includes': [ + '../../native_client/build/untrusted.gypi', + ], + 'targets': [ + { + 'target_name': 'boringssl_nacl', + 'type': 'none', + 'variables': { + 'nlib_target': 'libboringssl_nacl.a', + 'build_glibc': 0, + 'build_newlib': 0, + 'build_pnacl_newlib': 1, + }, + 'dependencies': [ + '<(DEPTH)/native_client/tools.gyp:prep_toolchain', + '<(DEPTH)/native_client_sdk/native_client_sdk_untrusted.gyp:nacl_io_untrusted', + ], + 'includes': [ + # Include the auto-generated gypi file. + 'boringssl.gypi' + ], + 'sources': [ + '<@(boringssl_lib_sources)', + ], + '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', + ], + }, + 'pnacl_compile_flags': [ + '-Wno-sometimes-uninitialized', + '-Wno-unused-variable', + ], + }, # target boringssl_nacl + ], +} |