# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies
#
# If you believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "getrandom"
version = "0.1.13"
authors = ["The Rand Project Developers"]
exclude = ["utils/*", ".*", "appveyor.yml"]
description = "A small cross-platform library for retrieving random data from system source"
documentation = "https://docs.rs/getrandom"
categories = ["os", "no-std"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-random/getrandom"
[dependencies.cfg-if]
version = "0.1.2"

[dependencies.compiler_builtins]
version = "0.1"
optional = true

[dependencies.core]
version = "1.0"
optional = true
package = "rustc-std-workspace-core"

[dependencies.log]
version = "0.4"
optional = true

[features]
dummy = []
rustc-dep-of-std = ["compiler_builtins", "core"]
std = []
test-in-browser = ["wasm-bindgen"]
[target."cfg(target_os = \"wasi\")".dependencies.wasi]
version = "0.7"
[target."cfg(unix)".dependencies.libc]
version = "0.2.64"
default-features = false
[target.wasm32-unknown-unknown.dependencies.stdweb]
version = "0.4.18"
optional = true

[target.wasm32-unknown-unknown.dependencies.wasm-bindgen]
version = "0.2.29"
optional = true
[target.wasm32-unknown-unknown.dev-dependencies.wasm-bindgen-test]
version = "0.2"
[badges.appveyor]
repository = "rust-random/getrandom"

[badges.travis-ci]
repository = "rust-random/getrandom"
