name: 'push' on: [push, pull_request] env: CI: true jobs: gpl: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - run: | TASK=buster+mcode ./dist/ci-run.sh -c --gpl --no-synth linux: strategy: fail-fast: false max-parallel: 3 matrix: task: [ mcode, llvm-7, gcc-8.3.0 ] runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - run: | TASK=buster+${{ matrix.task }} ./dist/ci-run.sh -c osx: runs-on: macOS-latest steps: - uses: actions/checkout@v1 - run: | brew update brew install p7zip ./dist/macosx/install-ada.sh - run: | PATH=$PWD/gnat/bin:$PATH ./dist/ci-run.sh -c env: TASK: macosx+mcode GITHUB_OS: ${{ runner.os }} win: strategy: fail-fast: false max-parallel: 2 matrix: task: [ {installs: "MINGW32", pkg: "mcode"}, #{installs: "MINGW32", pkg: "llvm"}, ! Not yet functional #{installs: "MINGW64", pkg: "mcode"}, ! mcode is not yet supported on win64 {installs: "MINGW64", pkg: "llvm"}, ] runs-on: windows-latest env: MINGW_INSTALLS: ${{ matrix.task.installs }} TARGET: ${{ matrix.task.pkg }} steps: - uses: eine/setup-msys2@v0 with: msystem: MSYS update: true - uses: actions/checkout@v1 - name: Build and (hopefully) install package shell: msys2 {0} run: | ./dist/msys2-mingw/run.sh -b - uses: actions/upload-artifact@v2 with: name: ${{ matrix.task.installs }}-${{ matrix.task.pkg }}-pkg path: ./dist/msys2-mingw/${{ matrix.task.pkg }}/mingw-*ghdl*.pkg.tar.z - name: Test package shell: msys2 {0} run: | ./dist/msys2-mingw/run.sh -t env: MSYSTEM: ${{ matrix.task.installs }} #--- # TODO: # - Cache # - 'gnat' directory in macOS job # # - Re-package a MINGW/MSYS2 package to provide a 'standalone' tarball/zipfile. # - https://github.com/ghdl/ghdl/issues/318#issuecomment-286246287 # # - Add GNAT GPL 32-bit build job with mcode backend