42
42
strategy :
43
43
fail-fast : false # if a particular matrix build fails, don't skip the rest
44
44
matrix :
45
- os : [ubuntu-24.04, windows-latest, macos-14 ]
45
+ os : [ubuntu-24.04, windows-latest, macos-15 ]
46
46
47
47
env :
48
48
# Pip now forces us to either make a venv or set this flag, so we will do
@@ -54,25 +54,24 @@ jobs:
54
54
steps :
55
55
56
56
57
- - name : Install pygame deps (linux)
57
+ - name : Fix apt issues (linux)
58
58
if : matrix.os == 'ubuntu-24.04'
59
- run : |
60
- sudo apt-get update --fix-missing
61
- sudo apt-get install libfreetype6-dev libportmidi-dev python3-dev
59
+ run : sudo apt-get update --fix-missing
62
60
63
- - name : Install pygame deps (mac)
64
- if : matrix.os == 'macos-14 '
65
- run : brew install freetype portmidi
61
+ - name : Install pygame & SDL deps (mac)
62
+ if : matrix.os == 'macos-15 '
63
+ run : brew install freetype harfbuzz portmidi libtiff webp
66
64
67
- # taken from dependencies of the 'libsdl2-dev' package
68
- - name : Install SDL deps (linux)
65
+ - name : Install pygame & SDL deps (linux)
69
66
if : matrix.os == 'ubuntu-24.04'
70
67
run : >
71
68
sudo apt-get install libasound2-dev libdbus-1-dev libdecor-0-dev libdrm-dev
72
69
libegl-dev libgbm-dev libgl-dev libgles-dev libibus-1.0-dev libpulse-dev
73
70
libsamplerate0-dev libsndio-dev libudev-dev libwayland-dev libx11-dev
74
71
libxcursor-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev
75
72
libxkbcommon-dev libxrandr-dev libxss-dev libxt-dev libxv-dev libxxf86vm-dev
73
+ libfreetype-dev libharfbuzz-dev libportmidi-dev libtiff-dev libwebp-dev
74
+ python3-dev
76
75
77
76
# taken from https://wiki.libsdl.org/SDL3/Installation
78
77
- name : Install SDL3
93
92
cd SDL_image
94
93
mkdir build
95
94
cd build
96
- cmake -DCMAKE_BUILD_TYPE=Release ..
95
+ cmake -DCMAKE_BUILD_TYPE=Release -DSDLIMAGE_VENDORED=0 \
96
+ -DSDLIMAGE_BACKEND_STB=1 -DSDLIMAGE_BACKEND_IMAGEIO=0 \
97
+ -DSDLIMAGE_AVIF=0 -DSDLIMAGE_JXL=0 -DSDLIMAGE_TIF=1 -DSDLIMAGE_WEBP=1 ..
97
98
cmake --build . --config Release --parallel
98
99
sudo cmake --install . --config Release
99
100
@@ -104,20 +105,15 @@ jobs:
104
105
cd SDL_ttf
105
106
mkdir build
106
107
cd build
107
- cmake -DCMAKE_BUILD_TYPE=Release ..
108
+ cmake -DCMAKE_BUILD_TYPE=Release -DSDLTTF_VENDORED=0 -DSDLTTF_HARFBUZZ=1 ..
108
109
cmake --build . --config Release --parallel
109
110
sudo cmake --install . --config Release
110
111
111
112
- name : Build with SDL3
112
113
run : python3 dev.py build --sdl3
113
114
114
- # eventually we need to run all tests, but for now test that importing pygame
115
- # works
116
- - name : Test import works
117
- run : python3 -c 'import pygame'
118
-
119
- # - name: Run tests
120
- # env:
121
- # SDL_VIDEODRIVER: "dummy"
122
- # SDL_AUDIODRIVER: "disk"
123
- # run: python3 -m pygame.tests -v --exclude opengl,music,timing --time_out 300
115
+ - name : Run tests
116
+ env :
117
+ SDL_VIDEODRIVER : " dummy"
118
+ SDL_AUDIODRIVER : " disk"
119
+ run : python3 -m pygame.tests -v --exclude opengl,music,timing --time_out 300
0 commit comments