Skip to content

Commit 629b4b4

Browse files
committed
- added appveyor.yml config for vs2022
- corrected failing debug builds - added gh CI build
1 parent bdb9d84 commit 629b4b4

3 files changed

Lines changed: 121 additions & 0 deletions

File tree

.github/dependabot.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5+
6+
version: 2
7+
updates:
8+
9+
# Maintain dependencies for GitHub Actions
10+
- package-ecosystem: "github-actions"
11+
directory: "/"
12+
schedule:
13+
interval: "weekly"

.github/workflows/CI_build.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: CI_build
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
8+
runs-on: windows-latest
9+
strategy:
10+
max-parallel: 6
11+
matrix:
12+
build_configuration: [Release, Debug]
13+
build_platform: [x64, Win32]
14+
15+
steps:
16+
- name: Checkout repo
17+
uses: actions/checkout@v3
18+
19+
- name: Add msbuild to PATH
20+
uses: microsoft/setup-msbuild@v1
21+
22+
- name: MSBuild of plugin dll
23+
working-directory: .
24+
run: msbuild RainLexer.sln /m /p:configuration="${{ matrix.build_configuration }}" /p:platform="${{ matrix.build_platform }}"
25+
26+
- name: Archive artifacts for x64
27+
if: matrix.build_platform == 'x64' && matrix.build_configuration == 'Release'
28+
uses: actions/upload-artifact@v3
29+
with:
30+
name: plugin_dll_x64
31+
path: x64-${{ matrix.build_configuration }}\RainLexer.dll
32+
33+
- name: Archive artifacts for Win32
34+
if: matrix.build_platform == 'Win32' && matrix.build_configuration == 'Release'
35+
uses: actions/upload-artifact@v3
36+
with:
37+
name: plugin_dll_x86
38+
path: x32-${{ matrix.build_configuration }}\RainLexer.dll

appveyor.yml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
version: 2.19.0.{build}
2+
image: Visual Studio 2022
3+
4+
5+
environment:
6+
matrix:
7+
- PlatformToolset: v143
8+
9+
platform:
10+
- x64
11+
- Win32
12+
13+
configuration:
14+
- Release
15+
- Debug
16+
17+
install:
18+
- if "%platform%"=="x64" set archi=amd64
19+
- if "%platform%"=="x64" set platform_input=x64
20+
- if "%platform%"=="Win32" set archi=x86
21+
- if "%platform%"=="Win32" set platform_input=Win32
22+
- call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" %archi%
23+
24+
build_script:
25+
- cd "%APPVEYOR_BUILD_FOLDER%"
26+
- msbuild RainLexer.sln /m /p:configuration="%configuration%" /p:platform="%platform_input%" /p:PlatformToolset="%PlatformToolset%" /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
27+
28+
after_build:
29+
- cd "%APPVEYOR_BUILD_FOLDER%"
30+
- ps: >-
31+
32+
if ($env:PLATFORM_INPUT -eq "x64" -and $env:CONFIGURATION -eq "Release") {
33+
Push-AppveyorArtifact "x64-$env:CONFIGURATION\RainLexer.dll" -FileName RainLexer.dll
34+
}
35+
36+
if ($env:PLATFORM_INPUT -eq "Win32" -and $env:CONFIGURATION -eq "Release") {
37+
Push-AppveyorArtifact "x32-$env:CONFIGURATION\RainLexer.dll" -FileName RainLexer.dll
38+
}
39+
40+
if ($($env:APPVEYOR_REPO_TAG) -eq "true" -and $env:CONFIGURATION -eq "Release" -and $env:PLATFORMTOOLSET -eq "v143") {
41+
if($env:PLATFORM_INPUT -eq "x64"){
42+
$ZipFileName = "RainLexer_$($env:APPVEYOR_REPO_TAG_NAME)_x64.zip"
43+
Remove-Item x64-$env:CONFIGURATION\*.ilk
44+
Remove-Item x64-$env:CONFIGURATION\*.pdb
45+
7z a $ZipFileName x64-$env:CONFIGURATION\*
46+
}
47+
if($env:PLATFORM_INPUT -eq "Win32"){
48+
$ZipFileName = "RainLexer_$($env:APPVEYOR_REPO_TAG_NAME)_x86.zip"
49+
Remove-Item x32-$env:CONFIGURATION\*.ilk
50+
Remove-Item x32-$env:CONFIGURATION\*.pdb
51+
7z a $ZipFileName x32-$env:CONFIGURATION\*
52+
}
53+
}
54+
55+
artifacts:
56+
- path: RainLexer_*.zip
57+
name: releases
58+
59+
deploy:
60+
provider: GitHub
61+
auth_token:
62+
secure: !!TODO, see https://www.appveyor.com/docs/deployment/github/#provider-settings!!
63+
artifact: releases
64+
draft: false
65+
prerelease: false
66+
force_update: true
67+
on:
68+
appveyor_repo_tag: true
69+
PlatformToolset: v143
70+
configuration: Release

0 commit comments

Comments
 (0)