mirror of
https://github.com/embassy-rs/embassy.git
synced 2025-09-26 20:00:27 +00:00
Read crate configs from metadata.
This commit is contained in:
parent
3f21c90223
commit
9f12852c38
@ -15,6 +15,11 @@ embassy-rp = { version = "0.7.0", path = "../embassy-rp" }
|
||||
fixed = "1.23.1"
|
||||
defmt = { version = "1.0.1", optional = true }
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = ["embassy-rp/rp2040"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/cyw43-pio-v$VERSION/cyw43-pio/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/cyw43-pio/src/"
|
||||
|
@ -38,6 +38,17 @@ heapless = "0.8.0"
|
||||
embedded-io-async = { version = "0.6.0", optional = true }
|
||||
bt-hci = { version = "0.4.0", optional = true }
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = []},
|
||||
{target = "thumbv6m-none-eabi", features = ["log"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["firmware-logs", "log"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "firmware-logs"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["bluetooth", "firmware-logs", "log"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["bluetooth", "defmt", "firmware-logs"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/cyw43-v$VERSION/cyw43/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/cyw43/src/"
|
||||
|
@ -12,6 +12,17 @@ categories = [
|
||||
"asynchronous",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv7em-none-eabi", features = ["embassy-nrf/nrf52840"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["embassy-nrf/nrf5340-app-s"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["embassy-nrf/nrf9160-ns"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["embassy-nrf/nrf9120-ns"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["embassy-nrf/nrf9151-ns"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["embassy-nrf/nrf9161-ns"]},
|
||||
]
|
||||
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-boot-nrf-v$VERSION/embassy-boot-nrf/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-boot-nrf/src/"
|
||||
|
@ -12,6 +12,12 @@ categories = [
|
||||
"asynchronous",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = ["embassy-rp/rp2040"]},
|
||||
]
|
||||
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-boot-rp-v$VERSION/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-boot-rp/src/"
|
||||
|
@ -12,6 +12,12 @@ categories = [
|
||||
"asynchronous",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv7em-none-eabi", features = ["embassy-stm32/stm32l496zg"]},
|
||||
]
|
||||
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-boot-stm32-v$VERSION/embassy-boot-stm32/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-boot-stm32/src/"
|
||||
|
@ -12,6 +12,13 @@ categories = [
|
||||
"asynchronous",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv7em-none-eabi", features = []},
|
||||
{target = "thumbv7em-none-eabi", features = ["time"]},
|
||||
]
|
||||
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-embedded-hal-v$VERSION/embassy-embedded-hal/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-embedded-hal/src/"
|
||||
|
@ -12,6 +12,26 @@ categories = [
|
||||
"asynchronous",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv7em-none-eabi", features = []},
|
||||
{target = "thumbv7em-none-eabi", features = ["log"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["arch-cortex-m", "defmt", "executor-interrupt", "executor-thread"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["arch-cortex-m"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["arch-cortex-m", "rtos-trace"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["arch-cortex-m", "executor-thread"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["arch-cortex-m", "executor-interrupt"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["arch-cortex-m", "executor-interrupt", "executor-thread"]},
|
||||
{target = "armv7a-none-eabi", features = ["arch-cortex-ar", "executor-thread"]},
|
||||
{target = "armv7r-none-eabi", features = ["arch-cortex-ar", "executor-thread"]},
|
||||
{target = "armv7r-none-eabihf", features = ["arch-cortex-ar", "executor-thread"]},
|
||||
{target = "riscv32imac-unknown-none-elf", features = ["arch-riscv32"]},
|
||||
{target = "riscv32imac-unknown-none-elf", features = ["arch-riscv32", "executor-thread"]},
|
||||
]
|
||||
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-executor-v$VERSION/embassy-executor/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-executor/src/"
|
||||
|
@ -9,6 +9,12 @@ categories = ["embedded", "hardware-support", "no-std", "asynchronous"]
|
||||
repository = "https://github.com/embassy-rs/embassy"
|
||||
documentation = "https://docs.embassy.dev/embassy-imxrt"
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "mimxrt633s", "time", "time-driver-rtc", "unstable-pac"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "mimxrt685s", "time", "time-driver-rtc", "unstable-pac"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-imxrt-v$VERSION/embassy-imxrt/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-imxrt/src/"
|
||||
|
@ -9,6 +9,22 @@ categories = ["embedded", "hardware-support", "no-std", "asynchronous"]
|
||||
repository = "https://github.com/embassy-rs/embassy"
|
||||
documentation = "https://docs.embassy.dev/embassy-mspm0"
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0c1104dgs20", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0g3507pm", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0g3519pz", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0l1306rhb", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0l2228pn", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0l1345dgs28", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0l1106dgs28", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0l1228pm", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0g1107ycj", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0g3105rhb", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0g1505pt", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "mspm0g1519rhb", "time-driver-any"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-mspm0-v$VERSION/embassy-mspm0/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-mspm0/src/"
|
||||
|
@ -13,6 +13,21 @@ categories = [
|
||||
"network-programming",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ethernet", "packet-trace", "proto-ipv4", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ethernet", "multicast", "proto-ipv4", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dhcpv4", "dns", "medium-ethernet", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dhcpv4", "dhcpv4-hostname", "dns", "medium-ethernet", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ethernet", "proto-ipv6", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ieee802154", "proto-ipv6", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ethernet", "medium-ieee802154", "proto-ipv6", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ethernet", "proto-ipv4", "proto-ipv6", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ip", "proto-ipv4", "proto-ipv6", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ethernet", "medium-ip", "proto-ipv4", "proto-ipv6", "tcp", "udp"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dns", "medium-ethernet", "medium-ieee802154", "medium-ip", "proto-ipv4", "proto-ipv6", "tcp", "udp"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-net-v$VERSION/embassy-net/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-net/src/"
|
||||
|
@ -9,6 +9,36 @@ categories = ["embedded", "hardware-support", "no-std", "asynchronous"]
|
||||
repository = "https://github.com/embassy-rs/embassy"
|
||||
documentation = "https://docs.embassy.dev/embassy-nrf"
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = ["gpiote", "nrf51", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52805", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52810", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52811", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52820", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52832", "reset-pin-as-gpio", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nfc-pins-as-gpio", "nrf52833", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["gpiote", "nrf9160-s", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["gpiote", "nrf9160-ns", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["gpiote", "nrf5340-app-s", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["gpiote", "nrf5340-app-ns", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["gpiote", "nrf5340-net", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["gpiote", "nrf54l15-app-s", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["gpiote", "nrf54l15-app-ns", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52840", "time"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52840", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "nrf52840", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "log", "nrf52840", "time"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "log", "nrf52840", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["gpiote", "log", "nrf52840", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "gpiote", "nrf52840", "time"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "gpiote", "nrf52840", "time-driver-rtc1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "gpiote", "nrf52840", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "nrf51", "time", "time-driver-rtc1"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "nrf51", "time"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["nrf51", "time"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-nrf-v$VERSION/embassy-nrf/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-nrf/src/"
|
||||
|
@ -3,6 +3,13 @@ name = "embassy-nxp"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "lpc55"]},
|
||||
{target = "thumbv7em-none-eabihf", features = ["defmt", "mimxrt1011", "rt", "time-driver-pit"]},
|
||||
{target = "thumbv7em-none-eabihf", features = ["defmt", "mimxrt1062", "rt", "time-driver-pit"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-nxp-v$VERSION/embassy-nxp/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-nxp/src/"
|
||||
|
@ -9,6 +9,17 @@ categories = ["embedded", "hardware-support", "no-std", "asynchronous"]
|
||||
repository = "https://github.com/embassy-rs/embassy"
|
||||
documentation = "https://docs.embassy.dev/embassy-rp"
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "rp2040", "time-driver"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["log", "rp2040", "time-driver"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["intrinsics", "rp2040", "time-driver"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["qspi-as-gpio", "rp2040", "time-driver"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "rp235xa", "time-driver"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["log", "rp235xa", "time-driver"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["binary-info", "rp235xa", "time-driver"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-rp-v$VERSION/embassy-rp/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-rp/src/"
|
||||
|
@ -9,6 +9,99 @@ categories = ["embedded", "hardware-support", "no-std", "asynchronous"]
|
||||
repository = "https://github.com/embassy-rs/embassy"
|
||||
documentation = "https://docs.embassy.dev/embassy-stm32"
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "dual-bank", "exti", "stm32l552ze", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "dual-bank", "stm32l552ze", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "dual-bank", "exti", "stm32l552ze", "time"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "dual-bank", "stm32l552ze", "time"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "dual-bank", "exti", "stm32l552ze"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "dual-bank", "stm32l552ze"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "single-bank", "stm32l552ze"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32c071rb", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32c051f6", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32c091gb", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32c092rc", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f038f6", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f030c6", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f058t8", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f030r8", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f031k6", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f030rc", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f070f6", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f078vb", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f042g4", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32f072c8", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f401ve", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f405zg", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f407zg", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f401ve", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f405zg", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f407zg", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f410tb", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f411ce", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f412zg", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f413vh", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f415zg", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f417zg", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f423zh", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f427zi", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["exti", "log", "stm32f429zi", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["exti", "log", "stm32f437zi", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f439zi", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f446ze", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f469zi", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f479zi", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f730i8", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h753zi", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h735zg", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "split-pc2", "split-pc3", "stm32h755zi-cm7", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h725re", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h7b3ai", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h7b3ai", "time", "time-driver-tim1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h7r3z8", "time", "time-driver-tim1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h7r7a8", "time", "time-driver-tim1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h7s3a8", "time", "time-driver-tim1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32h7s7z8", "time", "time-driver-tim1"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32l431cb", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32l476vg", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32l422cb", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32wb15cc", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32l072cz", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32l041f6", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32l051k8", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "low-power", "stm32l073cz", "time", "time-driver-any"]},
|
||||
{target = "thumbv7m-none-eabi", features = ["defmt", "exti", "stm32l151cb-a", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f303c8", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f398ve", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32f378cc", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32g0b0ce", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32g0c1ve", "time", "time-driver-any"]},
|
||||
{target = "thumbv7m-none-eabi", features = ["defmt", "exti", "stm32f217zg", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "dual-bank", "exti", "low-power", "stm32l552ze", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32wl54jc-cm0p", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32wle5jb", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32g431kb", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "dual-bank", "exti", "stm32g474pe", "time", "time-driver-any"]},
|
||||
{target = "thumbv7m-none-eabi", features = ["defmt", "exti", "stm32f107vc", "time", "time-driver-any"]},
|
||||
{target = "thumbv7m-none-eabi", features = ["defmt", "exti", "stm32f103re", "time", "time-driver-any"]},
|
||||
{target = "thumbv7m-none-eabi", features = ["defmt", "exti", "stm32f100c4", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32h503rb", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32h523cc", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32h562ag", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32wba50ke", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32wba55ug", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32wba62cg", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "low-power", "stm32wba65ri", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32u5f9zj", "time", "time-driver-any"]},
|
||||
{target = "thumbv8m.main-none-eabihf", features = ["defmt", "exti", "stm32u5g9nj", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "stm32wb35ce", "time", "time-driver-any"]},
|
||||
{target = "thumbv7em-none-eabi", features = ["defmt", "exti", "low-power", "stm32wb55rg", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32u031r8", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32u073mb", "time", "time-driver-any"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "exti", "stm32u083rc", "time", "time-driver-any"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-stm32-v$VERSION/embassy-stm32/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-stm32/src/"
|
||||
|
@ -14,6 +14,11 @@ categories = [
|
||||
"asynchronous",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-sync-v$VERSION/embassy-sync/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-sync/src/"
|
||||
|
@ -52,6 +52,12 @@ generic-queue-128 = ["_generic-queue"]
|
||||
|
||||
_generic-queue = []
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = []},
|
||||
{target = "thumbv6m-none-eabi", features = ["generic-queue-8"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-time-queue-utils-v$VERSION/embassy-time-queue-utils/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-time-queue-utils/src/"
|
||||
|
@ -14,6 +14,12 @@ categories = [
|
||||
"asynchronous",
|
||||
]
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt", "defmt-timestamp-uptime", "mock-driver"]},
|
||||
{features = ["defmt", "std"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-time-v$VERSION/embassy-time/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-time/src/"
|
||||
|
@ -9,6 +9,17 @@ categories = ["embedded", "hardware-support", "no-std", "asynchronous"]
|
||||
repository = "https://github.com/embassy-rs/embassy"
|
||||
documentation = "https://docs.embassy.dev/embassy-usb"
|
||||
|
||||
[package.metadata.embassy]
|
||||
build = [
|
||||
{target = "thumbv6m-none-eabi", features = []},
|
||||
{target = "thumbv6m-none-eabi", features = ["log"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["defmt"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["usbd-hid"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["max-interface-count-1"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["max-interface-count-8"]},
|
||||
{target = "thumbv6m-none-eabi", features = ["max-handler-count-8"]},
|
||||
]
|
||||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-usb-v$VERSION/embassy-usb/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-usb/src/"
|
||||
|
@ -19,5 +19,8 @@ simple_logger = "5.0.0"
|
||||
temp-file = "0.1.9"
|
||||
flate2 = "1.1.1"
|
||||
|
||||
[patch.crates-io]
|
||||
cargo-semver-checks = { path = "../../cargo-semver-checks" }
|
||||
#[patch.crates-io]
|
||||
#cargo-semver-checks = { path = "../../cargo-semver-checks" }
|
||||
|
||||
[package.metadata.embassy]
|
||||
skip = true
|
||||
|
@ -1,46 +0,0 @@
|
||||
|
||||
embassy-stm32 = { features = ["defmt", "unstable-pac", "exti", "time-driver-any", "time", "stm32h755zi-cm7", "dual-bank"], target = "thumbv7em-none-eabi" }
|
||||
embassy-nrf = { features = ["nrf52840", "time", "defmt", "unstable-pac", "gpiote", "time-driver-rtc1"], target = "thumbv7em-none-eabihf" }
|
||||
|
||||
embassy-rp = { features = ["defmt", "unstable-pac", "time-driver", "rp2040"], target = "thumbv6m-none-eabi" }
|
||||
cyw43 = { features = ["defmt", "firmware-logs"], target = "thumbv6m-none-eabi" }
|
||||
cyw43-pio = { features = ["defmt", "embassy-rp/rp2040"], target = "thumbv6m-none-eabi" }
|
||||
|
||||
embassy-boot = { features = ["defmt"] }
|
||||
embassy-boot-nrf = { features = ["defmt", "embassy-nrf/nrf52840"], target = "thumbv7em-none-eabihf" }
|
||||
embassy-boot-rp = { features = ["defmt", "embassy-rp/rp2040"], target = "thumbv6m-none-eabi" }
|
||||
embassy-boot-stm32 = { features = ["defmt", "embassy-stm32/stm32f429zi"], target = "thumbv7em-none-eabi" }
|
||||
|
||||
embassy-time = { features = ["defmt", "std"] }
|
||||
embassy-time-driver = { }
|
||||
embassy-time-queue-utils = { features = ["defmt"] }
|
||||
|
||||
embassy-futures = { }
|
||||
embassy-embedded-hal = { features = ["time"] }
|
||||
embassy-hal-internal = { }
|
||||
embassy-executor = { features = ["defmt", "arch-cortex-m", "executor-thread", "executor-interrupt"], target = "thumbv7em-none-eabi" }
|
||||
embassy-executor-macros = { }
|
||||
embassy-sync = { }
|
||||
|
||||
embassy-net = { features = ["defmt", "tcp", "udp", "raw", "dns", "icmp", "dhcpv4", "proto-ipv6", "medium-ethernet", "medium-ip", "medium-ieee802154", "multicast", "dhcpv4-hostname"] }
|
||||
embassy-net-ppp = { }
|
||||
embassy-net-esp-hosted = {}
|
||||
embassy-net-driver-channel = {}
|
||||
embassy-net-wiznet = {}
|
||||
embassy-net-nrf91 = { features = ["defmt", "nrf-pac/nrf9160"] }
|
||||
embassy-net-driver = {}
|
||||
embassy-net-tuntap = {}
|
||||
embassy-net-adin1110 = {}
|
||||
embassy-net-enc28j60 = {}
|
||||
|
||||
embassy-usb-driver = { }
|
||||
embassy-usb-dfu = { features = ["dfu"] }
|
||||
embassy-usb-synopsys-otg = { }
|
||||
embassy-usb = { features = ["defmt", "usbd-hid"] }
|
||||
embassy-usb-logger = { }
|
||||
|
||||
# Unreleased
|
||||
# embassy-stm32-wpan = {}
|
||||
# embassy-imxrt = {}
|
||||
# embassy-nxp = {}
|
||||
# embassy-mspm0 = {}
|
@ -1,4 +1,3 @@
|
||||
use simple_logger::SimpleLogger;
|
||||
use std::collections::{BTreeMap, HashMap};
|
||||
use std::fs;
|
||||
use std::path::{Path, PathBuf};
|
||||
@ -6,9 +5,11 @@ use std::process::Command as ProcessCommand;
|
||||
|
||||
use anyhow::{anyhow, Result};
|
||||
use clap::{Parser, Subcommand};
|
||||
use log::info;
|
||||
use petgraph::graph::{Graph, NodeIndex};
|
||||
use petgraph::visit::Bfs;
|
||||
use petgraph::{Directed, Direction};
|
||||
use simple_logger::SimpleLogger;
|
||||
use toml_edit::{DocumentMut, Item, Value};
|
||||
use types::*;
|
||||
|
||||
@ -63,15 +64,6 @@ enum Command {
|
||||
},
|
||||
}
|
||||
|
||||
fn load_release_config(repo: &Path) -> ReleaseConfig {
|
||||
let config_path = repo.join("release/config.toml");
|
||||
if !config_path.exists() {
|
||||
return HashMap::new();
|
||||
}
|
||||
let content = fs::read_to_string(&config_path).expect("Failed to read release/config.toml");
|
||||
toml::from_str(&content).expect("Invalid TOML format in release/config.toml")
|
||||
}
|
||||
|
||||
fn update_version(c: &mut Crate, new_version: &str) -> Result<()> {
|
||||
let path = c.path.join("Cargo.toml");
|
||||
c.version = new_version.to_string();
|
||||
@ -122,12 +114,10 @@ fn update_versions(to_update: &Crate, dep: &CrateId, new_version: &str) -> Resul
|
||||
|
||||
fn list_crates(root: &PathBuf) -> Result<BTreeMap<CrateId, Crate>> {
|
||||
let d = std::fs::read_dir(root)?;
|
||||
let release_config = load_release_config(root);
|
||||
let mut crates = BTreeMap::new();
|
||||
for c in d {
|
||||
let entry = c?;
|
||||
let name = entry.file_name().to_str().unwrap().to_string();
|
||||
if entry.file_type()?.is_dir() && name.starts_with("embassy-") {
|
||||
if entry.file_type()?.is_dir() {
|
||||
let path = root.join(entry.path());
|
||||
let entry = path.join("Cargo.toml");
|
||||
if entry.exists() {
|
||||
@ -135,6 +125,8 @@ fn list_crates(root: &PathBuf) -> Result<BTreeMap<CrateId, Crate>> {
|
||||
let parsed: ParsedCrate = toml::from_str(&content)?;
|
||||
let id = parsed.package.name;
|
||||
|
||||
let metadata = &parsed.package.metadata.embassy;
|
||||
|
||||
let mut dependencies = Vec::new();
|
||||
for (k, _) in parsed.dependencies {
|
||||
if k.starts_with("embassy-") {
|
||||
@ -142,18 +134,19 @@ fn list_crates(root: &PathBuf) -> Result<BTreeMap<CrateId, Crate>> {
|
||||
}
|
||||
}
|
||||
|
||||
if let Some(config) = release_config.get(&id) {
|
||||
crates.insert(
|
||||
id.clone(),
|
||||
Crate {
|
||||
name: id,
|
||||
version: parsed.package.version,
|
||||
path,
|
||||
dependencies,
|
||||
config: config.clone(),
|
||||
},
|
||||
);
|
||||
}
|
||||
crates.insert(
|
||||
id.clone(),
|
||||
Crate {
|
||||
name: id,
|
||||
version: parsed.package.version,
|
||||
path,
|
||||
dependencies,
|
||||
config: metadata.build.first().cloned().unwrap_or_else(|| BuildConfig {
|
||||
features: vec![],
|
||||
target: None,
|
||||
}),
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -313,10 +306,8 @@ fn main() -> Result<()> {
|
||||
c.path.join("Cargo.toml").display().to_string(),
|
||||
];
|
||||
|
||||
if let Some(features) = &c.config.features {
|
||||
args.push("--features".into());
|
||||
args.push(features.join(","));
|
||||
}
|
||||
args.push("--features".into());
|
||||
args.push(c.config.features.join(","));
|
||||
|
||||
if let Some(target) = &c.config.target {
|
||||
args.push("--target".into());
|
||||
@ -376,10 +367,8 @@ fn publish_release(_repo: &Path, c: &Crate, push: bool) -> Result<()> {
|
||||
c.path.join("Cargo.toml").display().to_string(),
|
||||
];
|
||||
|
||||
if let Some(features) = &c.config.features {
|
||||
args.push("--features".into());
|
||||
args.push(features.join(","));
|
||||
}
|
||||
args.push("--features".into());
|
||||
args.push(c.config.features.join(","));
|
||||
|
||||
if let Some(target) = &c.config.target {
|
||||
args.push("--target".into());
|
||||
|
@ -23,11 +23,9 @@ pub fn minimum_update(krate: &Crate) -> Result<ReleaseType, anyhow::Error> {
|
||||
semver_check.with_default_features();
|
||||
semver_check.set_baseline(baseline);
|
||||
semver_check.set_packages(vec![package_name]);
|
||||
if let Some(features) = &krate.config.features {
|
||||
let extra_current_features = features.clone();
|
||||
let extra_baseline_features = features.clone();
|
||||
semver_check.set_extra_features(extra_current_features, extra_baseline_features);
|
||||
}
|
||||
let extra_current_features = krate.config.features.clone();
|
||||
let extra_baseline_features = krate.config.features.clone();
|
||||
semver_check.set_extra_features(extra_current_features, extra_baseline_features);
|
||||
if let Some(target) = &krate.config.target {
|
||||
semver_check.set_build_target(target.clone());
|
||||
}
|
||||
@ -70,11 +68,7 @@ pub(crate) fn build_doc_json(krate: &Crate) -> Result<PathBuf, anyhow::Error> {
|
||||
.join(format!("{}.json", krate.name.to_string().replace("-", "_")));
|
||||
|
||||
std::fs::remove_file(¤t_path).ok();
|
||||
let features = if let Some(features) = &krate.config.features {
|
||||
features.clone()
|
||||
} else {
|
||||
vec![]
|
||||
};
|
||||
let features = krate.config.features.clone();
|
||||
|
||||
log::info!("Building doc json for {} with features: {:?}", krate.name, features);
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
use serde::Deserialize;
|
||||
use std::collections::{BTreeMap, HashMap};
|
||||
use std::path::PathBuf;
|
||||
|
||||
use serde::Deserialize;
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
pub struct ParsedCrate {
|
||||
pub package: ParsedPackage,
|
||||
@ -12,15 +13,31 @@ pub struct ParsedCrate {
|
||||
pub struct ParsedPackage {
|
||||
pub name: String,
|
||||
pub version: String,
|
||||
#[serde(default)]
|
||||
pub metadata: Metadata,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize, Default)]
|
||||
pub struct Metadata {
|
||||
#[serde(default)]
|
||||
pub embassy: MetadataEmbassy,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize, Default)]
|
||||
pub struct MetadataEmbassy {
|
||||
#[serde(default)]
|
||||
pub skip: bool,
|
||||
#[serde(default)]
|
||||
pub build: Vec<BuildConfig>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Deserialize)]
|
||||
pub struct CrateConfig {
|
||||
pub features: Option<Vec<String>>,
|
||||
pub struct BuildConfig {
|
||||
#[serde(default)]
|
||||
pub features: Vec<String>,
|
||||
pub target: Option<String>,
|
||||
}
|
||||
|
||||
pub type ReleaseConfig = HashMap<String, CrateConfig>;
|
||||
pub type CrateId = String;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
@ -28,6 +45,6 @@ pub struct Crate {
|
||||
pub name: String,
|
||||
pub version: String,
|
||||
pub path: PathBuf,
|
||||
pub config: CrateConfig,
|
||||
pub dependencies: Vec<CrateId>,
|
||||
pub config: BuildConfig, // TODO make this a vec.
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user