# Copyright 2018 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.

# -------------- READ BEFORE EDITING ---------------
# This file describes the third-party packages used by Rust code and
# how they should be built.
#
# Every edit to this file should be followed by:
# - fx update-rustc-third-party
#
# Always request non-default features you use. This can sometimes get
# missed if another third-party crate in our build requests the same
# feature you use: your builds will usually work, but `fx rustdoc` will
# fail.
#
# More information is available in
# docs/development/languages/rust/third_party.md.

[package]
name = "fuchsia-third-party"
version = "0.1.0"

[dependencies]
# Keep this sorted alphabetically, please.
anyhow = "1.0.38"
arbitrary = { version = "0.4.0", features = ["derive"] }
argh = "0.1.4"
async-channel = "1.6"
async-lock = "2.3"
async-trait = "0.1.40"
base64 = "0.9"
bincode = "1"
bitfield = "0.13"
bitflags = "1"
bumpalo = "3.2.1"
byteorder = { version = "1", features = ["i128"] }
cargo_metadata = "0.9.1"
chrono = "0.4.11"
chrono-english = "0.1.4"
clap = "2.33"
crc = "1.8.1"
criterion = { version = "0.2", default-features = false }
crossbeam = "0.7.3"
csv = "1.0.7"
cxx = "0.3.5"
cxxbridge-cmd = "0.3.5"
darling = "0.12.0"
data-encoding = "2.1.2"
derp = "0.0.13"
difference = "2.0.0"
event-listener = "2.5.1"
fatfs = "0.4.0"
flate2 = { version = "1.0.14", default-features = false, features = ["rust_backend"] }
futures = "=0.3.12"
futures-channel = "=0.3.12"
futures-core = "=0.3.12"
futures-executor = "=0.3.12"
futures-io = "=0.3.12"
futures-lite = "1.11"
futures-macro = "=0.3.12"
futures-sink = "=0.3.12"
futures-task = "=0.3.12"
futures-test = "=0.3.12"
futures-util = "=0.3.12"
glob = "0.3.0"
gpt = "2.0.0"
heck = "0.3.1"
hex = "0.3.2"
http = "0.2.1"
hyper = { version = "0.13.4", default-features = false, features = ["stream"] }
itertools = "0.8"
itoa = "0.4"
json5format = "0.2.0"
lazy_static = "1.4"
libc = "0.2.84"
libm = "0.2.1"
linked-hash-map = "0.5.3"
log = { version = "0.4.11", features = ["std"] }
maplit = "1.0"
matches = "0.1.8"
maybe-owned = "0.3.2"
memchr = "2.0"
# TODO(fxbug.dev/66092) limit to tests
mockall = "0.9"
nom = { version = "5.0.0", default-features = false, features = ["std", "regexp_macros"] }
nom_locate = "2.0.0"
num-derive = "0.2.4"
num-traits= "0.2.5"
numtoa = "0.1.0"
once_cell = { version = "1.2.0", features = ["parking_lot"] }
parking_lot = "0.9"
paste = "1.0"
percent-encoding = "2.1"
pest = "2.1"
pest_derive = "2.1"
pest_generator = "2.1.3"
pin-project = "1.0.4"
pin-utils = "0.1.0"
png = "0.14" # saved for future use
pretty_assertions = "0.5.1"
proc-macro-hack = "0.5.19"
proptest = "0.9.3"
proptest-derive = "0.1.1"
rand = "0.6"
rand_core = "0.4.0"
rand_os = "0.1.2"
rayon = "1.2.1"
regex = "1.0.6"
regex-syntax = "0.6.5"
ring = "0.16"
rouille = "3.0.0"
rust-crypto = "0.2"
rustc-demangle = "0.1.16"
rustc-hash = "1.0.1"
rustls = { version = "0.17.0", features = ["dangerous_configuration"] }
scopeguard = "1.1.0"
semver = "0.9.0"
serde = { version = "1.0.116", features = ["derive"] }
serde_cbor = "0.11.1"
serde_derive = "1.0.116"
serde_json = "1.0.59"
serde_json5 = "0.1.0"
slab = "0.4"
socket2 = { version = "0.4.0", features = ["all"] }
splines = "2.2.0"
static_assertions = "1.1.0"
streaming-stats = "0.2.3"
strsim = "0.10.0"
structopt = "0.2.14"
tempfile = "3.1"
termion = "1.5.3"
test-case = "1.1.0"
textwrap = "0.11.0"
thiserror = "1.0.23"
timebomb = "0.1.2"
tokio = { version = "0.2.16", default-features = false }
toml = "0.5"
tracing = { version = "0.1.25", features = ["log"] }
tracing-core = "0.1.17"
tracing-futures = "0.2.5"
tracing-log = "0.1.2"
unicase = "2.2.0"
untrusted = "0.7"
url = "2.1"
uuid = { version = "0.7.2", features = ["serde", "v4"] } # move ?
valico = "2.4.2"
vte = "0.3"
wasm-bindgen = "0.2.60"
webpki = "0.21"
xml-rs = "0.8"
# move once target-side tests of host-side code have been removed
# in wayland/scanner:lib and unicode_block_generator :
num = "0.2"
unic-char-range = "0.9"
unic-ucd-block = "0.9"
unicode-segmentation = "1.0"
unicode-width = "0.1.3"
utf8parse = "0.1"
walkdir = "2.2.7"

