mirror of
https://github.com/Xaymar/obs-StreamFX
synced 2024-11-28 06:13:01 +00:00
ci: Remove pointless platform additions
The runners "windows-2022" and "windows-2019" both come with almost identical software, and we can still target Windows 10 21H2. The same goes for "macos-12", "macos-11" and "macos-10.15", where we can simply target 10.15 and get the same result. Only Ubuntu does not make it easy, as it doesn't easily allow targeting a certain OS version.
This commit is contained in:
parent
69b5ff8ad5
commit
eb047c8882
1 changed files with 46 additions and 92 deletions
138
.github/workflows/main.yml
vendored
138
.github/workflows/main.yml
vendored
|
@ -23,114 +23,57 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
runner: [ windows-2022, ubuntu-22.04, macos-12, windows-2019, ubuntu-20.04, macos-11, macos-10.15 ]
|
runner: [ windows-2022, macos-12, ubuntu-22.04, ubuntu-20.04 ]
|
||||||
generator: [ MSVC, GCC, Clang ]
|
generator: [ MSVC, GCC, Clang ]
|
||||||
exclude:
|
exclude:
|
||||||
- runner: windows-2022
|
- runner: windows-2022
|
||||||
generator: GCC
|
generator: GCC
|
||||||
- runner: windows-2019
|
|
||||||
generator: GCC
|
|
||||||
- runner: windows-2022
|
- runner: windows-2022
|
||||||
generator: Clang
|
generator: Clang
|
||||||
- runner: windows-2019
|
- runner: macos-12
|
||||||
generator: Clang
|
generator: MSVC
|
||||||
|
- runner: macos-12
|
||||||
|
generator: GCC
|
||||||
- runner: ubuntu-22.04
|
- runner: ubuntu-22.04
|
||||||
generator: MSVC
|
generator: MSVC
|
||||||
- runner: ubuntu-20.04
|
- runner: ubuntu-20.04
|
||||||
generator: MSVC
|
generator: MSVC
|
||||||
- runner: macos-12
|
|
||||||
generator: MSVC
|
|
||||||
- runner: macos-12
|
|
||||||
generator: GCC
|
|
||||||
- runner: macos-11
|
|
||||||
generator: MSVC
|
|
||||||
- runner: macos-11
|
|
||||||
generator: GCC
|
|
||||||
- runner: macos-10.15
|
|
||||||
generator: MSVC
|
|
||||||
- runner: macos-10.15
|
|
||||||
generator: GCC
|
|
||||||
include:
|
include:
|
||||||
|
# Windows supports MSVC
|
||||||
- runner: windows-2022
|
- runner: windows-2022
|
||||||
generator: MSVC
|
name: "Windows"
|
||||||
experimental: true
|
package_name: "windows"
|
||||||
platform: "Windows 11"
|
CMAKE_SYSTEM_VERSION: "10.0.20348.0"
|
||||||
PACKAGE_NAME: "windows-11"
|
|
||||||
CMAKE_SYSTEM_VERSION: "10.0.22000.0"
|
|
||||||
CMAKE_GENERATOR: "Visual Studio 17 2022"
|
CMAKE_GENERATOR: "Visual Studio 17 2022"
|
||||||
CMAKE_GENERATOR_PLATFORM: "x64"
|
CMAKE_GENERATOR_PLATFORM: "x64"
|
||||||
- runner: windows-2019
|
|
||||||
generator: MSVC
|
# MacOS supports Clang
|
||||||
experimental: false
|
|
||||||
platform: "Windows 10"
|
|
||||||
PACKAGE_NAME: "windows-10"
|
|
||||||
CMAKE_SYSTEM_VERSION: "10.0.19041.0"
|
|
||||||
CMAKE_GENERATOR: "Visual Studio 16 2019"
|
|
||||||
CMAKE_GENERATOR_PLATFORM: "x64"
|
|
||||||
- runner: ubuntu-22.04
|
|
||||||
generator: GCC
|
|
||||||
experimental: false
|
|
||||||
platform: "Ubuntu 22"
|
|
||||||
compiler_c: gcc
|
|
||||||
compiler_cxx: g++
|
|
||||||
PACKAGE_NAME: "ubuntu-22-gcc"
|
|
||||||
CMAKE_GENERATOR: "Ninja"
|
|
||||||
- runner: ubuntu-20.04
|
|
||||||
generator: GCC
|
|
||||||
experimental: false
|
|
||||||
platform: "Ubuntu 20"
|
|
||||||
compiler_c: gcc
|
|
||||||
compiler_cxx: g++
|
|
||||||
PACKAGE_NAME: "ubuntu-20-gcc"
|
|
||||||
CMAKE_GENERATOR: "Ninja"
|
|
||||||
- runner: ubuntu-22.04
|
|
||||||
generator: Clang
|
|
||||||
experimental: false
|
|
||||||
platform: "Ubuntu 22"
|
|
||||||
compiler_c: clang
|
|
||||||
compiler_cxx: clang++
|
|
||||||
PACKAGE_NAME: "ubuntu-22-clang"
|
|
||||||
CMAKE_GENERATOR: "Ninja"
|
|
||||||
- runner: ubuntu-20.04
|
|
||||||
generator: Clang
|
|
||||||
experimental: false
|
|
||||||
platform: "Ubuntu 20"
|
|
||||||
compiler_c: clang
|
|
||||||
compiler_cxx: clang++
|
|
||||||
PACKAGE_NAME: "ubuntu-20-clang"
|
|
||||||
CMAKE_GENERATOR: "Ninja"
|
|
||||||
- runner: macos-12
|
- runner: macos-12
|
||||||
generator: Clang
|
name: "MacOS"
|
||||||
experimental: true
|
package_name: "macos"
|
||||||
platform: "MacOS 12"
|
|
||||||
PACKAGE_NAME: "macos-12"
|
|
||||||
CMAKE_GENERATOR: "Xcode"
|
CMAKE_GENERATOR: "Xcode"
|
||||||
CMAKE_OSX_DEPLOYMENT_TARGET: "10.15"
|
CMAKE_OSX_DEPLOYMENT_TARGET: "10.15"
|
||||||
- runner: macos-11
|
CMAKE_OSX_ARCHITECTURES: "x86_64"
|
||||||
generator: Clang
|
|
||||||
experimental: false
|
# Ubuntu needs version-specific binaries
|
||||||
platform: "MacOS 11"
|
- runner: ubuntu-22.04
|
||||||
PACKAGE_NAME: "macos-11"
|
name: "Ubuntu 22.04"
|
||||||
CMAKE_GENERATOR: "Xcode"
|
package_name: "ubuntu-22"
|
||||||
CMAKE_OSX_DEPLOYMENT_TARGET: "10.15"
|
CMAKE_GENERATOR: "Ninja"
|
||||||
- runner: macos-10.15
|
- runner: ubuntu-20.04
|
||||||
generator: Clang
|
name: "Ubuntu 20.04"
|
||||||
experimental: true
|
package_name: "ubuntu-20"
|
||||||
platform: "MacOS 10.15"
|
CMAKE_GENERATOR: "Ninja"
|
||||||
PACKAGE_NAME: "macos-10.15"
|
|
||||||
CMAKE_GENERATOR: "Xcode"
|
|
||||||
CMAKE_OSX_DEPLOYMENT_TARGET: "10.15"
|
|
||||||
name: "${{ matrix.platform }} (${{ matrix.generator }}, ${{ matrix.CMAKE_BUILD_TYPE }})"
|
|
||||||
runs-on: ${{ matrix.runner }}
|
runs-on: ${{ matrix.runner }}
|
||||||
continue-on-error: ${{ matrix.experimental }}
|
name: "${{ matrix.name }} (${{ matrix.generator }})"
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.compiler_c }}
|
CMAKE_GENERATOR: "${{ matrix.CMAKE_GENERATOR }}"
|
||||||
CXX: ${{ matrix.compiler_cxx }}
|
CMAKE_GENERATOR_PLATFORM: "${{ matrix.CMAKE_GENERATOR_PLATFORM }}"
|
||||||
CMAKE_GENERATOR: ${{ matrix.CMAKE_GENERATOR }}
|
CMAKE_GENERATOR_TOOLSET: "${{ matrix.CMAKE_GENERATOR_TOOLSET }}"
|
||||||
CMAKE_GENERATOR_PLATFORM: ${{ matrix.CMAKE_GENERATOR_PLATFORM }}
|
CMAKE_SYSTEM_VERSION: "${{ matrix.CMAKE_SYSTEM_VERSION }}"
|
||||||
CMAKE_GENERATOR_TOOLSET: ${{ matrix.CMAKE_GENERATOR_TOOLSET }}
|
|
||||||
CMAKE_SYSTEM_VERSION: ${{ matrix.CMAKE_SYSTEM_VERSION }}
|
|
||||||
CMAKE_OSX_DEPLOYMENT_TARGET: "${{ matrix.CMAKE_OSX_DEPLOYMENT_TARGET }}"
|
CMAKE_OSX_DEPLOYMENT_TARGET: "${{ matrix.CMAKE_OSX_DEPLOYMENT_TARGET }}"
|
||||||
|
CMAKE_OSX_ARCHITECTURES: "${{ matrix.CMAKE_OSX_ARCHITECTURES }}"
|
||||||
steps:
|
steps:
|
||||||
- name: "Clone"
|
- name: "Clone"
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
@ -162,19 +105,30 @@ jobs:
|
||||||
qtbase5-dev qtbase5-private-dev libqt5svg5-dev \
|
qtbase5-dev qtbase5-private-dev libqt5svg5-dev \
|
||||||
libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libswresample-dev libswscale-dev \
|
libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libswresample-dev libswscale-dev \
|
||||||
libcurl4-openssl-dev
|
libcurl4-openssl-dev
|
||||||
|
|
||||||
|
# clang-format, clang-tidy
|
||||||
|
curl -jLo /tmp/llvm.sh "https://apt.llvm.org/llvm.sh"
|
||||||
|
chmod +x /tmp/llvm.sh
|
||||||
|
sudo /tmp/llvm.sh 14 all
|
||||||
|
sudo update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-14 800
|
||||||
|
sudo update-alternatives --install /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-14 800
|
||||||
|
|
||||||
|
# Compiler
|
||||||
if [[ "${{ matrix.generator }}" = "GCC" ]]; then
|
if [[ "${{ matrix.generator }}" = "GCC" ]]; then
|
||||||
sudo apt-get install gcc-10 g++10
|
sudo apt-get install gcc-10 g++10
|
||||||
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 800 --slave /usr/bin/g++ g++ /usr/bin/g++-10
|
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 800 --slave /usr/bin/g++ g++ /usr/bin/g++-10
|
||||||
|
echo "CC=gcc-10" >> "${GITHUB_ENV}"
|
||||||
|
echo "CXX=gcc-10" >> "${GITHUB_ENV}"
|
||||||
|
echo "LD=ld" >> "${GITHUB_ENV}"
|
||||||
elif [[ "${{ matrix.generator }}" = "Clang" ]]; then
|
elif [[ "${{ matrix.generator }}" = "Clang" ]]; then
|
||||||
curl -jLo /tmp/llvm.sh https://apt.llvm.org/llvm.sh
|
|
||||||
sudo bash -x /tmp/llvm.sh 14 all
|
|
||||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-14 800
|
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-14 800
|
||||||
sudo update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-14 800
|
sudo update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-14 800
|
||||||
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-14 800
|
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-14 800
|
||||||
sudo update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-14 800
|
|
||||||
sudo update-alternatives --install /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-14 800
|
|
||||||
sudo update-alternatives --install /usr/bin/lld lld /usr/bin/lld-14 800
|
sudo update-alternatives --install /usr/bin/lld lld /usr/bin/lld-14 800
|
||||||
sudo update-alternatives --install /usr/bin/lldb lldb /usr/bin/lldb-14 800
|
sudo update-alternatives --install /usr/bin/lldb lldb /usr/bin/lldb-14 800
|
||||||
|
echo "CC=clang-14" >> "${GITHUB_ENV}"
|
||||||
|
echo "CXX=clang++-14" >> "${GITHUB_ENV}"
|
||||||
|
echo "LD=lld" >> "${GITHUB_ENV}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: 'Dependencies: MacOS'
|
- name: 'Dependencies: MacOS'
|
||||||
|
|
Loading…
Reference in a new issue