Files
bytes/ci/azure-cross-compile.yml
T
Sean McArthur 43ac8e5494 Refactor Bytes to use an internal vtable (#298)
Bytes is a useful tool for managing multiple slices into the same region
of memory, and the other things it used to have been removed to reduce
complexity. The exact strategy for managing the multiple references is
no longer hard-coded, but instead backing by a customizable vtable.

- Removed ability to mutate the underlying memory from the `Bytes` type.
- Removed the "inline" (SBO) mechanism in `Bytes`. The reduces a large
  amount of complexity, and improves performance when accessing the
  slice of bytes, since a branch is no longer needed to check if the
  data is inline.
- Removed `Bytes` knowledge of `BytesMut` (`BytesMut` may grow that
  knowledge back at a future point.)
2019-10-16 09:53:36 -07:00

47 lines
1.2 KiB
YAML

parameters:
cmd: build
rust_version: stable
jobs:
- job: ${{ parameters.name }}
displayName: Cross
strategy:
matrix:
i686:
vmImage: ubuntu-16.04
target: i686-unknown-linux-gnu
armv7:
vmImage: ubuntu-16.04
target: armv7-unknown-linux-gnueabihf
powerpc:
vmImage: ubuntu-16.04
target: powerpc-unknown-linux-gnu
powerpc64:
vmImage: ubuntu-16.04
target: powerpc64-unknown-linux-gnu
wasm:
vmImage: ubuntu-16.04
target: wasm32-unknown-unknown
pool:
vmImage: $(vmImage)
steps:
- template: azure-install-rust.yml
parameters:
rust_version: ${{parameters.rust_version}}
- script: cargo install cross
displayName: Install cross
condition: not(eq(variables['target'], 'wasm32-unknown-unknown'))
- script: cross ${{ parameters.cmd }} --target $(target)
displayName: cross ${{ parameters.cmd }} --target $(target)
condition: not(eq(variables['target'], 'wasm32-unknown-unknown'))
# WASM support
- script: |
rustup target add $(target)
cargo build --target $(target)
displayName: cargo build --target $(target)
condition: eq(variables['target'], 'wasm32-unknown-unknown')