# 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"] }
bytes = "0.5.4"
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 = { path = "tiny_mirrors/fatfs" }
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"
rand_xorshift = "0.1.1"
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 = { path = "../rust-mirrors/serde_json5" }
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"
# 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"
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.19"
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.17"
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" }
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" }
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.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"]
