content: [package]
  name = "mc-fog-ingest-enclave-trusted"
  version = "7.0.2"
  authors = ["MobileCoin"]
  edition = "2021"
  license = "GPL-3.0"
  rust-version = { workspace = true }
  
  # Declare as an empty workspace to not confuse cargo.
  [workspace]
  
  [workspace.package]
  rust-version = "1.83.0"
  
  [lib]
  crate-type = ["staticlib"]
  
  [features]
  sgx-sim = ["mc-attest-verifier/sgx-sim"]
  
  [dependencies]
  # fog
  mc-fog-ingest-enclave-api = { path = "../api", default-features = false }
  mc-fog-ingest-enclave-edl = { path = "../edl" }
  mc-fog-ingest-enclave-impl = { path = "../impl", default-features = false }
  mc-fog-ocall-oram-storage-edl = { path = "../../../ocall_oram_storage/edl" }
  mc-fog-ocall-oram-storage-trusted = { path = "../../../ocall_oram_storage/trusted" }
  
  # mobilecoin
  mc-attest-core = { path = "../../../../attest/core", default-features = false }
  mc-attest-verifier = { path = "../../../../attest/verifier", default-features = false }
  mc-enclave-boundary = { path = "../../../../enclave-boundary" }
  mc-sgx-compat = { path = "../../../../sgx/compat", features = ["sgx"] }
  mc-sgx-debug-edl = { path = "../../../../sgx/debug-edl" }
  mc-sgx-enclave-id = { path = "../../../../sgx/enclave-id" }
  mc-sgx-panic-edl = { path = "../../../../sgx/panic-edl" }
  mc-sgx-report-cache-api = { path = "../../../../sgx/report-cache/api" }
  mc-sgx-slog = { path = "../../../../sgx/slog", features = ["sgx"] }
  mc-sgx-slog-edl = { path = "../../../../sgx/slog-edl" }
  mc-sgx-types = { path = "../../../../sgx/types" }
  mc-util-serial = { path = "../../../../util/serial" }
  
  # third-party
  lazy_static = { version = "1.4", features = ["spin_no_std"] }
  mbedtls = { version = "0.8.1", default-features = false, features = ["no_std_deps", "aesni", "force_aesni_support", "rdrand"] }
  mbedtls-sys-auto = { version = "2.26.1", default-features = false, features = ["custom_threading"] }
  sha2 = { version = "0.10", default-features = false }
  
  [build-dependencies]
  mc-util-build-script = { path = "../../../../util/build/script" }
  mc-util-build-sgx = { path = "../../../../util/build/sgx" }
  
  cargo-emit = "0.2.1"
  pkg-config = "0.3"
  
  [profile.dev]
  opt-level = 0
  
  [profile.release]
  opt-level = 3
  rpath = false
  lto = true
  debug-assertions = false
  overflow-checks = false
  
  [patch.crates-io]
  # Fork and rename to use "OG" dalek-cryptography with latest dependencies.
  bulletproofs-og = { git = "https://github.com/mobilecoinfoundation/bulletproofs.git", rev = "9abfdc054d9ba65f1e185ea1e6eff3947ce879dc" }
  
  # Patched to disable the cpuid instruction because that is incompatible with our sgx builds.
  cpufeatures = { git = "https://github.com/mobilecoinfoundation/RustCrypto-utils.git", rev = "f04659dd5dd39fd2f02a4bf14c39a39825d1c8d3" }
  
  # Our patches for newer bindgen, no-std
  mbedtls = { git = "https://github.com/mobilecoinfoundation/rust-mbedtls.git", rev = "f82523478a1dd813ca381c190175355d249a8123" }
  mbedtls-sys-auto = { git = "https://github.com/mobilecoinfoundation/rust-mbedtls.git", rev = "f82523478a1dd813ca381c190175355d249a8123" }
  
  # Fork and rename to use "OG" dalek-cryptography.
  schnorrkel-og = { git = "https://github.com/mobilecoinfoundation/schnorrkel.git", rev = "049bf9d30f3bbe072e2ad1b5eefdf0f3c851215e" }
  
  # Fixes the following:
  # * Allow enabling `serde/std` without also requiring `serde_cbor/std` to be enabled.
  #   See: https://github.com/pyfisch/cbor/pull/198
  serde_cbor = { git = "https://github.com/mobilecoinofficial/cbor", rev = "4c886a7c1d523aae1ec4aa7386f402cb2f4341b5" }
  