notepad-plus-plus/appveyor.yml

125 lines
5.4 KiB
YAML

version: 8.4.{build}
image: Visual Studio 2022
#skip_commits:
# files:
# - PowerEditor/bin/*/*.xml
# - PowerEditor/installer/*/*.xml
environment:
matrix:
- compiler: MSC
platform: Win32
- compiler: MSC
platform: x64
- compiler: MSC
platform: arm64
- compiler: GCC
platform: i686
- compiler: GCC
platform: x86_64
configuration:
- Release
- Debug
before_build:
- ps: |
Write-Output "Compiler : $env:compiler"
Write-Output "Platform : $env:platform"
Write-Output "Configuration : $env:configuration"
for:
- matrix:
only:
- compiler: MSC
build:
parallel: true
project: PowerEditor\visual.net\notepadPlus.sln
after_build:
# artifacts
- ps: |
$nppFileName = "Notepad++.$env:platform.$env:configuration.exe"
if ("$env:platform/$env:configuration" -eq "Win32/Release") {
Push-AppveyorArtifact "PowerEditor\bin\Notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "Win32/Debug") {
Push-AppveyorArtifact "PowerEditor\visual.net\Debug\Notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "x64/Release") {
Push-AppveyorArtifact "PowerEditor\bin64\Notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "x64/Debug") {
Push-AppveyorArtifact "PowerEditor\visual.net\x64\Debug\Notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "arm64/Release") {
Push-AppveyorArtifact "PowerEditor\binarm64\Notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "arm64/Debug") {
Push-AppveyorArtifact "PowerEditor\visual.net\arm64\Debug\Notepad++.exe" -FileName "$nppFileName"
}
# xml files syntax checks
- if "%platform%/%configuration%" EQU "Win32/Debug" set PATH=C:\Python310;C:\Python310\Scripts;%PATH%
- if "%platform%/%configuration%" EQU "Win32/Debug" python -m pip install requests rfc3987 pywin32 lxml
- if "%platform%/%configuration%" EQU "Win32/Debug" python PowerEditor\Test\xmlValidator\validator_xml.py
# tests
- ps: |
if ("$env:platform/$env:configuration" -eq "Win32/Debug") {
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\visual.net\Debug\Notepad++.exe" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin"
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\src\langs.model.xml" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin"
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\src\stylers.model.xml" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin"
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\src\shortcuts.xml" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin"
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\src\contextMenu.xml" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin"
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\installer\functionList" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin" -Recurse
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\installer\filesForTesting\regexGlobalTest.xml" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin\functionList"
Copy-Item "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\installer\filesForTesting\overrideMap.xml" -Destination "$env:APPVEYOR_BUILD_FOLDER\PowerEditor\bin\functionList"
cd .\PowerEditor\Test\FunctionList\
.\unitTestLauncher.ps1
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
cd ..\UrlDetection
.\verifyUrlDetection.ps1
cd "$env:APPVEYOR_BUILD_FOLDER"
}
- matrix:
only:
- compiler: GCC
install:
- set PATH=C:\msys64\usr\bin
- if "%platform%" EQU "i686" set $env:MSYSTEM = 'MINGW32'
- if "%platform%" EQU "x86_64" set $env:MSYSTEM = 'MINGW64'
- if "%configuration%" EQU "Debug" set DEBUG=1
# uncomment lines below to update packages to use latest gcc
#- bash -lc "pacman --noconfirm -Syuu"
#- bash -lc "pacman --noconfirm -Syuu"
#- if "%platform%" EQU "i686" bash -lc "pacman --noconfirm -S mingw-w64-i686-gcc mingw-w64-i686-make"
#- if "%platform%" EQU "x86_64" bash -lc "pacman --noconfirm -S mingw-w64-x86_64-gcc mingw-w64-x86_64-make"
- if "%platform%" EQU "i686" set PATH=C:\msys64\mingw32\bin;%PATH:C:\Program Files\Git\usr\bin;=%
- if "%platform%" EQU "x86_64" set PATH=C:\msys64\mingw64\bin;%PATH:C:\Program Files\Git\usr\bin;=%
build_script:
- mingw32-make -f PowerEditor\gcc\makefile
after_build:
# artifacts
- ps: |
$nppFileName = "Notepad++.$env:compiler.$env:platform.$env:configuration.exe"
if ("$env:platform/$env:configuration" -eq "i686/Release") {
Push-AppveyorArtifact "bin.i686\notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "i686/Debug") {
Push-AppveyorArtifact "bin.i686-debug\notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "x86_64/Release") {
Push-AppveyorArtifact "bin.x86_64\notepad++.exe" -FileName "$nppFileName"
}
if ("$env:platform/$env:configuration" -eq "x86_64/Debug") {
Push-AppveyorArtifact "bin.x86_64-debug\notepad++.exe" -FileName "$nppFileName"
}