ferrous-serialport 4.0.2

A cross-platform low-level serial port library
Documentation
## Build Matrix ##

environment:
  RUST_TEST_THREADS: 1

  matrix:
    ### Mac OS
    - APPVEYOR_BUILD_WORKER_IMAGE: macOS
      CHANNEL: stable
      TARGET: x86_64-apple-darwin
    - APPVEYOR_BUILD_WORKER_IMAGE: macOS
      CHANNEL: 1.36.0
      TARGET: x86_64-apple-darwin
    - APPVEYOR_BUILD_WORKER_IMAGE: macOS
      CHANNEL: beta # Requires at least 1.48.0-beta
      TARGET: aarch64-apple-darwin
      DISABLE_TESTS: 1

    ### iOS
    - APPVEYOR_BUILD_WORKER_IMAGE: macOS
      CHANNEL: stable
      TARGET: aarch64-apple-ios
      DISABLE_TESTS: 1
    - APPVEYOR_BUILD_WORKER_IMAGE: macOS
      CHANNEL: stable
      TARGET: x86_64-apple-ios
      DISABLE_TESTS: 1

    ### Windows
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
      CHANNEL: stable
      TARGET: x86_64-pc-windows-msvc
      BITS: 64
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
      CHANNEL: stable
      TARGET: i686-pc-windows-msvc
      BITS: 32
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
      CHANNEL: stable
      TARGET: x86_64-pc-windows-gnu
      BITS: 64
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
      CHANNEL: stable
      TARGET: i686-pc-windows-gnu
      BITS: 32
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
      CHANNEL: 1.36.0
      TARGET: x86_64-pc-windows-msvc
      BITS: 64

install:
 # Mac builds
 - sh: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain ${CHANNEL} --profile minimal -y
 - sh: source $HOME/.cargo/env
 - sh: rustup target add ${TARGET}
 # Windows builds
 - cmd: IF "%BITS%" == "32" SET ARCH=i686
 - cmd: IF "%BITS%" == "64" SET ARCH=x86_64
 - cmd: appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
 - cmd: rustup-init -yv --default-toolchain %CHANNEL% --profile minimal
 - cmd: set PATH=C:\msys64\mingw%BITS%\bin;C:\msys64\usr\bin;%USERPROFILE%\.cargo\bin;%PATH%
 - cmd: rustup target add %TARGET%

build_script:
 # Mac builds
 - sh: cargo build --target ${TARGET}
 # Windows builds
 - cmd: cargo build --target %TARGET%

test_script:
 # Mac builds
 - sh: if [[ -n $DISABLE_TESTS ]]; then echo "Skipping tests"; else cargo test --target ${TARGET} --no-fail-fast; fi
 # Windows builds
 - cmd: if defined DISABLE_TESTS (echo "Skipping tests") else (cargo test --target %TARGET% --no-fail-fast)