diff options
| author | Egor Tensin <egor@tensin.name> | 2025-12-29 18:13:23 +0100 |
|---|---|---|
| committer | Egor Tensin <egor@tensin.name> | 2025-12-29 18:13:23 +0100 |
| commit | eee1040f62d375f7c49408b9e182bba44d2603a9 (patch) | |
| tree | 50439af51f9d9230e0b603f52a2ce8ea2f6416db /action.yml | |
| parent | workflows/test: upgrade runner images and actions (diff) | |
| download | setup-clang-eee1040f62d375f7c49408b9e182bba44d2603a9.tar.gz setup-clang-eee1040f62d375f7c49408b9e182bba44d2603a9.zip | |
drop Cygwin, it's obsolete
Diffstat (limited to 'action.yml')
| -rw-r--r-- | action.yml | 66 |
1 files changed, 3 insertions, 63 deletions
@@ -10,18 +10,10 @@ inputs: description: Target platform required: false default: x64 - cygwin: - description: Install Cygwin packages - required: false - default: 0 cc: description: Set up cc/clang/c++/clang++ executables required: false default: 1 - hardlinks: - description: On Cygwin, replace executable symlinks with hardlinks - required: false - default: 0 outputs: clang: @@ -39,8 +31,7 @@ runs: New-Variable os -Value '${{ runner.os }}' -Option Constant New-Variable linux_host -Value ($os -eq 'Linux') -Option Constant - New-Variable cygwin_host -Value ('${{ inputs.cygwin }}' -eq '1') -Option Constant - New-Variable windows_host -Value ($os -eq 'Windows' -and !$cygwin_host) -Option Constant + New-Variable windows_host -Value ($os -eq 'Windows') -Option Constant New-Variable version -Value ('${{ inputs.version }}') -Option Constant New-Variable latest -Value ($version -eq 'latest') -Option Constant @@ -64,9 +55,6 @@ runs: if ($script:linux_host) { sudo apt-get update sudo DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends $Packages - } elseif ($script:cygwin_host) { - $choco = Locate-Choco - & $choco install $Packages -y --no-progress --source=cygwin } elseif ($script:windows_host) { $choco = Locate-Choco & $choco upgrade $Packages -y --no-progress --allow-downgrade @@ -141,21 +129,6 @@ runs: $packages = $pkg_clang,$pkg_llvm,$pkg_gxx Install-Package $packages - } elseif ($cygwin_host) { - if (!$x64) { - echo @' - ::warning :: - 32-bit-targeting Clang is unavailable on 64-bit Cygwin. - Please use 32-bit Cygwin instead. - If you _are_ using 32-bit Cygwin, please ignore this message. - '@ - } - - # IDK why, but without libiconv-devel, even a "Hello, world!" - # C++ app cannot be compiled as of December 2020. Also, libstdc++ - # is required; it's simpler to install gcc-g++ for all the - # dependencies. - Install-Package clang gcc-g++ libiconv-devel llvm } elseif ($windows_host) { Install-Package llvm @@ -173,8 +146,7 @@ runs: New-Variable os -Value '${{ runner.os }}' -Option Constant New-Variable linux_host -Value ($os -eq 'Linux') -Option Constant - New-Variable cygwin_host -Value ('${{ inputs.cygwin }}' -eq '1') -Option Constant - New-Variable windows_host -Value ($os -eq 'Windows' -and !$cygwin_host) -Option Constant + New-Variable windows_host -Value ($os -eq 'Windows') -Option Constant New-Variable cc -Value ('${{ inputs.cc }}' -eq '1') -Option Constant @@ -192,12 +164,10 @@ runs: $exe_path = (Get-Command $Exe).Path $link_dir = if ($script:windows_host) { Split-Path $exe_path } else { '/usr/local/bin' } $link_name = if ($script:windows_host) { "$LinkName.exe" } else { $LinkName } - $link_path = if ($script:cygwin_host) { "$link_dir/$link_name" } else { Join-Path $link_dir $link_name } + $link_path = Join-Path $link_dir $link_name echo "Creating link $link_path -> $exe_path" if ($script:linux_host) { sudo ln -f -s $exe_path $link_path - } elseif ($script:cygwin_host) { - ln.exe -f -s $exe_path $link_path } elseif ($script:windows_host) { New-Item -ItemType HardLink -Path $link_path -Value $exe_path -Force | Out-Null } @@ -215,36 +185,6 @@ runs: } shell: pwsh - - run: | - New-Variable cygwin_host -Value ('${{ inputs.cygwin }}' -eq '1') -Option Constant - New-Variable hardlinks -Value ('${{ inputs.hardlinks }}' -eq '1') -Option Constant - - if ($cygwin_host -and $hardlinks) { - # clang/clang++ are Cygwin symlinks, pointing to clang-X.exe. It's - # convenient to make proper executables instead so that they can be - # called from Windows' command prompt. - echo @' - while IFS= read -d '' -r link_path; do - dest_path="$( readlink --canonicalize-existing -- "$link_path" )" - dest_ext=".${dest_path##*.}" - [ "$dest_ext" == ".$dest_path" ] && dest_ext= - link_ext=".${link_path##*.}" - [ "$link_ext" == ".$link_path" ] && link_ext= - echo "Removing symlink $link_path" && rm -f -- "$link_path" - [ "$link_ext" != "$dest_ext" ] && echo "${PATHEXT//\;/ - }" | grep -q --ignore-case --line-regexp -F -- "$dest_ext" && link_path="$link_path$dest_ext" - echo "Creating hardlink $link_path -> $dest_path" && ln -- "$dest_path" "$link_path" - done < <( find /usr/local/bin /usr/bin \ - -type l '-(' \ - -path '/usr/bin/clang*' -o \ - -path '/usr/bin/llvm*' -o \ - -path /usr/local/bin/cc -o \ - -path /usr/local/bin/c++ \ - '-)' -print0 ) - '@ | & bash.exe --login -o errexit -o nounset -o pipefail -o igncr - } - shell: pwsh - branding: icon: star color: green |
