# Copyright 2019 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("BUILD.generated.gni")

# This file defines several variables used by //zircon/third_party/ulib/uboringssl. They are defined
# here so that they can be changed atomically with an upstream roll.

# Zircon code that depends on BoringSSL should have a "#define BORINGSSL_NO_CXX"  statement before
# any "#include <openssl/...>" statements to avoid pulling in C++ headers.
boringssl_zircon_include_dirs = [ "src/include" ]

boringssl_zircon_kernel_sources = [
  "src/crypto/chacha/chacha.c",
  "src/crypto/fipsmodule/sha/sha256.c",
]

boringssl_zircon_system_sources = [
  "err_data.c",
  "src/crypto/cipher_extra/e_aesgcmsiv.c",
  "src/crypto/cpu-aarch64-fuchsia.c",
  "src/crypto/cpu-arm.c",
  "src/crypto/cpu-intel.c",
  "src/crypto/crypto.c",
  "src/crypto/err/err.c",
  "src/crypto/fipsmodule/aes/aes.c",
  "src/crypto/fipsmodule/aes/aes_nohw.c",
  "src/crypto/fipsmodule/aes/mode_wrappers.c",
  "src/crypto/fipsmodule/cipher/aead.c",
  "src/crypto/fipsmodule/cipher/cipher.c",
  "src/crypto/fipsmodule/cipher/e_aes.c",
  "src/crypto/fipsmodule/digest/digest.c",
  "src/crypto/fipsmodule/digest/digests.c",
  "src/crypto/fipsmodule/hmac/hmac.c",
  "src/crypto/fipsmodule/modes/gcm.c",
  "src/crypto/fipsmodule/modes/gcm_nohw.c",
  "src/crypto/fipsmodule/modes/polyval.c",
  "src/crypto/fipsmodule/sha/sha256.c",
  "src/crypto/hkdf/hkdf.c",
  "src/crypto/mem.c",
  "src/crypto/thread_pthread.c",
  "src/decrepit/xts/xts.c",
]

boringssl_zircon_system_arm64_sources = crypto_sources_linux_aarch64

boringssl_zircon_system_x64_darwin_sources = crypto_sources_mac_x86_64

boringssl_zircon_system_x64_linux_sources = crypto_sources_linux_x86_64
