Cargo.toml 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. [package]
  2. name = "smoltcp"
  3. version = "0.8.0"
  4. edition = "2018"
  5. authors = ["whitequark <[email protected]>"]
  6. description = "A TCP/IP stack designed for bare-metal, real-time systems without a heap."
  7. documentation = "https://docs.rs/smoltcp/"
  8. homepage = "https://github.com/smoltcp-rs/smoltcp"
  9. repository = "https://github.com/smoltcp-rs/smoltcp.git"
  10. readme = "README.md"
  11. keywords = ["ip", "tcp", "udp", "ethernet", "network"]
  12. categories = ["embedded", "network-programming"]
  13. license = "0BSD"
  14. # Each example should have an explicit `[[example]]` section here to
  15. # ensure that the correct features are enabled.
  16. autoexamples = false
  17. [dependencies]
  18. managed = { version = "0.8", default-features = false, features = ["map"] }
  19. byteorder = { version = "1.0", default-features = false }
  20. log = { version = "0.4.4", default-features = false, optional = true }
  21. libc = { version = "0.2.18", optional = true }
  22. bitflags = { version = "1.0", default-features = false }
  23. defmt = { version = "0.3", optional = true }
  24. cfg-if = "1.0.0"
  25. heapless = "0.7.8"
  26. [dev-dependencies]
  27. env_logger = "0.9"
  28. getopts = "0.2"
  29. rand = "0.8"
  30. url = "2.0"
  31. [features]
  32. std = ["managed/std"]
  33. alloc = ["managed/alloc"]
  34. verbose = []
  35. "medium-ethernet" = ["socket"]
  36. "medium-ip" = ["socket"]
  37. "medium-ieee802154" = ["socket", "proto-sixlowpan"]
  38. "phy-raw_socket" = ["std", "libc"]
  39. "phy-tuntap_interface" = ["std", "libc", "medium-ethernet"]
  40. "proto-ipv4" = []
  41. "proto-igmp" = ["proto-ipv4"]
  42. "proto-dhcpv4" = ["proto-ipv4"]
  43. "proto-ipv6" = []
  44. "proto-sixlowpan" = ["proto-ipv6"]
  45. "proto-dns" = []
  46. "socket" = []
  47. "socket-raw" = ["socket"]
  48. "socket-udp" = ["socket"]
  49. "socket-tcp" = ["socket"]
  50. "socket-icmp" = ["socket"]
  51. "socket-dhcpv4" = ["socket", "medium-ethernet", "proto-dhcpv4"]
  52. "socket-dns" = ["socket", "proto-dns"]
  53. "async" = []
  54. default = [
  55. "std", "log", # needed for `cargo test --no-default-features --features default` :/
  56. "medium-ethernet", "medium-ip", "medium-ieee802154",
  57. "phy-raw_socket", "phy-tuntap_interface",
  58. "proto-ipv4", "proto-igmp", "proto-dhcpv4", "proto-ipv6", "proto-sixlowpan", "proto-dns",
  59. "socket-raw", "socket-icmp", "socket-udp", "socket-tcp", "socket-dhcpv4", "socket-dns",
  60. "async"
  61. ]
  62. # experimental; do not use; no guarantees provided that this feature will be kept
  63. "rust-1_28" = []
  64. [[example]]
  65. name = "packet2pcap"
  66. path = "utils/packet2pcap.rs"
  67. required-features = ["std"]
  68. [[example]]
  69. name = "tcpdump"
  70. required-features = ["std", "phy-raw_socket", "proto-ipv4"]
  71. [[example]]
  72. name = "httpclient"
  73. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "proto-ipv6", "socket-tcp"]
  74. [[example]]
  75. name = "ping"
  76. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "proto-ipv6", "socket-icmp"]
  77. [[example]]
  78. name = "server"
  79. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "socket-tcp", "socket-udp"]
  80. [[example]]
  81. name = "client"
  82. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "socket-tcp", "socket-udp"]
  83. [[example]]
  84. name = "loopback"
  85. required-features = ["log", "medium-ethernet", "proto-ipv4", "socket-tcp"]
  86. [[example]]
  87. name = "multicast"
  88. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "proto-igmp", "socket-udp"]
  89. [[example]]
  90. name = "benchmark"
  91. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "socket-raw", "socket-udp"]
  92. [[example]]
  93. name = "dhcp_client"
  94. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "proto-dhcpv4", "socket-raw"]
  95. [[example]]
  96. name = "sixlowpan"
  97. required-features = ["std", "medium-ieee802154", "phy-raw_socket", "proto-sixlowpan", "socket-udp"]
  98. [[example]]
  99. name = "dns"
  100. required-features = ["std", "medium-ethernet", "medium-ip", "phy-tuntap_interface", "proto-ipv4", "socket-dns"]
  101. [profile.release]
  102. debug = 2