| # 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.25" |
| arbitrary = { version = "0.4.0", features = ["derive"] } |
| argh = "0.1" |
| async-trait = "0.1.36" |
| 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" |
| clap = "2.33" |
| crc = "1.8.1" |
| criterion = { version = "0.2", default-features = false } |
| crossbeam = "0.7.3" |
| csv = "1.0.7" |
| difference = "2.0.0" |
| futures = "0.3.5" |
| futures-executor = "0.3.5" |
| futures-io = "0.3.5" |
| futures-test = "0.3.5" |
| futures-util = "0.3.5" |
| glob = "0.3.0" |
| heck = "0.3.1" |
| itertools = "0.8" |
| json5 = "0.2.4" |
| json5format = "0.1.4" |
| lazy_static = "1.4" |
| libc = "0.2" |
| libm = "0.2.1" |
| log = { version = "0.4.4", features = ["std"] } |
| maplit = "1.0" |
| matches = "0.1.8" |
| maybe-owned = "0.3.2" |
| memchr = "2.0" |
| 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 = "0.1" |
| percent-encoding = "2.1" |
| pest = "2.1" |
| pest_derive = "2.1" |
| pest_generator = "2.1.3" |
| pin-utils = "0.1.0" |
| png = "0.14" # saved for future use |
| pretty_assertions = "0.5.1" |
| proc-macro-hack = "0.5.15" |
| 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" |
| rental = "0.5.4" |
| ring = "0.16" |
| rouille = "3.0.0" |
| rust-crypto = "0.2" |
| rustc-demangle = "0.1.16" |
| rustc-hash = "1.0.1" |
| scopeguard = "0.3.3" |
| semver = "0.9.0" |
| serde = { version = "1.0.104", features = ["derive"] } |
| serde_derive = "1.0.104" |
| serde_json = "1" |
| slab = "0.4" |
| socket2 = { version = "0.3.12", features = ["reuseport", "unix"] } |
| splines = "2.2.0" |
| static_assertions = "1.1.0" |
| structopt = "0.2.14" |
| tempfile = "3.1" |
| termion = "1.5.3" |
| test-case = "1.0.0" |
| thiserror = "1.0.9" |
| timebomb = "0.1.2" |
| toml = "0.5" |
| tracing = { version = "0.1.10", features = ["log"] } |
| tracing-futures = "0.2.0" |
| unicase = "2.2.0" |
| url = "2.1" |
| uuid = { version = "0.7.2", features = ["serde", "v4"] } # move ? |
| valico = "2.4.2" |
| wasm-bindgen = "0.2.60" |
| 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" |
| |
| [dependencies.tracing-subscriber] |
| version = "0.2.5" |
| default-features = false |
| features = ["chrono", "registry", "tracing-log"] |
| |
| # Target-side only dependencies |
| [target.'cfg(target_os = "fuchsia")'.dependencies] |
| bytes = "0.5.4" |
| ct-logs = "0.6" |
| data-encoding = "2.1.2" |
| derivative = "2.1.1" |
| derp = "0.0.13" |
| euclid = "0.20.7" |
| eui48 = { version = "0.4.6", features = ["serde", "disp_hexstring"] } |
| freetype = "0.4" # saved for future use |
| getopts = "0.2" |
| hex = "0.3.2" |
| http = "0.2.1" |
| hyper = { version = "0.13.4", default-features = false, features = ["stream"] } |
| hyper-rustls = { version = "0.20.0", default-features = false } |
| id_tree = "1.5" |
| itoa = "0.4" |
| lipsum = "0.6.0" |
| num-bigint = { version = "0.2", features = ["rand"] } |
| openat = "0.1.17" |
| owning_ref = "0.4.0" |
| pin-project = "0.4.6" |
| pretty = "0.5.2" |
| prettytable-rs = "0.8.0" |
| proc-macro-nested = "0.1.4" |
| rand_xorshift = "0.1.1" |
| rust_icu_common = { version = "0.3.0", default-features = false, features = ["renaming"] } |
| rust_icu_sys = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] } |
| rust_icu_ucal = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env"] } |
| rust_icu_udat = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env"] } |
| rust_icu_udata = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env"] } |
| rust_icu_uenum = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env"] } |
| rust_icu_uloc = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] } |
| rust_icu_ustring = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env"] } |
| rust_icu_utext = { version = "0.3.0", default-features = false, features = ["renaming", "icu_version_in_env"] } |
| rustls = { version = "0.17.0", features = ["dangerous_configuration"] } |
| rusttype = "0.7.3" |
| serde_repr = "0.1.3" |
| smallvec = "0.6" |
| textwrap = "0.11.0" |
| time = "0.1" |
| tokio = { version = "0.2.16", default-features = false } |
| 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"] } |
| unicode-normalization = "0.1" |
| unicode-segmentation = "1.0" |
| unicode-width = "0.1.3" |
| untrusted = "0.7" |
| utf8parse = "0.1" |
| vk-sys = "0.4.0" |
| void = "1.0.2" |
| vte = "0.3" |
| walkdir = "2.2.7" |
| webpki = "0.21" |
| |
| # Host-side only dependencies |
| [target.'cfg(not(target_os = "fuchsia"))'.dependencies] |
| async-std = { version = "1.6.0", features = ["attributes"] } |
| flate2 = { version = "1.0.14", default-features = false, features = ["rust_backend"] } |
| handlebars = "2.0.0-beta.2" |
| indoc = "0.3.3" |
| petgraph = "0.5.1" |
| pulldown-cmark = "0.6.0" |
| proc-macro2 = "1.0.9" |
| quote = "1.0.2" |
| simplelog = "0.7.5" |
| signal-hook = "0.1.13" |
| smol = "0.1.11" |
| syn = { version = "1.0.5", features = ["full", "visit-mut", "extra-traits"] } |
| synstructure = "0.12.1" |
| tar = "0.4.25" |
| termios = "0.3.2" |
| 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"} |
| fuchsia-cprng = { path = "../../garnet/public/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" } |
| nom_locate = { path = "tiny_mirrors/nom_locate" } |
| pkg-config = { path = "tiny_mirrors/pkg-config" } |
| regex-automata = { path = "tiny_mirrors/regex-automata" } |
| rust-crypto = { path = "../rust-mirrors/rust-crypto" } |
| servo-freetype-sys = { path = "tiny_mirrors/servo-freetype-sys" } |
| wasm-bindgen-futures = { path = "tiny_mirrors/wasm-bindgen-futures" } |
| web-sys = { path = "tiny_mirrors/web-sys" } |
| wepoll-binding = { path = "tiny_mirrors/wepoll-binding" } |
| winapi = { path = "tiny_mirrors/winapi" } |
| winapi-util = { path = "tiny_mirrors/winapi-util" } |
| |
| ################################################################################# |
| ### Cargo Gnaw Configs ### |
| ################################################################################# |
| |
| # All third_party targets get these cfgs |
| |
| [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 |
| # platform - platform this configuration targets. Uses the rust cfg format (Ex: cfg(unix)) |
| # |
| # Keep this sorted alphabetically, please. |
| |
| [[gn.crate.anyhow."1.0.25"]] |
| # TODO(bwb) turn on when backtrace stabilizes |
| # rustflags = ["--cfg=backtrace"] |
| |
| [[gn.crate.arrayvec."0.4.10"]] |
| |
| [[gn.crate.bitflags."1.2.1"]] |
| rustflags = ["--cfg=bitflags_const_fn"] |
| |
| [[gn.crate.brotli-sys."0.3.2"]] |
| deps = [ "//third_party/rust_crates/compat/brotli" ] |
| |
| [[gn.crate.byteorder."1.3.1"]] |
| rustflags = ["--cfg=byteorder_i128"] |
| |
| [[gn.crate.crc."1.8.1"]] |
| env_vars = ["OUT_DIR=../../../compat/crc"] |
| |
| [[gn.crate.crc32fast."1.2.0"]] |
| rustflags = ["--cfg=crc32fast_stdarchx86"] |
| |
| [[gn.crate.crypto."0.2.36"]] |
| deps = [ "//third_party/rust_crates/compat/rust-crypto" ] |
| |
| [[gn.crate.httparse."1.3.3"]] |
| rustflags = ["--cfg=httparse_simd"] |
| |
| |
| [[gn.crate.libc."0.2.71"]] |
| rustflags = ["--cfg=freebsd11", "--cfg=libc_priv_mod_use", "--cfg=libc_union", "--cfg=libc_const_size_of", "--cfg=libc_align", "--cfg=libc_core_cvoid", "--cfg=libc_packedN"] |
| |
| [[gn.crate.log."0.4.8"]] |
| rustflags = ["--cfg=atomic_cas"] |
| |
| [[gn.crate.memchr."2.3.3"]] |
| rustflags = ["--cfg=memchr_runtime_simd", "--cfg=memchr_runtime_sse2", "--cfg=memchr_runtime_sse42", "--cfg=memchr_runtime_avx"] |
| |
| [[gn.crate.mime_guess."1.8.6"]] |
| env_vars = ["OUT_DIR=../../../compat/mime_guess"] |
| |
| [[gn.crate.num-bigint."0.2.2"]] |
| rustflags = ["--cfg=has_i128"] |
| |
| [[gn.crate.num-complex."0.2.1"]] |
| rustflags = ["--cfg=has_i128"] |
| |
| [[gn.crate.num_derive."0.2.4"]] |
| rustflags = ["--cfg=has_i128"] |
| |
| [[gn.crate.num-integer."0.1.39"]] |
| rustflags = ["--cfg=has_i128"] |
| |
| [[gn.crate.num-rational."0.2.1"]] |
| rustflags = ["--cfg=has_i128"] |
| |
| [[gn.crate.num-traits."0.2.11"]] |
| rustflags = ["--cfg=has_i128"] |
| |
| [[gn.crate.maybe-uninit."2.0.0"]] |
| rustflags = ["--cfg=derive_copy", "--cfg=repr_transparent", "--cfg=native_uninit"] |
| |
| [[gn.crate.num-iter."0.1.37"]] |
| rustflags = ["--cfg=has_i128"] |
| |
| [[gn.crate.proc-macro2."0.4.27"]] |
| rustflags = ["--cfg=u128", "--cfg=use_proc_macro", "--cfg=wrap_proc_macro"] |
| |
| [[gn.crate.proc-macro2."1.0.9"]] |
| rustflags = ["--cfg=use_proc_macro", "--cfg=wrap_proc_macro"] |
| |
| [[gn.crate.rand."0.6.5"]] |
| rustflags = ["--cfg=rustc_1_25","--cfg=rustc_1_26", "--cfg=rustc_1_27",] |
| |
| [[gn.crate.rand_chacha."0.1.1"]] |
| rustflags = ["--cfg=rustc_1_26"] |
| |
| [[gn.crate.rand_pcg."0.1.1"]] |
| rustflags = ["--cfg=rust_1_26"] |
| |
| [[gn.crate.ring."0.16.12"]] |
| deps = [ "//third_party/rust_crates/compat/ring:ring-core" ] |
| |
| [[gn.crate.ryu."1.0.3"]] |
| rustflags = ["--cfg=integer128", "--cfg=must_use_return", "--cfg=maybe_uninit"] |
| |
| [[gn.crate.ryu."0.2.7"]] |
| rustflags = ["--cfg=integer128", "--cfg=must_use_return"] |
| |
| [[gn.crate.proc-macro-nested."0.1.4"]] |
| rustflags = [] |
| env_vars = ["OUT_DIR=../../../compat/proc-macro-nested"] |
| |
| [[gn.crate.serde."1.0.104"]] |
| 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.crate.unicase."1.4.2"]] |
| rustflags = ["--cfg=__unicase__default_hasher", "--cfg=__unicase__iter_cmp"] |
| |
| [[gn.crate.unicase."2.5.1"]] |
| rustflags = ["--cfg=__unicase__default_hasher", "--cfg=__unicase__const_funs", "--cfg=__unicase__iter_cmp"] |
| |
| [[gn.crate.valico."2.4.2"]] |
| env_vars = ["OUT_DIR=../../../../compat/valico"] |
| |
| |
| # These don't have build.rs scripts, but they rely on Cargo populating the environment variables |
| # |
| # Keep this sorted alphabetically, please. |
| [[gn.crate.json5."0.2.4"]] |
| # pest relies on this being set to find the grammar file |
| env_vars = [ "CARGO_MANIFEST_DIR=../../third_party/rust_crates/vendor/json5" ] |
| |
| [[gn.crate.handlebars."2.0.0-beta.2"]] |
| # pest relies on this being set to find the grammar file |
| env_vars = [ "CARGO_MANIFEST_DIR=../../third_party/rust_crates/vendor/handlebars" ] |
| |
| [[gn.crate.rust_icu_common."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_ucal."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_udat."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_udata."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_uenum."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_uloc."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_ustring."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_utext."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| |
| |
| [[gn.crate.unic-common."0.9.0"]] |
| env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-common\\\"", "CARGO_PKG_DESCRIPTION=\\\"\\\"", ] |
| [[gn.crate.unic-ucd-version."0.9.0"]] |
| env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-ucd-version\\\"", "CARGO_PKG_DESCRIPTION=\\\"\\\"", ] |
| [[gn.crate.unic-char-range."0.9.0"]] |
| env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-char-range\\\"", "CARGO_PKG_DESCRIPTION=\\\"\\\"", ] |
| [[gn.crate.unic-char-property."0.9.0"]] |
| env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-char-property\\\"", "CARGO_PKG_DESCRIPTION=\\\"\\\"", ] |
| [[gn.crate.unic-ucd-block."0.9.0"]] |
| env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-ucd-block\\\"", "CARGO_PKG_DESCRIPTION=\\\"\\\"", ] |
| [[gn.crate.trust_dns_resolver."0.19.2"]] |
| env_vars = [ "CARGO_PKG_VERSION=\\\"0.19.2\\\"" ] |
| |
| |
| # These dependencies have build.rs scripts, but dummy invokations indicating they |
| # do not need to be run are sufficient for our build |
| # |
| # Keep this sorted alphabetically, please. |
| [[gn.crate.backtrace-sys."0.1.32"]] |
| [[gn.crate.bincode."1.1.1"]] |
| [[gn.crate.crossbeam-epoch."0.8.2"]] |
| [[gn.crate.crossbeam-utils."0.7.2"]] |
| [[gn.crate.freetype_sys."4.0.5"]] |
| [[gn.crate.getrandom."0.1.13"]] |
| [[gn.crate.memoffset."0.5.3"]] |
| [[gn.crate.nom."5.0.0"]] |
| [[gn.crate.parking_lot."0.9.0"]] |
| [[gn.crate.parking_lot_core."0.6.2"]] |
| [[gn.crate.pulldown-cmark."0.6.0"]] |
| [[gn.crate.rayon-core."1.7.0"]] |
| [[gn.crate.rust_icu_sys."0.3.0"]] |
| configs = [ "//src/lib/icu:version" ] |
| [[gn.crate.rust_icu_uloc."0.3.0"]] |
| [[gn.crate.syn."1.0.21"]] |
| [[gn.crate.test-case."1.0.0"]] |
| [[gn.crate.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"] |
| [[gn.crate.wasm-bindgen."0.2.60"]] |