Skip to content

remove unused static linking logic and simplify build script #19

remove unused static linking logic and simplify build script

remove unused static linking logic and simplify build script #19

Workflow file for this run

name: Tests
on: [push, pull_request]
env:
CARGO_TERM_COLOR: always
jobs:
test:
name: ${{ matrix.target }} ${{ matrix.features }}
runs-on: ${{ contains(matrix.target, 'windows') && 'windows-latest' || contains(matrix.target, 'darwin') && 'macos-latest' || 'ubuntu-latest' }}
strategy:
matrix:
target:
- x86_64-unknown-linux-gnu # x86-based Linux
- aarch64-apple-darwin # ARM-based macOS
- x86_64-pc-windows-msvc # 64-bit Windows
- i686-pc-windows-msvc # 32-bit Windows
features:
- "" # dynamic linking
- "static" # static linking with unixodbc
- "static,iodbc" # static linking with iodbc
exclude:
- target: x86_64-pc-windows-msvc
features: ""
- target: x86_64-pc-windows-msvc
features: "static"
- target: x86_64-pc-windows-msvc
features: "static,iodbc"
- target: i686-pc-windows-msvc
features: ""
- target: i686-pc-windows-msvc
features: "static"
- target: i686-pc-windows-msvc
features: "static,iodbc"
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # tag=v4.1.1
with:
submodules: "recursive"
- if: ${{ contains(matrix.target, 'linux') && !contains(matrix.features, 'static') }}
run: sudo apt-get update && sudo apt-get install -y unixodbc-dev
- if: ${{ contains(matrix.target, 'darwin') && !contains(matrix.features, 'static') }}
run: brew install unixodbc
- run: cargo test --target "${{ matrix.target }}" --features "${{ matrix.features }}"