#!/usr/bin/env bash

# Build std_detect on non-Linux & non-x86 targets.
#
# In std_detect, non-x86 targets have OS-specific implementations,
# but we can test only Linux in CI. This script builds targets supported
# by std_detect but cannot be tested in CI.

set -ex
cd "$(dirname "$0")"/..

targets=(
    # Linux
    aarch64-unknown-linux-musl
    armv5te-unknown-linux-musleabi
    aarch64-unknown-linux-ohos
    armv7-unknown-linux-ohos

    # Android
    aarch64-linux-android
    arm-linux-androideabi

    # FreeBSD
    aarch64-unknown-freebsd
    armv6-unknown-freebsd
    powerpc-unknown-freebsd
    powerpc64-unknown-freebsd

    # OpenBSD
    aarch64-unknown-openbsd

    # Windows
    aarch64-pc-windows-msvc
)

rustup component add rust-src # for -Z build-std

cd crates/std_detect
for target in "${targets[@]}"; do
    if rustup target add "${target}" &>/dev/null; then
        cargo build --target "${target}"
    else
        # tier 3 targets requires -Z build-std.
        cargo build -Z build-std="core,alloc" --target "${target}"
    fi
done
