Допустим ли синтаксис использования cfg(not(...))
в Cargo.toml для объявления зависимостей?
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
websocket = "0.23.0"
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3.22"
features = [
"ErrorEvent",
"MessageEvent",
"WebSocket",
]
Я получаю ошибку can't find crate "websocket"
для следующего кода:
macro_rules! if_not_wasm {
($($i:item)*) => ($(
#[cfg(not(target_arch = "wasm"))] $i
)*)
}
macro_rules! if_wasm {
($($i:item)*) => ($(
#[cfg(target_arch = "wasm")] $i
)*)
}
if_not_wasm! {
extern crate websocket;
}
if_wasm! {
extern crate web_sys;
}
Импорт в if_wasm!
работает, как и ожидалось, но с ошибками if_not_wasm!
.Я запускаю это со следующим .cargo/config
:
[build]
target = "wasm32-unknown-unknown"