cppcheck/.github/workflows/release-windows.yml

102 lines
2.7 KiB
YAML

# Some convenient links:
# - https://github.com/actions/virtual-environments/blob/master/images/win/Windows2019-Readme.md
#
name: release-windows
on:
push:
tags:
- '2.*'
schedule:
- cron: '0 0 * * *'
defaults:
run:
shell: cmd
jobs:
build:
runs-on: windows-2019
steps:
- uses: actions/checkout@v2
- name: Setup msbuild.exe
uses: microsoft/setup-msbuild@v1.0.0
- name: Install PCRE
run: |
curl -fsSL https://ftp.pcre.org/pub/pcre/pcre-8.44.zip -o pcre-8.44.zip
7z x pcre-8.44.zip
cd pcre-8.44
cmake . -G "Visual Studio 16 2019" -A x64
msbuild -m PCRE.sln /p:Configuration=Release /p:Platform=x64
dir
dir Release
dir x64
dir x64\Release
copy pcre.h ..\externals
copy Release\pcre.lib ..\externals\pcre64.lib
- name: Install Z3 library
run: |
curl -fsSL https://github.com/Z3Prover/z3/releases/download/z3-4.8.7/z3-4.8.7-x64-win.zip -o z3-4.8.7-win.zip
7z x z3-4.8.7-win.zip -oexternals -r -y
move externals\z3-4.8.7-x64-win externals\z3
- name: Install Qt
uses: jurplel/install-qt-action@v2
with:
modules: 'qtcharts qthelp'
- name: Create .qm
run: |
cd gui
lupdate gui.pro
lrelease gui.pro -removeidentical
- name: Create online-help
run: |
cd gui\help
qhelpgenerator online-help.qhcp -o online-help.qhc
- name: Matchcompiler
run: python tools\matchcompiler.py --write-dir lib
- name: Build x64 release GUI
run: |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
cd gui
qmake HAVE_QCHART=yes
nmake release
- name: Deploy app
run: |
windeployqt Build\gui
del Build\gui\cppcheck-gui.ilk
del Build\gui\cppcheck-gui.pdb
- name: Build CLI x64 release configuration using MSBuild
run: msbuild -m cppcheck.sln /t:cli /p:Configuration=Release-PCRE /p:Platform=x64
- name: Build Installer
run: |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
mkdir bin
xcopy /S Build\gui bin
cd win_installer
msbuild -m cppcheck.wixproj /p:Platform=x64,ProductVersion=2.0.${{ github.run_number }}
- uses: actions/upload-artifact@v2
with:
name: installer
path: win_installer/Build/
- uses: actions/upload-artifact@v2
with:
name: deploy
path: Build\gui