# 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]
edition = "2021"
rust-version = "1.59"
name = "cortex-m-rt"
version = "0.7.3"
authors = [
    "The Cortex-M Team <cortex-m@teams.rust-embedded.org>",
    "Jorge Aparicio <jorge@japaric.io>",
    "Hideki Sekine <sekineh@me.com>",
]
links = "cortex-m-rt"
autoexamples = true
description = "Minimal runtime / startup for Cortex-M microcontrollers"
documentation = "https://docs.rs/cortex-m-rt/"
readme = "README.md"
keywords = [
    "arm",
    "cortex-m",
    "runtime",
    "startup",
]
categories = [
    "embedded",
    "no-std",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-embedded/cortex-m"

[package.metadata.docs.rs]
features = ["device"]

[[example]]
name = "device"
required-features = ["device"]

[[example]]
name = "warnings"
required-features = ["device"]

[[test]]
name = "compiletest"
required-features = ["device"]

[dependencies.cortex-m-rt-macros]
version = "=0.7.0"

[dev-dependencies.cortex-m]
version = "0.7.4"

[dev-dependencies.panic-halt]
version = "0.2.0"

[features]
device = []
set-sp = []
set-vtor = []

[target."cfg(not(target_os = \"none\"))".dev-dependencies.compiletest_rs]
version = "0.7"
