Skip to content

Added recreating the swapchain if monitor configuration is different. #2154

Added recreating the swapchain if monitor configuration is different.

Added recreating the swapchain if monitor configuration is different. #2154

Workflow file for this run

name: OpenGL Win64
on:
push:
branches-ignore:
- vulkan
tags-ignore:
- '**'
jobs:
###################################
# #
# FULL BUILDS #
# #
###################################
windows-full-build:
runs-on: windows-2022
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup environment
uses: ilammy/msvc-dev-cmd@v1
- name: Install Visual C++ Redistributable 2022
run: |
$vc_redist_url_2022 = "https://aka.ms/vs/17/release/vc_redist.x64.exe"
Invoke-WebRequest -Uri $vc_redist_url_2022 -OutFile vc_redist_2022.x64.exe
Start-Process vc_redist_2022.x64.exe -ArgumentList "/install", "/quiet", "/norestart" -Wait
shell: powershell
# - name: Install specific MSVC toolset (in case build breaks)
# shell: powershell
# run: |
# Invoke-WebRequest `
# -Uri https://aka.ms/vs/17/release/vs_BuildTools.exe `
# -OutFile vs_BuildTools.exe
# Start-Process .\vs_BuildTools.exe `
# -ArgumentList `
# "--quiet", "--wait",
# "--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
# "--includeRecommended",
# "--installPath C:\VS2022Custom" `
# -NoNewWindow -Wait- name: Activate MSVC
# - name: Activate MSVC
# uses: ilammy/msvc-dev-cmd@v1
# with:
# path: 'C:\VS2022Custom'
- name: Synchronize clock
shell: cmd
run: |
w32tm /config /manualpeerlist:time.windows.com /syncfromflags:manual /reliable:YES /update
net stop w32time
net start w32time
w32tm /resync /rediscover
- name: Setup MSYS
uses: msys2/setup-msys2@v2
with:
update: true
path-type: inherit
- name: Get machine name
run: |
echo "Machine name: $RUNNER_NAME"
# \@bug: Install Vulkan SDK (must be installed to prevent a copy of
# vulkan-1.dll into C:/Windows/System32/vulkan-1.dll
# - name: Install Vulkan SDK
# run: |
# . ./etc/windows/install_vulkan.sh
# # Persist environment variables for subsequent steps
# echo "VULKAN_SDK=$VULKAN_SDK" >> $GITHUB_ENV
# echo "${VULKAN_SDK}/bin" >> $GITHUB_PATH
- name: Setup environment
run: mkdir -p ssh
- name: Decode SSH key
run: echo "${{ secrets.SSH_PRIVATE_KEY }}" | base64 -d > ssh/id_rsa
shell: bash
- name: Decode FLTK SSH key
shell: bash
run: |
mkdir -p ~/.ssh
echo "${{ secrets.FLTK_DEPLOY_KEY }}" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
ssh-keyscan github.com >> ~/.ssh/known_hosts
- name: Set permissions on SSH key
shell: cmd
run: |
icacls "ssh\id_rsa" /inheritance:r /grant:r "%USERNAME%:R"
- name: Add SourceForge to known_hosts
shell: bash
run: |
mkdir -p ~/.ssh
ssh-keyscan frs.sourceforge.net >> ~/.ssh/known_hosts
- name: Set executable permissions
run: |
chmod +x ./*.sh ./bin/*.sh ./etc/*.sh ./bin/release/*.sh
- name: Install MSYS2 Dependencies
run: |
pacman -S --noconfirm rsync
- name: Build mrv2
env:
BUILD_PYTHON: ON
MRV2_PYFLTK: ON
MRV2_PYBIND11: ON
MRV2_NETWORK: ON
MRV2_PDF: ON
MRV2_VK: ON
TLRENDER_AV1: ON
TLRENDER_EXR: ON
TLRENDER_FFMPEG: ON
TLRENDER_FFMPEG_MINIMAL: ON
TLRENDER_HAP: ON
TLRENDER_JPEG: ON
TLRENDER_NDI: OFF
TLRENDER_NET: ON
TLRENDER_OPENJPH: ON
TLRENDER_RAW: ON
TLRENDER_SGI: ON
TLRENDER_STB: ON
TLRENDER_SVTAV1: ON
TLRENDER_TIFF: ON
TLRENDER_USD: ON
TLRENDER_VK: OFF
TLRENDER_VPX: ON
TLRENDER_YASM: ON
run: |
./etc/runme_nolog.sh -v -t package clean
- name: Upload binaries
run: |
./bin/release/upload_sourceforge.sh
# - name: Upload Beta Release
# uses: softprops/action-gh-release@v2
# with:
# tag_name: betas
# name: Betas Builds
# body: |
# Latest beta build - auto-updated.
# Built on: ${{ github.event.head_commit.message }}
# prerelease: true
# files: |
# packages/BUILD-Windows-amd64/Release/mrv2-beta-Windows-amd64.exe
# packages/BUILD-Windows-amd64/Release/mrv2-beta-Windows-amd64.zip
# overwrite_files: true # THIS IS KEY
# token: ${{ secrets.GITHUB_TOKEN }}