proxmark3/.github/workflows/windows.yml

180 lines
4.6 KiB
YAML
Raw Normal View History

2021-02-27 10:43:24 +08:00
name: Windows Build and Test
on:
push:
paths-ignore:
- 'doc/**'
- 'docker/**'
- 'traces/**'
- '.vscode/**'
pull_request:
paths-ignore:
- 'doc/**'
- 'docker/**'
- 'traces/**'
- '.vscode/**'
2021-02-27 10:43:24 +08:00
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
2021-02-27 10:43:24 +08:00
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: |
2021-04-09 22:59:11 +08:00
$psversion = (Select-String -Pattern 'PSVERSION=' -SimpleMatch -Path "C:\ProxSpace\setup\09-proxspace_setup.post").Line.Split("""")[1]
2021-02-27 10:43:24 +08:00
Write-Host "ProxSpace version: $psversion"
- name: ProxSpace initial startup
working-directory: C:\ProxSpace
run: ./runme64.bat -c "exit"
2024-02-20 18:11:18 +08:00
- uses: actions/checkout@v4
2021-02-27 10:43:24 +08:00
- name: make clean
run: make clean
- name: Build
2023-10-14 17:46:23 +08:00
run: make -j $([System.Environment]::ProcessorCount + 1) V=1
2021-02-27 10:43:24 +08:00
- name: Test
run: make check
- name: make clean
run: make clean
- name: Build btaddon
2023-10-14 17:46:23 +08:00
run: make -j $([System.Environment]::ProcessorCount + 1) V=1 PLATFORM_EXTRAS=BTADDON
2021-02-27 10:43:24 +08:00
- name: Test btaddon
run: make check
- name: make clean
run: make clean
- name: Prepare cmake build folders
2021-10-12 06:31:08 +08:00
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/
2021-02-27 10:43:24 +08:00
- name: Initiate cmake environment
run: cmake -G"MSYS Makefiles" ..
working-directory: client/build/
- name: Build cmake
2023-10-14 17:46:23 +08:00
run: make -j $([System.Environment]::ProcessorCount + 1) VERBOSE=1
2021-02-27 10:43:24 +08:00
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
2021-02-27 10:43:24 +08:00
with:
2023-02-24 03:36:27 +08:00
distribution: Ubuntu-22.04
2021-02-27 10:43:24 +08:00
update: "true"
additional-packages: git
ca-certificates
build-essential
pkg-config
libreadline-dev
gcc-arm-none-eabi
libnewlib-dev
libbz2-dev
2023-07-16 05:15:25 +08:00
liblz4-dev
2021-02-27 10:43:24 +08:00
qtbase5-dev
cmake
libpython3-dev
python3
python3-pip
python3-dev
libpython3-all-dev
libssl-dev
2024-01-07 07:59:48 +08:00
libgd-dev
2021-02-27 10:43:24 +08:00
- 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
2024-02-20 18:11:18 +08:00
- uses: actions/checkout@v4
2021-02-27 10:43:24 +08:00
- name: make clean
run: make clean
- name: Build
2023-10-14 17:46:23 +08:00
run: make -j$((`nproc` + 1)) V=1
2021-02-27 10:43:24 +08:00
- name: Test
run: make check
- name: make clean
run: make clean
- name: Build btaddon
2023-10-14 17:46:23 +08:00
run: make -j$((`nproc` + 1)) V=1 PLATFORM_EXTRAS=BTADDON
2021-02-27 10:43:24 +08:00
- name: Test btaddon
run: make check
- name: make clean
run: make clean
- name: Prepare cmake build folders
2021-10-12 06:31:08 +08:00
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/
2021-02-27 10:43:24 +08:00
- name: Initiate cmake environment
run: cmake ..
working-directory: client/build/
- name: Build cmake
2023-10-14 17:46:23 +08:00
run: make -j$((`nproc` + 1)) VERBOSE=1
2021-02-27 10:43:24 +08:00
working-directory: client/build/
- name: Test cmake
run: make client/check CHECKARGS="--clientbin ./client/build/proxmark3"