Skip to content

Merging macOS and Ubuntu code. #61

Merging macOS and Ubuntu code.

Merging macOS and Ubuntu code. #61

Workflow file for this run

# The MIT License (MIT)
#
# Copyright Β© 2024 The GHDL Developers
#
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
# documentation files (the β€œSoftware”), to deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
# persons to whom the Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED β€œAS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
name: Verification of setup-ghdl
on:
push:
workflow_dispatch:
jobs:
Setup-GHDL-Nightly:
name: ${{ matrix.icon }} Setup GHDL ${{ matrix.backend }} on ${{ matrix.name }}
runs-on: ${{ matrix.image }}
strategy:
fail-fast: false
matrix:
include:
- {'icon': '🐧', 'name': 'Ubuntu', 'image': 'ubuntu-22.04', 'runtime': '', 'backend': 'mcode'}
- {'icon': '🐧', 'name': 'Ubuntu', 'image': 'ubuntu-24.04', 'runtime': '', 'backend': 'xcode'}
- {'icon': '🐧', 'name': 'Ubuntu', 'image': 'ubuntu-24.04', 'runtime': '', 'backend': 'mcode'}
- {'icon': '🐧', 'name': 'Ubuntu', 'image': 'ubuntu-24.04', 'runtime': '', 'backend': 'llvm'}
- {'icon': '🐧', 'name': 'Ubuntu', 'image': 'ubuntu-24.04', 'runtime': '', 'backend': 'llvm-jit'}
- {'icon': '🐧', 'name': 'Ubuntu', 'image': 'ubuntu-24.04', 'runtime': '', 'backend': 'gcc'}
- {'icon': '🍎', 'name': 'macOS', 'image': 'macos-13', 'runtime': '', 'backend': 'mcode'}
- {'icon': '🍎', 'name': 'macOS', 'image': 'macos-13', 'runtime': '', 'backend': 'llvm'}
- {'icon': '🍏', 'name': 'macOS', 'image': 'macos-14', 'runtime': '', 'backend': 'llvm'}
- {'icon': 'πŸͺŸ', 'name': 'Windows', 'image': 'windows-2022', 'runtime': '', 'backend': 'mcode'}
- {'icon': 'πŸͺŸπŸŸ¦', 'name': 'Windows', 'image': 'windows-2022', 'runtime': 'mingw64', 'backend': 'mcode'}
- {'icon': 'πŸͺŸπŸŸ¦', 'name': 'Windows', 'image': 'windows-2022', 'runtime': 'mingw64', 'backend': 'llvm'}
- {'icon': 'πŸͺŸπŸŸ¦', 'name': 'Windows', 'image': 'windows-2022', 'runtime': 'mingw64', 'backend': 'llvm-jit'}
- {'icon': 'πŸͺŸπŸŸ¨', 'name': 'Windows', 'image': 'windows-2022', 'runtime': 'ucrt64', 'backend': 'mcode'}
- {'icon': 'πŸͺŸπŸŸ¨', 'name': 'Windows', 'image': 'windows-2022', 'runtime': 'ucrt64', 'backend': 'llvm'}
- {'icon': 'πŸͺŸπŸŸ¨', 'name': 'Windows', 'image': 'windows-2022', 'runtime': 'ucrt64', 'backend': 'llvm-jit'}
defaults:
run:
shell: bash
steps:
- name: 🟦 Setup MSYS2 for ${{ matrix.runtime }}
uses: msys2/setup-msys2@v2
if: matrix.runtime != ''
with:
msystem: ${{ matrix.runtime }}
update: true
- name: Setup GHDL ${{ matrix.backend }}
uses: ghdl/setup-ghdl@dev
with:
version: nightly
backend: ${{ matrix.backend }}
runtime: ${{ matrix.runtime }}
investigate: true
- name: Verify on Linux or macOS
if: matrix.name == 'Ubuntu' || matrix.name == 'macOS'
run: |
which ghdl
ghdl --version
- name: Verify on Windows (native)
if: matrix.name == 'Windows' && matrix.runtime == ''
shell: powershell
run: |
echo $(Get-Command ghdl).Source
ghdl --version
- name: Verify on Windows + MSYS2
if: matrix.name == 'Windows' && matrix.runtime != ''
shell: 'msys2 {0}'
run: |
which ghdl
ghdl --version