[dependencies.tracing-subscriber]
version = "0.2.7"
default-features = false
features = ["chrono", "registry", "tracing-log"]

# Target-side only dependencies
[target.'cfg(target_os = "fuchsia")'.dependencies]
ansi_term = "0.11.0"
bytes = "0.5.4"
# do not add back without verifying certificate transparency is ready to use - see fxbug.dev/25100
# ct-logs = "0.6"
derivative = "2.1.1"
euclid = "0.22.1"
eui48 = { version = "0.4.6", features = ["serde", "disp_hexstring"] }
getopts = "0.2"
hyper-rustls = { version = "0.20.0", default-features = false }
lipsum = "0.6.0"
num-bigint = { version = "0.2", features = ["rand"] }
openat = "0.1.17"
owning_ref = "0.4.0"
pretty = "0.5.2"
prettytable-rs = "0.8.0"
proc-macro-nested = "0.1.7"
rand_xorshift = "0.1.1"
rust_icu_common = { version = "0.4.1", default-features = false, features = ["renaming"] }
rust_icu_sys = { version = "0.4.1", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] }
rust_icu_ucal = { version = "0.4.1", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_udat = { version = "0.4.1", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_udata = { version = "0.4.1", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_uenum = { version = "0.4.1", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_uloc = { version = "0.4.1", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] }
rust_icu_ustring = { version = "0.4.1", default-features = false, features = ["renaming", "icu_version_in_env"] }
serde_repr = "0.1.3"
smallvec = "0.6"
time = "0.1"
tokio-rustls = "0.13.0"
trust-dns-proto = { version = "0.19.2", default-features = false, features = ["testing"] }
trust-dns-resolver = { version = "0.19.2", default-features = false, features = ["testing"] }
ttf-parser = "0.10.1"
unicode-normalization = "0.1"
vk-sys = "0.4.0"
void = "1.0.2"

# Host-side only dependencies
[target.'cfg(not(target_os = "fuchsia"))'.dependencies]
async-executor = "1.4"
async-fs = "1.5"
async-io = "1.3"
async-net = "1.5"
blocking = "1.0.2"
crossterm = "0.17.7"
concurrent-queue = "1"
easy-parallel = "3.1"
handlebars = "3.5.4"
home = "0.5.3"
hyper-rustls = { version = "0.20.0", default-features = false, features = ["rustls-native-certs"] }
indoc = "0.3.3"
# TODO(https://github.com/rust-lang/rust/issues/58590): nix is not generally
# visible in fuchsia so we don't depend on #[cfg(unix)] things on target
nix = "0.20"
parking = "2"
pem = "0.8.3"
petgraph = "0.5.1"
proc-macro2 = "1.0.24"
polling = "2.0.2"
pulldown-cmark = "0.6.0"
quote = "1.0.2"
serial_test = "0.5.1" # Not for use on Fuchsia, only for a single process.
signal-hook = "0.1.16"
simplelog = "0.8.0"
syn = { version = "1.0.5", features = ["full", "visit-mut", "extra-traits"] }
synstructure = "0.12.1"
tar = "0.4.25"
termios = "0.3.2"
waker-fn = "1.1"
zip = { version = "0.5.5", default-features = false, features = ["deflate"] }

# For crates that we don't want to vendor, create a dummy package in tiny_mirrors/ (see existing
# examples).
[patch.crates-io]
# Keep this sorted alphabetically, please.
backtrace-sys = { path = "tiny_mirrors/backtrace-sys" }
cmake = { path = "tiny_mirrors/cmake"}
# TODO(fxbug.dev/56201): Vendor fatfs when upstream makes a new release.
# See https://github.com/rafalh/rust-fatfs/pull/37#issuecomment-653760603 for more information.
crossterm_winapi = { path = "tiny_mirrors/crossterm_winapi" }
fatfs = { path = "tiny_mirrors/fatfs" }
fuchsia-cprng = { path = "../../src/lib/zircon/rust/fuchsia-cprng" }
futures-timer = { path = "tiny_mirrors/futures-timer" }
js-sys = { path = "tiny_mirrors/js-sys" }
libm = { path = "tiny_mirrors/libm" }
memchr = { path = "tiny_mirrors/memchr" }
miow = { path = "tiny_mirrors/miow" }
nom_locate = { path = "tiny_mirrors/nom_locate" }
ntapi = { path = "tiny_mirrors/ntapi" }
pkg-config = { path = "tiny_mirrors/pkg-config" }
regex-automata = { path = "tiny_mirrors/regex-automata" }
rust-crypto = { path = "../rust-mirrors/rust-crypto" }
rustls = { path = "tiny_mirrors/rustls" }
security-framework = { path = "tiny_mirrors/security-framework" }
serde_json5 = { path = "../rust-mirrors/serde_json5" }
streaming-stats = { path = "tiny_mirrors/streaming-stats" }
# termcolor 1.1.0 w/ UNLICENSE file removed per OSRB
termcolor = { path = "tiny_mirrors/termcolor" }
tracing-core = { path = "tiny_mirrors/tracing-core" }
wasm-bindgen-futures = { path = "tiny_mirrors/wasm-bindgen-futures" }
web-sys = { path = "tiny_mirrors/web-sys" }
wepoll-binding = { path = "tiny_mirrors/wepoll-binding" }
wepoll-sys = { path = "tiny_mirrors/wepoll-sys" }
winapi-i686-pc-windows-gnu = { path = "tiny_mirrors/winapi-i686-pc-windows-gnu" }
winapi-x86_64-pc-windows-gnu = { path = "tiny_mirrors/winapi-x86_64-pc-windows-gnu" }
winapi = { path = "tiny_mirrors/winapi" }
winapi-util = { path = "tiny_mirrors/winapi-util" }

#################################################################################
###                            Cargo GNaw Configs                             ###
###                                                                           ###
### See GNaw's documentation in //tools/cargo-gnaw/README.md for more details ###
### and examples.                                                             ###
#################################################################################

# Global GN configs that will be added or removed from all generated targets

[gn.config]
remove_cfgs = [
  # Fuchsia defaults targets to 2018 edition. third_party can be any version
  "//build/config/rust:edition_2018",
  # Fuchsia forces targets to comply with 2018 idioms. third_party can ignore this
  "//build/config/rust:2018_idioms",
]
add_cfgs = []

# The below config data is for the targets being used by cargo-gnaw. This provides custom input that
# is usually provided by build.rs scripts. If the build.rs script is simple enough, cargo-gnaw will
# suggest what to put in here. if not, usually reading the build.rs script is sufficient.
#
# arguments to target:
#   rustflags - flags to pass to rustc
#   deps - native GN dependency
#   env_vars - environment variables, usually used for pretending to be cargo
#   configs - native GN config to use
#
# Keep this sorted alphabetically, please.

[gn.package.anyhow."1.0.38"]
# TODO(https://github.com/rust-lang/rust/pull/72981): uncomment when backtrace is stabilized.
# rustflags = ["--cfg=backtrace"]

[gn.package.bitflags."1.2.1"]
rustflags = ["--cfg=bitflags_const_fn"]

[gn.package.brotli-sys."0.3.2"]
deps = [ "//third_party/rust_crates/compat/brotli" ]

[gn.package.byteorder."1.3.1"]
rustflags = ["--cfg=byteorder_i128"]

[gn.package.core-foundation-sys."0.7.0".platform."cfg(target_os = \"macos\")"]
rustflags = ["-lframework=CoreFoundation"]

[gn.package.crc."1.8.1"]
env_vars = ["OUT_DIR=../../../compat/crc"]

[gn.package.crc32fast."1.2.0"]
rustflags = ["--cfg=crc32fast_stdarchx86"]

[gn.package.getrandom."0.2.2"]
rustflags = []

[gn.package.httparse."1.3.3"]
rustflags = ["--cfg=httparse_simd"]

[gn.package.libc."0.2.88"]
rustflags = ["--cfg=libc_priv_mod_use", "--cfg=libc_union", "--cfg=libc_const_size_of", "--cfg=libc_align", "--cfg=libc_core_cvoid", "--cfg=libc_packedN", "--cfg=libc_cfg_target_vendor"]

[gn.package.libc."0.2.88".platform."cfg(target_vendor = \"apple\")"]
rustflags = ["-liconv"]

[gn.package.libc."0.2.88".platform."cfg(target_os = \"freebsd\")"]
rustflags = ["--cfg=freebsd11"]

[gn.package.log."0.4.11"]
rustflags = ["--cfg=atomic_cas"]

[gn.package.memchr."2.3.3"]
rustflags = ["--cfg=memchr_runtime_simd", "--cfg=memchr_runtime_sse2", "--cfg=memchr_runtime_sse42", "--cfg=memchr_runtime_avx"]

[gn.package.mime_guess."1.8.6"]
env_vars = ["OUT_DIR=../../../compat/mime_guess"]

[gn.package.num-bigint."0.2.2"]
rustflags = ["--cfg=has_i128"]

[gn.package.num-complex."0.2.1"]
rustflags = ["--cfg=has_i128"]

[gn.package.num-derive."0.2.4"]
rustflags = ["--cfg=has_i128"]

[gn.package.num-integer."0.1.39"]
rustflags = ["--cfg=has_i128"]

[gn.package.num-rational."0.2.1"]
rustflags = ["--cfg=has_i128"]

[gn.package.num-traits."0.2.11"]
rustflags = ["--cfg=has_i128"]

[gn.package.maybe-uninit."2.0.0"]
rustflags = ["--cfg=derive_copy", "--cfg=repr_transparent", "--cfg=native_uninit"]

[gn.package.num-iter."0.1.37"]
rustflags = ["--cfg=has_i128"]

[gn.package.pin-project-internal."0.4.26"]
rustflags = ["--cfg=underscore_consts", "--cfg=deprecated_proc_macro"]

[gn.package.proc-macro2."0.4.27"]
rustflags = ["--cfg=u128", "--cfg=use_proc_macro", "--cfg=wrap_proc_macro"]

# cargo-gnaw suggested "--cfg=proc_macro_span" as well but proc_macro_span is still an unstable feature.
[gn.package.proc-macro2."1.0.24"]
rustflags = ["--cfg=span_locations", "--cfg=lexerror_display", "--cfg=hygiene", "--cfg=use_proc_macro", "--cfg=wrap_proc_macro"]

[gn.package.proc-macro-hack."0.5.19"]
rustflags = []

[gn.package.rand."0.6.5"]
rustflags = ["--cfg=rustc_1_25","--cfg=rustc_1_26",  "--cfg=rustc_1_27",]

[gn.package.rand_chacha."0.1.1"]
rustflags = ["--cfg=rustc_1_26"]

[gn.package.rand_pcg."0.1.1"]
rustflags = ["--cfg=rust_1_26"]

[gn.package.ring."0.16.12"]
deps = [ "//third_party/rust_crates/compat/ring:ring-core" ]

[gn.package.rust-crypto."0.2.36"]
deps = [ "//third_party/rust_crates/compat/rust-crypto" ]

[gn.package.ryu."1.0.3"]
rustflags = ["--cfg=integer128", "--cfg=must_use_return", "--cfg=maybe_uninit"]

[gn.package.proc-macro-nested."0.1.7"]
rustflags = []
env_vars = ["OUT_DIR=../../../compat/proc-macro-nested", "PATH_SEPARATOR=/"]

[gn.package.serde."1.0.116"]
rustflags = ["--cfg=ops_bound", "--cfg=core_reverse", "--cfg=de_boxed_c_str", "--cfg=de_boxed_path", "--cfg=de_rc_dst", "--cfg=core_duration", "--cfg=integer128", "--cfg=range_inclusive", "--cfg=num_nonzero", "--cfg=core_try_from", "--cfg=num_nonzero_signed", "--cfg=std_atomic64", "--cfg=std_atomic"]

[gn.package.serde_derive."1.0.116"]
rustflags = ["--cfg=underscore_consts"]

[gn.package.tiny_http."0.6.2"]
# TODO(61282): Fix the leaks and remove this.
deps = [ "//build/config/sanitizers:suppress-lsan.DO-NOT-USE-THIS" ]

[gn.package.unicase."1.4.2"]
rustflags = ["--cfg=__unicase__default_hasher", "--cfg=__unicase__iter_cmp"]

[gn.package.unicase."2.5.1"]
rustflags = ["--cfg=__unicase__default_hasher", "--cfg=__unicase__const_funs", "--cfg=__unicase__iter_cmp"]

[gn.package.valico."2.4.2"]
env_vars = ["OUT_DIR=../../../../compat/valico"]


# These don't have build.rs scripts but require platform-specific target configuration.
#
# Keep this sorted alphabetically, please.

[gn.package.backtrace."0.3.42".platform."cfg(target_os = \"fuchsia\")"]
configs = [ "//build/config/fuchsia:libunwind" ]


# These don't have build.rs scripts, but they rely on Cargo populating the environment variables
#
# Keep this sorted alphabetically, please.

[gn.package.handlebars."3.5.4"]
# pest relies on this being set to find the grammar file
env_vars = [ "CARGO_MANIFEST_DIR=../../third_party/rust_crates/vendor/handlebars" ]

[gn.package.rust_icu_common."0.4.1"]
configs = [ "//src/lib/icu:version" ]
[gn.package.rust_icu_sys."0.4.1"]
configs = [ "//src/lib/icu:version" ]
[gn.package.rust_icu_ucal."0.4.1"]
configs = [ "//src/lib/icu:version" ]
[gn.package.rust_icu_udat."0.4.1"]
configs = [ "//src/lib/icu:version" ]
[gn.package.rust_icu_udata."0.4.1"]
configs = [ "//src/lib/icu:version" ]
[gn.package.rust_icu_uenum."0.4.1"]
configs = [ "//src/lib/icu:version" ]
[gn.package.rust_icu_uloc."0.4.1"]
configs = [ "//src/lib/icu:version" ]
[gn.package.rust_icu_ustring."0.4.1"]
configs = [ "//src/lib/icu:version" ]

[gn.package.trust-dns-resolver."0.19.2"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.19.2\\\"" ]

[gn.package.unic-common."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-common\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-ucd-version."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-ucd-version\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-char-range."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-char-range\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-char-property."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-char-property\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-ucd-block."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-ucd-block\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]

[gn.package.wasm-bindgen-shared."0.2.60"]
# Do not quote, this is embedded directly in .wasm sections and is needed by wasm-bindgen.
env_vars = [ "CARGO_PKG_VERSION=0.2.60" ]

# These dependencies have build.rs scripts, but dummy invocations indicating they
# do not need to be run are sufficient for our build
#
# Keep this sorted alphabetically, please.
[gn.package.backtrace-sys."0.1.32"]
[gn.package.bincode."1.1.1"]
[gn.package.crossbeam-epoch."0.8.2"]
[gn.package.crossbeam-utils."0.7.2"]
# cxx's build.rs is only used to build it's src/cxx.cc file, for crates that use cxx and build with
# cargo. It is replaced with //src/lib/rust_cxx:cxx_lib.
[gn.package.cxx."0.3.5"]
[gn.package.getrandom."0.1.13"]
# cxx uses this to link against libc++ or libstdc++, for crates that use cxx and build with cargo.
# It is replaced by our own build machinery.
[gn.package.link-cplusplus."1.0.2"]
[gn.package.memoffset."0.5.3"]
[gn.package.nom."5.0.0"]
[gn.package.parking_lot."0.9.0"]
[gn.package.parking_lot_core."0.6.2"]
[gn.package.pulldown-cmark."0.6.0"]
[gn.package.rayon-core."1.7.0"]
[gn.package.syn."1.0.58"]
[gn.package.test-case."1.1.0"]
[gn.package.wasm-bindgen."0.2.60"]


# This section defines GN binary targets that should be generated from Cargo binary targets. (By
# default, cargo-gnaw will only generate targets for libraries and proc-macros.)
#
# Example:
#
#   [gn.package.cargo-package-name."1.2.3".binary.cargo-target-name]
#   output_name = "gn-name"
#   rustflags = [ ... ]
#   configs = [ ... ]
#
#
# In the above example, "gn-name" will become both the name of the group target to depend
# upon and the executable's output_name, so usages can assume output_name == target_name (and must
# since get_target_outputs only works within the same file).
#
# "cargo-target-name" is the name of the Cargo binary target within "cargo-package-name".
#
# Keep this sorted alphabetically, please.

[gn.package.cxxbridge-cmd."0.3.5".binary.cxxbridge]
output_name = "cxxbridge"

[gn.package.serde_json."1.0.59"]
rustflags = ["--cfg=limb_width_64"]
