Skip to content

MSBuild

MSBuild #38

Workflow file for this run

# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
name: MSBuild
on: workflow_dispatch
env:
# Path to the solution file relative to the root of the project.
SOLUTION_FILE_PATH: ./x64Win10.vcxproj
# Configuration type to build.
# You can convert this to a build matrix if you need coverage of multiple configuration types.
# https://docs.github.com/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
BUILD_CONFIGURATION: Release
OpenCV_DIR: D:\a\OCVWarp\OCVWarp\OpenCV\opencv\build\x64\vc14
permissions:
contents: read
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v2
- name: Cache OpenCV
uses: actions/cache@v4
id: OpenCV-cache
with:
path: |
**/OpenCV
key: ${{ runner.os }}-OpenCV
- name: Install OpenCV from github releases
if: steps.OpenCV-cache.outputs.cache-hit != 'true'
run: |
md OpenCV
cd OpenCV
echo "Downloading OpenCV release..."
powershell -c "Invoke-WebRequest -Uri 'https://github.com/opencv/opencv/releases/download/4.3.0/opencv-4.3.0-vc14_vc15.exe' -OutFile 'opencv-4.3.0-vc14_vc15.exe'"
echo "Download complete. Extracting ... "
7z x opencv-4.3.0-vc14_vc15.exe
cd ..
- name: Build
working-directory: ${{env.GITHUB_WORKSPACE}}
# Add additional options to the MSBuild command line here (like platform or verbosity level).
# See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference
run: |
msbuild /m /p:Platform=x64 /p:Configuration=Release ${{env.SOLUTION_FILE_PATH}}
Rename-Item "x64\Release\x64Win10.exe" -NewName "OCVWarp-3.20-x64Win10.exe"
- name: Upload a Build Artifact
uses: actions/upload-artifact@v4
with:
# Artifact name
name: OCVWarpWin10
# optional, default is artifact
# A file, directory or wildcard pattern that describes what to upload
path: x64\Release\*x64Win10.exe
# The desired behavior if no files are found using the provided path.
#Available Options:
# warn: Output a warning but do not fail the action
# error: Fail the action with an error message
# ignore: Do not output any warnings or errors, the action does not fail
#if-no-files-found: # optional, default is warn
# Duration after which artifact will expire in days. 0 means using default retention.
#Minimum 1 day. Maximum 90 days unless changed from the repository settings page.
#retention-days: 0# optional