Add dev.py
implementing dev command shorthands
#1409
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
# Tests that pygame can compile on MSYS2 | |
name: MSYS2 | |
# Run CI only on changes to main branch, or any PR to main. Do not run CI on | |
# any other branch. Also, skip any non-source changes from running on CI | |
on: | |
push: | |
branches: main | |
paths-ignore: | |
- 'docs/**' | |
- 'examples/**' | |
- '.gitignore' | |
- '*.rst' | |
- '*.md' | |
- '.github/workflows/*.yml' | |
# re-include current file to not be excluded | |
- '!.github/workflows/build-on-msys2.yml' | |
pull_request: | |
branches: main | |
paths-ignore: | |
- 'docs/**' | |
- 'examples/**' | |
- '.gitignore' | |
- '*.rst' | |
- '*.md' | |
- '.github/workflows/*.yml' | |
# re-include current file to not be excluded | |
- '!.github/workflows/build-on-msys2.yml' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }}-msys2 | |
cancel-in-progress: true | |
jobs: | |
msys2: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: msys2 {0} | |
strategy: | |
matrix: | |
include: | |
- { sys: mingw64, env: x86_64 } | |
- { sys: ucrt64, env: ucrt-x86_64 } | |
- { sys: clang64, env: clang-x86_64 } | |
# - { sys: clangarm64, env: clang-aarch64 } | |
steps: | |
- uses: actions/[email protected] | |
- uses: msys2/setup-msys2@v2 | |
with: | |
msystem: ${{ matrix.sys }} | |
update: true | |
install: >- | |
mingw-w64-${{ matrix.env }}-gcc | |
mingw-w64-${{ matrix.env }}-pkg-config | |
mingw-w64-${{ matrix.env }}-python | |
mingw-w64-${{ matrix.env }}-python-pip | |
mingw-w64-${{ matrix.env }}-python-sphinx | |
mingw-w64-${{ matrix.env }}-meson-python | |
mingw-w64-${{ matrix.env }}-cython | |
# mingw-w64-${{ matrix.env }}-SDL2 | |
# mingw-w64-${{ matrix.env }}-SDL2_image | |
# mingw-w64-${{ matrix.env }}-SDL2_mixer | |
# mingw-w64-${{ matrix.env }}-SDL2_ttf | |
# mingw-w64-${{ matrix.env }}-freetype | |
# mingw-w64-${{ matrix.env }}-portmidi | |
# pip does not know that ninja is installed, and tries to install it again. | |
# so pass --ignore-dep ninja explicitly | |
- name: Build and install pygame wheel | |
run: python3 dev.py --ignore-dep ninja build --wheel /artifacts --lax | |
- name: Run tests | |
env: | |
SDL_VIDEODRIVER: "dummy" | |
SDL_AUDIODRIVER: "disk" | |
run: python3 -m pygame.tests -v --exclude opengl,music,timing --time_out 300 |