107 lines
2.9 KiB
YAML
107 lines
2.9 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 * * *'
|
|
workflow_dispatch:
|
|
|
|
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.2
|
|
|
|
- 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:
|
|
version: '5.15.2'
|
|
modules: 'qtcharts qthelp'
|
|
mirror: 'http://mirrors.ocf.berkeley.edu/qt/'
|
|
|
|
- name: Create .qm
|
|
run: |
|
|
cd gui
|
|
lupdate gui.pro
|
|
lrelease gui.pro -removeidentical
|
|
|
|
- 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
|
|
env:
|
|
CL: /MP
|
|
|
|
- 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
|
|
REM Read ProductVersion
|
|
for /f "tokens=4 delims= " %%a in ('find "ProductVersion" productInfo.wxi') do set PRODUCTVER=%%a
|
|
REM Remove double quotes
|
|
set PRODUCTVER=%PRODUCTVER:"=%
|
|
echo ProductVersion=%PRODUCTVER%
|
|
msbuild -m cppcheck.wixproj /p:Platform=x64,ProductVersion=%PRODUCTVER%.${{ 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
|