Use DXGI_SWAP_CHAIN_DESC1 for creating swap chain if available for additional scaling options #756
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
concurrency: | |
group: ${{ github.ref }} | |
cancel-in-progress: true | |
on: | |
push: | |
pull_request: | |
jobs: | |
msvc: | |
strategy: | |
fail-fast: true | |
matrix: | |
include: [ | |
{ config: Debug, platform: Win32, bindir: 'win32_vs2019' }, | |
{ config: Debug, platform: x64, bindir: 'win64_vs2019' }, | |
{ config: Release, platform: Win32, bindir: 'win32_vs2019' }, | |
{ config: Release, platform: x64, bindir: 'win64_vs2019' }, | |
] | |
name: msvc-${{ matrix.config }}-${{ matrix.platform }} | |
runs-on: windows-2022 | |
steps: | |
- name: Checkout bgfx | |
uses: actions/checkout@v3 | |
with: | |
path: bgfx | |
- name: Checkout bx | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bx | |
path: bx | |
- name: Checkout bimg | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bimg | |
path: bimg | |
- name: Prepare | |
uses: microsoft/[email protected] | |
- name: Build | |
shell: cmd | |
run: | | |
cd bgfx | |
..\bx\tools\bin\windows\genie.exe --with-tools --with-combined-examples --with-shared-lib vs2019 | |
msbuild ".build/projects/vs2019/bgfx.sln" /m /v:minimal /p:Configuration=${{ matrix.config }} /p:Platform=${{ matrix.platform }} | |
- name: Check | |
shell: cmd | |
run: | | |
cd bgfx | |
dir /s ".build\${{ matrix.bindir }}\bin" | |
".build\${{ matrix.bindir }}\bin\geometryc${{ matrix.config }}.exe" --version | |
".build\${{ matrix.bindir }}\bin\shaderc${{ matrix.config }}.exe" --version | |
".build\${{ matrix.bindir }}\bin\texturec${{ matrix.config }}.exe" --version | |
mingw: | |
strategy: | |
fail-fast: true | |
matrix: | |
include: [ | |
{ msystem: MINGW64, project: 'mingw-gcc', bindir: 'win64_mingw-gcc' }, | |
{ msystem: CLANG64, project: 'mingw-clang', bindir: 'win64_mingw-clang' }, | |
] | |
name: mingw-${{ matrix.msystem }} | |
runs-on: windows-2022 | |
steps: | |
- name: Checkout bgfx | |
uses: actions/checkout@v3 | |
with: | |
path: bgfx | |
- name: Checkout bx | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bx | |
path: bx | |
- name: Checkout bimg | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bimg | |
path: bimg | |
- name: Prepare | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: ${{ matrix.msystem }} | |
update: true | |
install: make | |
pacboy: cc:p | |
- name: Build | |
shell: msys2 {0} | |
run: | | |
cd bgfx | |
make ${{ matrix.project }}-release64 -j$(nproc) AR=ar CC=cc CXX=c++ MINGW=$MINGW_PREFIX | |
- name: Check | |
shell: cmd | |
run: | | |
cd bgfx | |
dir /s ".build\${{ matrix.bindir }}\bin" | |
".build\${{ matrix.bindir }}\bin\geometrycRelease.exe" --version | |
".build\${{ matrix.bindir }}\bin\shadercRelease.exe" --version | |
".build\${{ matrix.bindir }}\bin\texturecRelease.exe" --version | |
linux: | |
strategy: | |
fail-fast: true | |
matrix: | |
include: [ | |
{ config: debug, binsuffix: Debug }, | |
{ config: release, binsuffix: Release }, | |
] | |
name: linux-gcc-${{ matrix.config }}64 | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Checkout bgfx | |
uses: actions/checkout@v3 | |
with: | |
path: bgfx | |
- name: Checkout bx | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bx | |
path: bx | |
- name: Checkout bimg | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bimg | |
path: bimg | |
- name: Build | |
run: | | |
sudo apt install libgl-dev | |
cd bgfx | |
make -j$(nproc) linux-gcc-${{ matrix.config }}64 | |
- name: Check | |
run: | | |
cd bgfx | |
ls -lash ".build/linux64_gcc/bin" | |
".build/linux64_gcc/bin/geometryc${{ matrix.binsuffix}}" --version | |
".build/linux64_gcc/bin/shaderc${{ matrix.binsuffix}}" --version | |
".build/linux64_gcc/bin/texturec${{ matrix.binsuffix}}" --version | |
osx: | |
strategy: | |
fail-fast: true | |
matrix: | |
include: [ | |
{ config: debug, binsuffix: Debug }, | |
{ config: release, binsuffix: Release }, | |
] | |
name: osx-x64-${{ matrix.config }} | |
runs-on: macos-14 | |
steps: | |
- name: Checkout bgfx | |
uses: actions/checkout@v3 | |
with: | |
path: bgfx | |
- name: Checkout bx | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bx | |
path: bx | |
- name: Checkout bimg | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bimg | |
path: bimg | |
- name: Build | |
run: | | |
cd bgfx | |
make -j$(sysctl -n hw.physicalcpu) osx-x64-${{ matrix.config }} | |
- name: Check | |
run: | | |
cd bgfx | |
ls -lash ".build/osx-x64/bin" | |
".build/osx-x64/bin/geometryc${{ matrix.binsuffix}}" --version | |
".build/osx-x64/bin/shaderc${{ matrix.binsuffix}}" --version | |
".build/osx-x64/bin/texturec${{ matrix.binsuffix}}" --version | |
android: | |
strategy: | |
fail-fast: true | |
matrix: | |
include: [ | |
{ platform: arm64 }, | |
] | |
name: android-${{ matrix.platform }} | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: nttld/setup-ndk@v1 | |
id: setup-ndk | |
with: | |
ndk-version: r25b | |
add-to-path: false | |
- name: Checkout bgfx | |
uses: actions/checkout@v3 | |
with: | |
path: bgfx | |
- name: Checkout bx | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bx | |
path: bx | |
- name: Checkout bimg | |
uses: actions/checkout@v3 | |
with: | |
repository: bkaradzic/bimg | |
path: bimg | |
- name: Build | |
run: | | |
cd bgfx | |
make -j$(sysctl -n hw.physicalcpu) android-${{ matrix.platform }} | |
env: | |
ANDROID_NDK_ROOT: ${{ steps.setup-ndk.outputs.ndk-path }} | |
- name: Check | |
run: | | |
cd bgfx | |
ls -lash ".build/android-${{ matrix.platform }}/bin" |