diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 39fd03589ccf7b2fb3af883e408a0009a6b0e0cf..2b5253a34e93fa93b3c4dbdb5b46f594f2753b42 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -20,19 +20,16 @@ jobs: ] steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex rustup set profile minimal rustup update --force nightly rustup default nightly - - name: Install target run: | set -ex rustup target add ${{ matrix.target }} - - name: Query Rust and Cargo versions run: | set -ex @@ -43,7 +40,6 @@ jobs: which rustc which cargo which rustup - - name: Generate lockfile run: | set -ex @@ -57,93 +53,10 @@ jobs: n=$((n+1)) sleep 1 done - - name: Execute run-docker.sh run: LIBC_CI=1 sh ./ci/run-docker.sh ${{ matrix.target }} - docker_linux_tier2: - name: Docker Linux Tier2 - runs-on: ubuntu-18.04 - strategy: - fail-fast: false - max-parallel: 10 - matrix: - target: [ - aarch64-linux-android, - aarch64-unknown-linux-gnu, - aarch64-unknown-linux-musl, - arm-linux-androideabi, - arm-unknown-linux-gnueabihf, - arm-unknown-linux-musleabihf, - # FIXME: Disabled because currently broken, see: - # https://github.com/rust-lang/libc/issues/1591 - # asmjs-unknown-emscripten, - # FIXME: Disabled due to https://github.com/rust-lang/libc/issues/1765 - # i686-linux-android, - i686-unknown-linux-musl, - mips-unknown-linux-gnu, - mips-unknown-linux-musl, - mips64-unknown-linux-gnuabi64, - mips64el-unknown-linux-gnuabi64, - mipsel-unknown-linux-musl, - # FIXME: Figure out why this is disabled. - #powerpc-unknown-linux-gnu, - powerpc64-unknown-linux-gnu, - powerpc64le-unknown-linux-gnu, - s390x-unknown-linux-gnu, - riscv64gc-unknown-linux-gnu, - # FIXME: Figure out why this is disabled. - #wasm32-wasi, - sparc64-unknown-linux-gnu, - wasm32-unknown-emscripten, - x86_64-linux-android, - x86_64-unknown-linux-gnux32, - x86_64-unknown-linux-musl, - ] - steps: - - uses: actions/checkout@v2 - - - name: Setup Rust toolchain - run: | - set -ex - rustup set profile minimal - rustup update --force nightly - rustup default nightly - - - name: Install target - run: | - set -ex - rustup target add ${{ matrix.target }} - - - name: Query Rust and Cargo versions - run: | - set -ex - rustc -Vv - cargo -V - rustup -Vv - rustup show - which rustc - which cargo - which rustup - - - name: Generate lockfile - run: | - set -ex - N=5 - n=0 - until [ $n -ge $N ] - do - if cargo generate-lockfile ; then - break - fi - n=$((n+1)) - sleep 1 - done - - - name: Execute run-docker.sh - run: LIBC_CI=1 sh ./ci/run-docker.sh ${{ matrix.target }} - macos: name: macOS runs-on: macos-10.15 @@ -155,19 +68,16 @@ jobs: ] steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex rustup set profile minimal rustup update --force nightly rustup default nightly - - name: Install target run: | set -ex rustup target add ${{ matrix.target }} - - name: Query Rust and Cargo versions run: | set -ex @@ -178,7 +88,6 @@ jobs: which rustc which cargo which rustup - - name: Generate lockfile run: | set -ex @@ -192,11 +101,9 @@ jobs: n=$((n+1)) sleep 1 done - - name: Execute run.sh run: LIBC_CI=1 sh ./ci/run.sh ${{ matrix.target }} - windows: name: Windows runs-on: windows-2019 @@ -218,16 +125,13 @@ jobs: - target: i686-pc-windows-msvc steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | rustup set profile minimal rustup update --force --no-self-update nightly-${{ matrix.target }} rustup default nightly-${{ matrix.target }} - - name: Install target run: rustup target add ${{ matrix.target }} - - name: Install MinGW32 run: | set -ex @@ -235,7 +139,6 @@ jobs: choco install mingw --x86 --force fi shell: bash - - name: Find GCC libraries run: | set -ex @@ -244,7 +147,6 @@ jobs: /usr/bin/find "C:\ProgramData\Chocolatey" -name "dllcrt2*" /usr/bin/find "C:\ProgramData\Chocolatey" -name "libmsvcrt*" shell: bash - - name: Fix MinGW run: | set -ex @@ -254,7 +156,6 @@ jobs: done fi shell: bash - - name: Query Rust and Cargo versions run: | set -ex @@ -266,7 +167,6 @@ jobs: which cargo which rustup shell: bash - - name: Generate lockfile run: | set -ex @@ -281,12 +181,10 @@ jobs: sleep 1 done shell: bash - - name: Execute run.sh run: LIBC_CI=1 sh ./ci/run.sh ${{ matrix.target }} shell: bash - style_and_docs: name: Style and docs runs-on: ubuntu-18.04 @@ -294,7 +192,6 @@ jobs: fail-fast: false steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex @@ -324,41 +221,62 @@ jobs: n=$((n+1)) sleep 1 done - - name: Check style run: sh ci/style.sh - name: Generate documentation run: LIBC_CI=1 sh ci/dox.sh - - build_channels_linux: - name: Build Channels Linux + docker_linux_tier2: + name: Docker Linux Tier2 runs-on: ubuntu-18.04 - env: - OS: linux strategy: fail-fast: false - max-parallel: 5 + max-parallel: 10 matrix: - toolchain: [ - stable, - beta, - nightly, - 1.13.0, - 1.19.0, - 1.24.0, - 1.25.0, - 1.30.0, + target: [ + aarch64-linux-android, + aarch64-unknown-linux-gnu, + aarch64-unknown-linux-musl, + arm-linux-androideabi, + arm-unknown-linux-gnueabihf, + arm-unknown-linux-musleabihf, + # FIXME: Disabled because currently broken, see: + # https://github.com/rust-lang/libc/issues/1591 + # asmjs-unknown-emscripten, + # FIXME: Disabled due to https://github.com/rust-lang/libc/issues/1765 + # i686-linux-android, + i686-unknown-linux-musl, + mips-unknown-linux-gnu, + mips-unknown-linux-musl, + mips64-unknown-linux-gnuabi64, + mips64el-unknown-linux-gnuabi64, + mipsel-unknown-linux-musl, + # FIXME: Figure out why this is disabled. + #powerpc-unknown-linux-gnu, + powerpc64-unknown-linux-gnu, + powerpc64le-unknown-linux-gnu, + s390x-unknown-linux-gnu, + riscv64gc-unknown-linux-gnu, + # FIXME: Figure out why this is disabled. + #wasm32-wasi, + sparc64-unknown-linux-gnu, + wasm32-unknown-emscripten, + x86_64-linux-android, + x86_64-unknown-linux-gnux32, + x86_64-unknown-linux-musl, ] steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex rustup set profile minimal - rustup update --force ${{ matrix.toolchain }} - rustup default ${{ matrix.toolchain }} + rustup update --force nightly + rustup default nightly + - name: Install target + run: | + set -ex + rustup target add ${{ matrix.target }} - name: Query Rust and Cargo versions run: | set -ex @@ -382,9 +300,8 @@ jobs: n=$((n+1)) sleep 1 done - - name: Execute build.sh - run: LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/build.sh - + - name: Execute run-docker.sh + run: LIBC_CI=1 sh ./ci/run-docker.sh ${{ matrix.target }} # devkitpro's pacman needs to be connected from Docker. DockerSwitch: @@ -394,7 +311,6 @@ jobs: fail-fast: false steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex @@ -427,6 +343,60 @@ jobs: - name: Execute run-docker.sh run: LIBC_CI=1 sh ./ci/run-docker.sh switch + build_channels_linux: + name: Build Channels Linux + runs-on: ubuntu-18.04 + env: + OS: linux + strategy: + fail-fast: false + max-parallel: 5 + matrix: + toolchain: [ + stable, + beta, + nightly, + 1.13.0, + 1.19.0, + 1.24.0, + 1.25.0, + 1.30.0, + ] + steps: + - uses: actions/checkout@v2 + - name: Setup Rust toolchain + run: | + set -ex + rustup set profile minimal + rustup update --force ${{ matrix.toolchain }} + rustup default ${{ matrix.toolchain }} + - name: Query Rust and Cargo versions + run: | + set -ex + rustc -Vv + cargo -V + rustup -Vv + rustup show + which rustc + which cargo + which rustup + - name: Generate lockfile + run: | + set -ex + N=5 + n=0 + until [ $n -ge $N ] + do + if cargo generate-lockfile ; then + break + fi + n=$((n+1)) + sleep 1 + done + - name: Execute build.sh + run: LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/build.sh + + build_channels_macos: name: Build Channels macOS runs-on: macos-10.15 @@ -448,7 +418,6 @@ jobs: ] steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex @@ -481,6 +450,7 @@ jobs: - name: Execute build.sh run: LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/build.sh + semver_linux: name: Semver Linux runs-on: ubuntu-18.04 @@ -488,7 +458,6 @@ jobs: fail-fast: false steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex @@ -521,7 +490,6 @@ jobs: - name: Check breaking changes run: sh ci/semver.sh linux - semver_macos: name: Semver macOS runs-on: macos-10.15 @@ -529,7 +497,6 @@ jobs: fail-fast: false steps: - uses: actions/checkout@v2 - - name: Setup Rust toolchain run: | set -ex