Skip to content

Commit

Permalink
Merge branch 'main' of https://github.com/dotnet/Silk.NET into hotfix…
Browse files Browse the repository at this point in the history
…/silly-fixes
  • Loading branch information
Perksey committed Apr 18, 2024
2 parents 3a9aaee + aea6c51 commit ea5af25
Show file tree
Hide file tree
Showing 134 changed files with 824 additions and 391 deletions.
32 changes: 26 additions & 6 deletions .github/workflows/assimp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,37 @@ jobs:
fail-fast: false
matrix:
env:
- os: ubuntu-latest
- os: ubuntu-22.04
name: Linux
nuke_invoke: ./build.sh
extras: |
sudo apt-get update
sudo apt-get install -y xorg-dev
- os: windows-latest
# We need to adjust APT sources for multiarch. Use the ones corresponding to
# Ubuntu 22.04 with appropriate `arch` values. ports.ubuntu.com is required
# for armhf and arm64.
sudo tee /etc/apt/sources.list << EOF
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy main universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-backports main universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-security main universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-updates main universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy main universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-backports main universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-security main universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-updates main universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy main universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-backports main universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-security main universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-updates main universe
EOF
sudo dpkg --add-architecture arm64
sudo dpkg --add-architecture armhf
sudo apt update
sudo apt install -y gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf
sudo apt install -y g++-aarch64-linux-gnu g++-arm-linux-gnueabihf
- os: windows-2022
name: Windows
nuke_invoke: ./build.cmd
extras: ""
- os: macos-latest
- os: macos-14
name: Darwin
nuke_invoke: ./build.sh
extras: ""
Expand All @@ -41,7 +61,7 @@ jobs:
run: |
git -c submodule.third_party/git-hooks.update=none submodule update --init --recursive --depth 0 build/submodules/Assimp
git config --local user.email "9011267+dotnet-bot@users.noreply.github.com"
git config --local user.name "The Silk.NET Automaton"
git config --local user.name "The Silk.NET Automaton"
- name: Extra prerequisites
run: |
echo running extras
Expand Down
36 changes: 30 additions & 6 deletions .github/workflows/glfw.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,41 @@ jobs:
fail-fast: false
matrix:
env:
- os: ubuntu-latest
- os: ubuntu-22.04
name: Linux
nuke_invoke: ./build.sh
extras: |
sudo apt-get update
sudo apt-get install -y xorg-dev libwayland-dev libxkbcommon-dev
- os: windows-latest
# We need to adjust APT sources for multiarch. Use the ones corresponding to
# Ubuntu 22.04 with appropriate `arch` values. ports.ubuntu.com is required
# for armhf and arm64.
sudo tee /etc/apt/sources.list << EOF
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-backports main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-security main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-updates main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-backports main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-security main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-updates main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-backports main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-security main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-updates main multiverse restricted universe
EOF
sudo dpkg --add-architecture arm64
sudo dpkg --add-architecture armhf
sudo apt update
sudo apt install -y gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf
sudo apt install -y extra-cmake-modules pkg-config wayland-protocols
for arch in amd64 arm64 armhf; do
sudo apt install -y libwayland-dev:$arch libxcursor-dev:$arch libxi-dev:$arch
sudo apt install -y libxinerama-dev:$arch libxrandr-dev:$arch libxkbcommon-dev:$arch
done
- os: windows-2022
name: Windows
nuke_invoke: ./build.cmd
extras: ""
- os: macos-latest
- os: macos-14
name: Darwin
nuke_invoke: ./build.sh
extras: ""
Expand All @@ -41,7 +65,7 @@ jobs:
run: |
git -c submodule.third_party/git-hooks.update=none submodule update --init --recursive --depth 0 build/submodules/GLFW
git config --local user.email "9011267+dotnet-bot@users.noreply.github.com"
git config --local user.name "The Silk.NET Automaton"
git config --local user.name "The Silk.NET Automaton"
- name: Extra prerequisites
run: |
echo running extras
Expand Down
86 changes: 86 additions & 0 deletions .github/workflows/openal-soft.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
name: OpenAL Soft
on:
push:
branches-ignore:
- "ci/**"
- "develop/**"
- "main"
paths:
- build/submodules/openal-soft
- build/nuke/Native/Core.cs
- build/nuke/Native/OpenALSoft.cs
- .github/workflows/openal-soft.yml
jobs:
Build:
if: github.repository == 'dotnet/Silk.NET'
strategy:
fail-fast: false
matrix:
env:
- os: ubuntu-22.04
name: Linux
nuke_invoke: ./build.sh
extras: |
# We need to adjust APT sources for multiarch. Use the ones corresponding to
# Ubuntu 22.04 with appropriate `arch` values. ports.ubuntu.com is required
# for armhf and arm64.
sudo tee /etc/apt/sources.list << EOF
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-backports main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-security main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-updates main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-backports main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-security main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-updates main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-backports main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-security main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-updates main multiverse restricted universe
EOF
sudo dpkg --add-architecture arm64
sudo dpkg --add-architecture armhf
sudo apt update
sudo apt install -y gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf
sudo apt install -y g++-aarch64-linux-gnu g++-arm-linux-gnueabihf
for arch in amd64 arm64 armhf; do
sudo apt install -y libasound2-dev:$arch libpulse-dev:$arch libsoundio-dev:$arch
sudo apt install -y libsndfile1-dev:$arch libmysofa-dev:$arch qtbase5-dev:$arch
sudo apt install -y libdbus-1-dev:$arch
done
# These packages aren't multiarch-compatible in 22.04, so we prioritize amd64 for these.
sudo apt install -y libjack-dev portaudio19-dev
- os: windows-2022
name: Windows
nuke_invoke: ./build.cmd
extras: ""
- os: macos-14
name: Darwin
nuke_invoke: ./build.sh
extras: ""
name: ${{ matrix.env.name }} Build
runs-on: ${{ matrix.env.os }}
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.PUSHABLE_GITHUB_TOKEN }}
- name: Checkout submodules, configure git.
run: |
git -c submodule.third_party/git-hooks.update=none submodule update --init --recursive --depth 0 build/submodules/openal-soft
git config --local user.email "9011267+dotnet-bot@users.noreply.github.com"
git config --local user.name "The Silk.NET Automaton"
- name: Extra prerequisites
run: |
echo running extras
${{ matrix.env.extras }}
- name: Setup .NET 6.0 and .NET 7.0
uses: actions/setup-dotnet@v1
with:
dotnet-version: |
6.0.201
7.0.*
- name: Build OpenAL Soft
run: ${{ matrix.env.nuke_invoke }} openalsoft
env:
PUSHABLE_GITHUB_TOKEN: ${{ secrets.PUSHABLE_GITHUB_TOKEN }}

