Skip to content

rotozoomer wip

rotozoomer wip #55

name: Build-Tools
on: [push, pull_request]
jobs:
Build-Tools-Windows:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
include: [
{ sys: mingw64, arch: x86_64, build: tools},
{ sys: mingw32, arch: i686, build: tools}
]
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: ${{matrix.sys}}
install: >-
base-devel
mingw-w64-${{ matrix.arch }}-toolchain
unzip
update: true
- uses: actions/checkout@v4
with:
fetch-depth: 1 # Using a shallow checkout. Change to `0` if a full fetch is required.
- name: Download and extract latest toolchain
shell: msys2 {0}
run: |
curl -Lo gcc-toolchain-mips64-win64.zip https://github.com/DragonMinded/libdragon/releases/download/toolchain-continuous-prerelease/gcc-toolchain-mips64-win64.zip
unzip gcc-toolchain-mips64-win64.zip -d gcc-toolchain-mips64
rm -f gcc-toolchain-mips64-win64.zip
- name: Correct MSYS2 pthread.h to allow static libraries (otherwise you would need to use a lib DLL, rather than it being built into the EXE.)
shell: msys2 {0}
run: |
sed -z 's/#else\n#define WINPTHREAD_API __declspec(dllimport)/#else\n#define WINPTHREAD_API/' /${{matrix.sys}}/include/pthread.h
- name: Build ${{ matrix.build }}
shell: msys2 {0}
run: |
N64_INST=$(pwd)/gcc-toolchain-mips64 make ${{ matrix.build }}
- name: "Upload ${{ matrix.build }} executables"
uses: actions/upload-artifact@v3
with:
name: windows-${{ matrix.arch }}-${{ matrix.build }}
path: ${{ github.workspace }}/**/tools/**/*.exe