name: CI on: [push, pull_request] jobs: MacOS: runs-on: macos-latest strategy: matrix: bs: [autotools, cmake] steps: - uses: actions/checkout@master - name: Install dependencies run: ./build/ci/github_actions/macos.sh prepare - name: Autogen run: ./build/ci/build.sh -a autogen env: BS: ${{ matrix.bs }} - name: Configure run: ./build/ci/build.sh -a configure env: BS: ${{ matrix.bs }} - name: Build run: ./build/ci/build.sh -a build env: BS: ${{ matrix.bs }} - name: Test run: ./build/ci/build.sh -a test env: BS: ${{ matrix.bs }} SKIP_OPEN_FD_ERR_TEST: 1 - name: Install run: ./build/ci/build.sh -a install env: BS: ${{ matrix.bs }} - name: Artifact run: ./build/ci/build.sh -a artifact env: BS: ${{ matrix.bs }} - uses: actions/upload-artifact@v1 with: name: libarchive-macos-${{ matrix.bs }}-${{ github.sha }} path: libarchive.tar.xz Ubuntu: runs-on: ubuntu-20.04 strategy: matrix: bs: [autotools, cmake] crypto: [mbedtls, nettle, openssl] steps: - uses: actions/checkout@master - name: Install dependencies run: sudo apt-get install -y build-essential cmake libssl-dev nettle-dev libmbedtls-dev libacl1-dev libbz2-dev liblzma-dev liblz4-dev libzstd-dev lzop - name: Autogen run: ./build/ci/build.sh -a autogen env: BS: ${{ matrix.bs }} - name: Configure run: ./build/ci/build.sh -a configure env: BS: ${{ matrix.bs }} CRYPTO: ${{ matrix.crypto }} - name: Build run: ./build/ci/build.sh -a build env: BS: ${{ matrix.bs }} - name: Test run: ./build/ci/build.sh -a test env: BS: ${{ matrix.bs }} SKIP_OPEN_FD_ERR_TEST: 1 - name: Install run: ./build/ci/build.sh -a install env: BS: ${{ matrix.bs }} - name: Artifact run: ./build/ci/build.sh -a artifact env: BS: ${{ matrix.bs }} - uses: actions/upload-artifact@v1 with: name: libarchive-ubuntu-${{ matrix.bs }}-${{ matrix.crypto }}-${{ github.sha }} path: libarchive.tar.xz Ubuntu-distcheck: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@master - name: Install dependencies run: sudo apt-get install -y build-essential cmake libssl-dev libacl1-dev libbz2-dev liblzma-dev liblz4-dev libzstd-dev lzop groff ghostscript - name: Autogen run: ./build/ci/build.sh -a autogen - name: Configure run: ./build/ci/build.sh -a configure - name: Distcheck run: ./build/ci/build.sh -a distcheck env: SKIP_OPEN_FD_ERR_TEST: 1 Windows: runs-on: windows-latest strategy: matrix: be: [mingw-gcc, msvc] steps: - uses: actions/checkout@master - name: Install dependencies run: ./build/ci/github_actions/ci.cmd deplibs shell: cmd env: BE: ${{ matrix.be }} - name: Configure run: ./build/ci/github_actions/ci.cmd configure shell: cmd env: BE: ${{ matrix.be }} - name: Build run: ./build/ci/github_actions/ci.cmd build shell: cmd env: BE: ${{ matrix.be }} - name: Test run: ./build/ci/github_actions/ci.cmd test shell: cmd env: BE: ${{ matrix.be }} - name: Install run: ./build/ci/github_actions/ci.cmd install shell: cmd env: BE: ${{ matrix.be }} - name: Artifact run: ./build/ci/github_actions/ci.cmd artifact shell: cmd env: BE: ${{ matrix.be }} - uses: actions/upload-artifact@v1 with: name: libarchive-windows-${{ matrix.be }}-${{ github.sha }} path: libarchive.zip