Merge pull request #2687 from noproto/master #5787
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Windows Build and Test | |
on: | |
push: | |
paths-ignore: | |
- 'doc/**' | |
- 'docker/**' | |
- 'traces/**' | |
- '.vscode/**' | |
pull_request: | |
paths-ignore: | |
- 'doc/**' | |
- 'docker/**' | |
- 'traces/**' | |
- '.vscode/**' | |
jobs: | |
proxspace: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: pwsh | |
env: | |
PATH: C:/ProxSpace/msys2/mingw64/bin;C:/ProxSpace/msys2/usr/local/bin;C:/ProxSpace/msys2/usr/bin;C:/ProxSpace/msys2/bin | |
MSYSTEM: MINGW64 | |
PYTHONHOME: /mingw64 | |
steps: | |
- name: ProxSpace download | |
run: Invoke-WebRequest "https://github.com/Gator96100/ProxSpace/archive/master.zip" -outfile "C:\proxspace.zip" -Passthru | |
- name: ProxSpace extract | |
run: Expand-Archive -LiteralPath "C:\proxspace.zip" -DestinationPath "C:\" | |
- name: ProxSpace delete zip | |
run: Remove-Item "C:\proxspace.zip" | |
- name: ProxSpace rename folder | |
run: Get-ChildItem -Path "C:\ProxSpace-*" | Rename-Item -NewName (Split-Path C:\ProxSpace -Leaf) | |
- name: ProxSpace version | |
run: | | |
$psversion = (Select-String -Pattern 'PSVERSION=' -SimpleMatch -Path "C:\ProxSpace\setup\09-proxspace_setup.post").Line.Split("""")[1] | |
Write-Host "ProxSpace version: $psversion" | |
- name: ProxSpace initial startup | |
working-directory: C:\ProxSpace | |
run: ./runme64.bat -c "exit" | |
- uses: actions/checkout@v4 | |
- name: make clean | |
run: make clean | |
- name: Build | |
run: make -j $([System.Environment]::ProcessorCount + 1) V=1 | |
- name: Test | |
run: make check | |
- name: make clean | |
run: make clean | |
- name: Build btaddon | |
run: make -j $([System.Environment]::ProcessorCount + 1) V=1 PLATFORM_EXTRAS=BTADDON | |
- name: Test btaddon | |
run: make check | |
- name: make clean | |
run: make clean | |
- name: Prepare cmake build folders | |
run: | | |
mkdir -p client/build | |
ln -s ../cmdscripts client/build/ | |
ln -s ../luascripts client/build/ | |
ln -s ../pyscripts client/build/ | |
ln -s ../lualibs client/build/ | |
- name: Initiate cmake environment | |
run: cmake -G"MSYS Makefiles" .. | |
working-directory: client/build/ | |
- name: Build cmake | |
run: make -j $([System.Environment]::ProcessorCount + 1) VERBOSE=1 | |
working-directory: client/build/ | |
- name: Test cmake | |
run: make client/check CHECKARGS="--clientbin ./client/build/proxmark3" | |
wsl: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: wsl-bash {0} | |
steps: | |
- name: WSL setup | |
uses: Vampire/setup-wsl@v3 | |
with: | |
distribution: Ubuntu-22.04 | |
update: "true" | |
additional-packages: git | |
ca-certificates | |
build-essential | |
pkg-config | |
libreadline-dev | |
gcc-arm-none-eabi | |
libnewlib-dev | |
libbz2-dev | |
liblz4-dev | |
qtbase5-dev | |
cmake | |
libpython3-dev | |
python3 | |
python3-pip | |
python3-dev | |
libpython3-all-dev | |
libssl-dev | |
libgd-dev | |
- name: Install Python dependencies | |
run: | | |
python3 -m pip install --upgrade pip | |
python3 -m pip install setuptools | |
python3 -m pip install ansicolors sslcrypto | |
- name: WSL QT fix | |
run: sudo strip --remove-section=.note.ABI-tag /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 | |
- name: Set git to use LF | |
shell: bash | |
run: | | |
git config --global core.autocrlf false | |
git config --global core.eol lf | |
- uses: actions/checkout@v4 | |
- name: make clean | |
run: make clean | |
- name: Build | |
run: make -j$((`nproc` + 1)) V=1 | |
- name: Test | |
run: make check | |
- name: make clean | |
run: make clean | |
- name: Build btaddon | |
run: make -j$((`nproc` + 1)) V=1 PLATFORM_EXTRAS=BTADDON | |
- name: Test btaddon | |
run: make check | |
- name: make clean | |
run: make clean | |
- name: Prepare cmake build folders | |
run: | | |
mkdir -p client/build | |
ln -s ../cmdscripts client/build/ | |
ln -s ../luascripts client/build/ | |
ln -s ../pyscripts client/build/ | |
ln -s ../lualibs client/build/ | |
- name: Initiate cmake environment | |
run: cmake .. | |
working-directory: client/build/ | |
- name: Build cmake | |
run: make -j$((`nproc` + 1)) VERBOSE=1 | |
working-directory: client/build/ | |
- name: Test cmake | |
run: make client/check CHECKARGS="--clientbin ./client/build/proxmark3" |