1@echo off 2setlocal 3 4:: Get the directory of the script 5set REPO=%~dp0\..\..\.. 6 7:: Get the Rust version, package, and objs path from arguments 8set RUST_PKG=%1 9set OUT_PATH=%2 10set RUST_VERSION=%3 11set OBJS_PATH=%OUT_PATH% 12 13:: Set environment variables 14set PATH=%PATH%;%OUT_PATH%\lib64 15set PATH=%PATH%;%REPO%\prebuilts\gcc\linux-x86\host\x86_64-w64-mingw32-4.8\x86_64-w64-mingw32\lib;%REPO%\prebuilts\gcc\linux-x86\host\x86_64-w64-mingw32-4.8\x86_64-w64-mingw32\bin 16set CORROSION_BUILD_DIR=%OUT_PATH%/rust 17set CARGO_BUILD_RUSTC=%REPO%/prebuilts/rust/windows-x86/%RUST_VERSION%/bin/rustc 18set RUSTC=%REPO%/prebuilts/rust/windows-x86/%RUST_VERSION%/bin/rustc 19set CARGO_HOME=%OUT_PATH%\rust\.cargo 20set RUSTFLAGS=-Cdefault-linker-libraries=yes 21set GRPCIO_SYS_GRPC_INCLUDE_PATH=%REPO%/external/grpc/include 22 23:: Paths to pdl generated packets files 24set ROOTCANAL_PDL_PATH=%OUT_PATH%\rootcanal\pdl_gen 25set LINK_LAYER_PACKETS_PREBUILT=%ROOTCANAL_PDL_PATH%\link_layer_packets.rs 26set PDL_PATH=%OUT_PATH%\pdl\pdl_gen 27set MAC80211_HWSIM_PACKETS_PREBUILT=%PDL_PATH%\mac80211_hwsim_packets.rs 28set IEEE80211_PACKETS_PREBUILT=%PDL_PATH%\ieee80211_packets.rs 29set LLC_PACKETS_PREBUILT=%PDL_PATH%\llc_packets.rs 30set NETLINK_PACKETS_PREBUILT=%PDL_PATH%\netlink_packets.rs 31 32:: Run the cargo command 33%REPO%\prebuilts\rust\windows-x86\%RUST_VERSION%\bin\cargo.exe test -vv --target=x86_64-pc-windows-gnu --config target.x86_64-pc-windows-gnu.linker='%OUT_PATH%\toolchain\ld-emu.cmd' --package %RUST_PKG% --manifest-path %REPO%\tools\netsim\rust\Cargo.toml --release -- --nocapture