42 changes: 37 additions & 5 deletions .github/workflows/sdl2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@ jobs:
fail-fast: false
matrix:
env:
- os: ubuntu-latest
- os: ubuntu-22.04
name: Linux
nuke_invoke: ./build.sh
- os: windows-latest
- os: windows-2022
name: Windows
nuke_invoke: ./build.cmd
extras: |
pwsh build\Install-WindowsSDK.ps1
- os: macos-latest
- os: macos-14
name: Darwin
nuke_invoke: ./build.sh
extras: ""
Expand Down Expand Up @@ -56,8 +56,39 @@ jobs:
uses: Beyley/run-as-1804@239b211a2ca687388b6251d6dab22cb90ac0391d
with:
command: |
# We need to adjust APT sources for multiarch. Use the ones corresponding to
# Ubuntu 18.04 with appropriate `arch` values. ports.ubuntu.com is required
# for armhf and arm64.
tee /etc/apt/sources.list << EOF
deb [arch=amd64] http://archive.ubuntu.com/ubuntu bionic main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu bionic-backports main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu bionic-security main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu bionic-updates main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com bionic main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com bionic-backports main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com bionic-security main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com bionic-updates main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu bionic main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu bionic-backports main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu bionic-security main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu bionic-updates main multiverse restricted universe
EOF
dpkg --add-architecture arm64
dpkg --add-architecture armhf
apt update
apt install -y python3 curl wget build-essential git make autoconf gcc-multilib g++-multilib automake libtool pkg-config ninja-build gnome-desktop-testing libasound2-dev libpulse-dev libaudio-dev libjack-dev libsndio-dev libsamplerate0-dev libx11-dev libxext-dev libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev libwayland-dev libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev fcitx-libs-dev
apt install -y gcc gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf
apt install -y g++ g++-aarch64-linux-gnu g++-arm-linux-gnueabihf
apt install -y automake build-essential curl git libtool pkg-config python3 wget
for arch in amd64 arm64 armhf; do
apt install -y libasound2-dev:$arch libpulse-dev:$arch libaudio-dev:$arch
apt install -y libsndio-dev:$arch libsamplerate0-dev:$arch libx11-dev:$arch libxext-dev:$arch
apt install -y libxrandr-dev:$arch libxcursor-dev:$arch libxfixes-dev:$arch libxi-dev:$arch
apt install -y libxss-dev:$arch libwayland-dev:$arch libxkbcommon-dev:$arch libdrm-dev:$arch
apt install -y libgbm-dev:$arch libgl1-mesa-dev:$arch libgles2-mesa-dev:$arch libegl1-mesa-dev:$arch
apt install -y libdbus-1-dev:$arch libibus-1.0-dev:$arch libudev-dev:$arch
done
# This package isn't multiarch-compatible in 22.04, so we prioritize amd64 for this.
apt install -y libjack-dev
wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh
chmod +x ./dotnet-install.sh
Expand All @@ -72,6 +103,7 @@ jobs:
# mark workspace as safe
git config --global --add safe.directory /github/workspace
git config --global --add safe.directory /github/workspace/build/submodules/SDL
${{ matrix.env.nuke_invoke }} SDL2
env:
Expand All @@ -82,5 +114,5 @@ jobs:
run: ${{ matrix.env.nuke_invoke }} SDL2
env:
PUSHABLE_GITHUB_TOKEN: ${{ secrets.PUSHABLE_GITHUB_TOKEN }}


