# 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 are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
name = "num_threads"
version = "0.1.7"
authors = ["Jacob Pratt <open-source@jhpratt.dev>"]
include = [
    "src/**/*",
    "LICENSE-*",
]
description = "A minimal library that determines the number of running threads for the current process."
categories = [
    "api-bindings",
    "hardware-support",
    "os",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/jhpratt/num_threads"

[package.metadata.docs.rs]
all-features = true
targets = ["x86_64-unknown-linux-gnu"]

[[test]]
name = "tests"
path = "tests.rs"
harness = false

[dependencies]

[target."cfg(any(target_os = \"macos\", target_os = \"ios\", target_os = \"freebsd\"))".dependencies.libc]
version = "0.2.107"
