aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.github/actions/check-cc/action.yml
blob: c1dd756760670142eb46d96b660089f3b8a836f1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
name: Check symlinks
description: Check symlinks
inputs:
  version:
    description: Specific version to check
    required: false
runs:
  using: composite
  steps:
    - run: |
        $version = '${{ inputs.version }}'

        function Check-Exe {
            param(
                [Parameter(Mandatory=$true)]
                [string] $Exe
            )

            echo (Get-Command $Exe).Path
            $output = & $Exe --version
            echo $output

            # Is this really the most stable piece of `gcc --version` output?
            $($output | Select-String -Pattern "This is free software; see the source for copying conditions." -SimpleMatch -Quiet) -or $(throw "Unexpected `$Exe --version` output")

            if ($script:version) {
                $($output | Select-String -Pattern "$script:version." -SimpleMatch -Quiet) -or $(throw "Unexpected `$Exe --version` output")
            }
        }

        Check-Exe cc
        Check-Exe gcc
        Check-Exe c++
        Check-Exe g++
      shell: pwsh