3 changes: 0 additions & 3 deletions .github/workflows/shaderc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,6 @@ jobs:
- os: ubuntu-latest
name: Linux
nuke_invoke: ./build.sh
extras: |
sudo apt-get update
sudo apt-get install -y build-essential binutils-aarch64-linux-gnu
name: ${{ matrix.env.name }} Build
runs-on: ${{ matrix.env.os }}
steps:
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/spirv-cross.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,6 @@ jobs:
- os: ubuntu-latest
name: Linux
nuke_invoke: ./build.sh
extras: |
sudo apt-get update
sudo apt-get install -y build-essential
name: ${{ matrix.env.name }} Build
runs-on: ${{ matrix.env.os }}
steps:
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/spirv-reflect.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,6 @@ jobs:
- os: ubuntu-latest
name: Linux
nuke_invoke: ./build.sh
extras: |
sudo apt-get update
sudo apt-get install -y build-essential
name: ${{ matrix.env.name }} Build
runs-on: ${{ matrix.env.os }}
steps:
Expand Down
35 changes: 29 additions & 6 deletions .github/workflows/swiftshader.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,40 @@ jobs:
fail-fast: false
matrix:
env:
- os: ubuntu-latest
- os: ubuntu-22.04
name: Linux
nuke_invoke: ./build.sh
extras: |
sudo apt-get update
sudo apt-get install -y libx11-xcb-dev
- os: windows-latest
# We need to adjust APT sources for multiarch. Use the ones corresponding to
# Ubuntu 22.04 with appropriate `arch` values. ports.ubuntu.com is required
# for armhf and arm64.
sudo tee /etc/apt/sources.list << EOF
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-backports main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-security main multiverse restricted universe
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-updates main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-backports main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-security main multiverse restricted universe
deb [arch=arm64,armhf] http://ports.ubuntu.com jammy-updates main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-backports main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-security main multiverse restricted universe
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-updates main multiverse restricted universe
EOF
sudo dpkg --add-architecture arm64
sudo dpkg --add-architecture armhf
sudo apt update
sudo apt install -y gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf
sudo apt install -y g++-aarch64-linux-gnu g++-arm-linux-gnueabihf
for arch in amd64 arm64 armhf; do
sudo apt install -y libx11-xcb-dev:$arch
done
- os: windows-2022
name: Windows
nuke_invoke: ./build.cmd
extras: ""
- os: macos-latest
- os: macos-14
name: Darwin
nuke_invoke: ./build.sh
extras: ""
Expand All @@ -41,7 +64,7 @@ jobs:
run: |
git -c submodule.third_party/git-hooks.update=none submodule update --init --recursive --depth 0 build/submodules/SwiftShader
git config --local user.email "9011267+dotnet-bot@users.noreply.github.com"
git config --local user.name "The Silk.NET Automaton"
git config --local user.name "The Silk.NET Automaton"
- name: Extra prerequisites
run: |
echo running extras
Expand Down
Loading

0 comments on commit ea5af25

Please sign in to comment.