Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
608 commits
Select commit Hold shift + click to select a range
d1ca21f
test/checkkeys.c: fix watcom builds
sezero Sep 23, 2022
c105fe7
test/checkkeys.c: leave os/2 alone as it had been before
sezero Sep 23, 2022
7be4b3c
silenced warnings from SDL12COMPAT_MAX_VIDMODE parsing.
sezero Sep 23, 2022
8f9d2cc
restore buildability using c++ compilers
sezero Sep 23, 2022
59dd259
minor whitespace tidy-up
sezero Sep 23, 2022
f6923c5
Build SDLmain.lib for Windows with OpenWatcom
ccawley2011 Sep 24, 2022
270afba
Add makefiles for building the tests with OpenWatcom
ccawley2011 Sep 24, 2022
c17de0e
Add OpenWatcom builds to GitHub Actions
ccawley2011 Sep 24, 2022
712c522
testiconv: Print the total number of errors at the end
ccawley2011 Sep 24, 2022
cc23a07
Clamp mouse coordinates to the backbuffer size for non-OpenGL
sulix Sep 25, 2022
6ed2edf
cmake: move includes to top of CMakeLists.txt
madebr Sep 27, 2022
90c4b0f
cmake: find SDL2 using find_package
madebr Sep 27, 2022
2614379
cmake: lowercase all functions in CMakeLists.txt
madebr Sep 27, 2022
81d788e
cmake: add CMAKE_DL_LIBS using a for loop prepending each with -l
madebr Sep 27, 2022
cf8c44a
remove an extra empty line.
sezero Sep 27, 2022
cff5d80
Video driver name tweaks for windows.
sezero Sep 27, 2022
50bde9f
events: Mousewheels need to report current mouse position.
icculus Sep 28, 2022
3fac63a
SDL_config.h: Define HAVE_STRLCPY on some platforms.
icculus Sep 30, 2022
9618d03
events: Drop mouse motion if screen surface isn't available yet.
icculus Sep 30, 2022
e4cf630
Bumped version to 1.2.58 for prerelease!
icculus Oct 1, 2022
fb94bb4
Bump version to 1.2.59 for anything between prerelease and final.
icculus Oct 1, 2022
39374a3
README: Mention the ALLOW_THREADED_ quirks
smcv Oct 3, 2022
e9131f2
video: SDL_VideoModeOK shouldn't require exact dimensions.
icculus Oct 4, 2022
14465fc
audio: SDL_OpenAudio must init the subsystem if necessary.
icculus Oct 4, 2022
3c80688
audio: SDL_MixAudio has to respect app format, which we might be faking.
icculus Oct 4, 2022
a3611ab
video: Deal with dest alpha save/restore of full (NULL) dstrect.
icculus Oct 4, 2022
41030f3
debug: Debug logging now reports the sdl12-compat version ("1.2.x").
icculus Oct 4, 2022
4fc061c
video: SDL_UpdateRects must own the renderer to touch the screen text…
icculus Oct 4, 2022
eba13ef
quirks: Civ:CTP no longer needs quirks to function!
icculus Oct 5, 2022
f388224
events: Don't send SDL_VIDEOEXPOSE events during window creation.
icculus Oct 7, 2022
9ff63b7
cdrom: Fix end offset calulcation in SDL_CDPlay
sulix Oct 8, 2022
557bb05
testwm: More robust SDL12COMPAT_GetWindow() testing.
icculus Oct 10, 2022
92fe60a
testwm.c: fix MSVC build.
sezero Oct 10, 2022
63e4393
syswm: Added a quirk to disable SysWM interfaces.
icculus Oct 11, 2022
f763fc7
events: Key repeat waits the delay PLUS one interval at start.
icculus Oct 14, 2022
35488c6
Revert "video: Don't ever simulate a hardware palette."
icculus Oct 14, 2022
2a96bb3
quirks: Force X11 on Linux if certain symbols are in the process.
icculus Oct 16, 2022
0fb5c56
quirks: Fixes for symbol-based quirks to force X11
sulix Oct 17, 2022
6c7422a
quirks: Better X11 test.
icculus Oct 17, 2022
abb33cd
quirks: Better X11 test.
icculus Oct 17, 2022
df0fafd
Merge branch 'sulix-x11symquirkfix'
icculus Oct 17, 2022
c549425
video: SDL_UpperBlit should reject surfaces with NULL pixels.
icculus Oct 19, 2022
b1f9d4a
quirks: Disable GL scaling for scorched3d (and its client, scorched3dc).
icculus Oct 19, 2022
e86d024
video: If trying to create a < 8 bit surface, force it to 8 bits.
icculus Oct 19, 2022
eaeaf93
video: Add a fallback case for creating 16-bit surfaces with bogus ma…
icculus Oct 19, 2022
92d5c35
video: Add debug logging for less-than-8-bit-surface hack.
icculus Oct 19, 2022
0459dbe
video: Don't lose colorkey state on converted surfaces.
icculus Oct 20, 2022
0668c11
video: Fix apps that UpdateRect and never PumpEvents.
icculus Oct 21, 2022
67f8b3a
os2: make sure we be able to load SDL2.dll from LIBPATH
sezero Oct 22, 2022
38132e2
quirks: Force X11 if plib (specifically libplibssg) is detected
smcv Oct 24, 2022
219c358
Fix missing format string argument in low-bit-depth workaround
smcv Oct 24, 2022
61e247d
SaveDestAlpha: clamp dest rectangle correctly.
icculus Oct 24, 2022
4388700
Bumped version to 1.2.60 for release!
icculus Oct 24, 2022
883b629
Bumped version to 1.2.61 for future development towards a 1.2.62 rele…
icculus Oct 24, 2022
023e812
HOW_TO_TEST_GAMES: Added note on setgid binaries.
icculus Oct 24, 2022
77892a1
fix SDL12COMPAT_MAX_VIDMODE,
sezero Oct 25, 2022
1c6b5ba
SDL does support 1 and 4 bit surfaces, so allow these depths
slouken Nov 17, 2022
683234e
Fixed infinite loop in SDL_FreeYUVOverlay()
slouken Nov 17, 2022
616e812
quirks: Turn off OpenGL scaling for Quake 2 XP.
icculus Nov 17, 2022
76a1af1
quirks: quake2xp now uses SDL_GL_GetProcAddress, so no quirk needed!
icculus Nov 17, 2022
f58ff7c
audio: Add a quirk to mimick SDL 1.2's audio converters more closely.
icculus Nov 18, 2022
10a88ff
quirks: SDL12COMPAT_COMPATIBILITY_AUDIOCVT should default to off.
icculus Nov 18, 2022
cc5c309
audio: Fixed logic bug in compatibility resampler.
icculus Nov 18, 2022
178fe4c
quirks: Added SDL12COMPAT_COMPATIBILITY_AUDIOCVT=1 to "fillets"
icculus Nov 18, 2022
209ebae
debugging: Make note of the binary name we see.
icculus Nov 19, 2022
fe0713a
audio: fixed compatibility downsampler.
icculus Nov 19, 2022
8bc4b0e
quirks: Add SDL12COMPAT_COMPATIBILITY_AUDIOCVT=1 to "pink-pony".
icculus Nov 19, 2022
484c6a8
Copyright was never updated for 2022. Still like five weeks left!
icculus Nov 23, 2022
a3d1da6
DisplayYUVOverlay: Don't update screen surface if clean
sulix Nov 27, 2022
e8de4b5
Call PumpEvents in PresentScreen when SDL_EVENTTHREAD enabled
sulix Nov 27, 2022
137d451
minor clean-up.
sezero Nov 27, 2022
3e81339
Makefile.linux: adjust symlinks.
sezero Nov 29, 2022
2bc46a0
Fix -Wsign-compare warnings.
sezero Dec 19, 2022
b35bb7c
video: Initialze the screen surface's pixels during SDL_SetVideoMode.
icculus Jan 11, 2023
86183bf
video: Only pretend to lock the screen surface.
icculus Jan 11, 2023
f52d778
audio: Deal with non-seekable rwops in SDL_LoadWAV_RW.
icculus Jan 11, 2023
db10d6f
video: Fixed memory leak in video subsystem quit.
icculus Jan 13, 2023
5e89e86
quirks: Don't let grafx2 access an X11 server directly.
icculus Jan 13, 2023
b2f7b77
video: Don't create a new VideoRendererLock if we already have one.
icculus Jan 13, 2023
663c34b
several type / prototype fixes for SDL2 functions.
sezero Feb 3, 2023
f0b28aa
clean-up
sezero Feb 4, 2023
510bc7e
we have no business with DisableScreenSaver/EnableScreenSaver from SDL2
sezero Feb 4, 2023
52b92ee
we do not need to define SDL_BlitSurface as SDL_UpperBlit again.
sezero Feb 4, 2023
ca3ce22
SDL20_include_wrapper.h: sync with latest SDL2 headers.
sezero Feb 4, 2023
3b82447
replace all SDL_zero() with SDL20_zero()
sezero Feb 4, 2023
5537203
minor style tidy-up.
sezero Feb 4, 2023
2eae59e
restore buildability with c++ compilers.
sezero Feb 4, 2023
0adf9aa
init: eliminate lstrcpyA() and wsprintfA() dependencies on windows.
sezero Feb 8, 2023
10fa8dd
Compiling with Clang on Windows fails at version.rc
1bsyl Mar 23, 2023
b48b470
Updated copyright for 2023.
icculus Mar 28, 2023
8d355d2
minor tidy-up.
sezero Apr 1, 2023
865e832
updated cpuid code from SDL3
sezero Apr 1, 2023
016d5cb
SDL20_include_wrapper.h: undefine more macros from SDL2 headers.
sezero Apr 1, 2023
256ae33
fix SDL_assert() after previous commit.
sezero Apr 1, 2023
8662325
Leave pixels pointer valid after SDL_UnlockYUVOverlay
cg9999 Apr 7, 2023
bd3be23
surface: 1.2 colorkeys were ignored if the surface had an alpha channel.
icculus May 14, 2023
85031ff
surface: Set SDL_SRCALPHA on newly-created surfaces the same way as 1.2.
icculus May 16, 2023
82b9b50
surface: Add a quirk to disable destination alpha preservation.
icculus May 16, 2023
59e3eb9
version: Bumping to 1.2.62 for release candidate.
icculus May 18, 2023
dcb3af3
Bumped version to 1.2.63 for future development towards a 1.2.64 rele…
icculus May 18, 2023
3d54d07
COMPATIBILITY.md: Add a note for Civilization: Call to Power
sulix May 19, 2023
32a06ea
SysWW/X11: Return the X11 window as wmwindow and x11window
sulix May 19, 2023
4c22ab5
syswm: simplified x11.fswindow and x11.wmwindow assignments.
icculus May 19, 2023
2f23ad9
syswm: Fixed assignment of incorrect variable.
icculus May 19, 2023
9d4a969
revert MSVC x64 __cpuidex part of commit 865e832d -- not really needed.
sezero May 19, 2023
4eda8ab
Bumped version to 1.2.64 for release!
icculus May 26, 2023
c3256b3
Bumped version to 1.2.65 for future development towards a 1.2.66 rele…
icculus May 26, 2023
619b3d8
Check for undefined TARGET_OS_*
jmroot May 27, 2023
c1eb2fe
update SDL_platform.h from SDL2.
sezero May 27, 2023
4d88829
video: Correct SDL_SetPalette()'s return value.
icculus May 30, 2023
a291a1a
video: Correct SDL_SetPalette no-op returns
tylerlm May 30, 2023
edf615d
video: Revert SDL_SetPalette no-op return change
tylerlm May 30, 2023
4cc23ab
update SDL20_include_wrapper.h header after latest SDL2 additions.
sezero Jun 10, 2023
65641b5
SDL_config.h: Assume that all platforms have ISO C89 stddef.h
smcv Jun 26, 2023
ed188b5
include: Use `struct private_hwdata` incomplete type for API compat
smcv Jun 27, 2023
be0b7f9
SDL_config: Define HAVE_MALLOC_H on glibc-based platforms
smcv Jun 27, 2023
b000fdc
sync dr_mp3 with mainstream.
sezero Jul 5, 2023
4aa491e
set cmake maximum policy to 3.5.
sezero Jul 26, 2023
f94a1ec
update CI:
sezero Jul 26, 2023
9a3e5bc
update CI watcom workflow to pull the SDL2 branch.
sezero Aug 6, 2023
041cf9a
Add null check to SDL_LoadWAV_RW to avoid crashes
zmanuel Aug 6, 2023
9150989
Always fill *buf
zmanuel Aug 6, 2023
edc708a
Fixed implicit memcpy() in AddVidModeToList()
slouken Aug 7, 2023
e3a4f78
quirks: Trine (the 2011 version from Humble Bundle) can't use GL scal…
icculus Aug 15, 2023
fdd66e3
quirks: Add ability to force XInitThreads before main().
icculus Aug 15, 2023
119974a
Factor out Surface20to12InPlace
smcv Jul 20, 2023
3c2bde9
Factor out FreeSurfaceContents, and handle surface20 more defensively
smcv Jul 20, 2023
13efe60
Factor out enough of SDL_CreateRGBSurface to create surfaces in-place
smcv Jul 20, 2023
d86a531
Allocate video surface object statically as a global
smcv Jul 20, 2023
e64f78d
update SDL20_include_wrapper.h header after latest SDL2 additions.
sezero Aug 26, 2023
9359cfa
Quirks: Mark of the Ninja (humble bundle) needs OpenGL scaling disabled.
sulix Sep 4, 2023
0d818b0
Avoid SDL_GetMouseState(), which returns raw coordinates
sulix Sep 13, 2023
4116142
Add a hint to clamp the reported screen bit depth
sulix Sep 4, 2023
52a898d
Quirks: Hyperspace Delivery Boy should run in 16bpp mode
sulix Sep 14, 2023
2d9afcb
fix -Wsign-compare warnings.
sezero Sep 14, 2023
cd1ad69
version: Bumping to 1.2.66 for release candidate.
icculus Sep 14, 2023
f584baa
Bumped version to 1.2.67 for future development towards a 1.2.68 rele…
icculus Sep 14, 2023
35ef746
Bumped version to 1.2.68 for release!
icculus Sep 26, 2023
189f8f0
Bumped version to 1.2.69 for future development towards a 1.2.70 rele…
icculus Sep 26, 2023
bfc8f94
minor warning (C4706) fix
sezero Sep 30, 2023
995af0f
Patched to compile against older SDL2 headers.
icculus Nov 29, 2023
5bfdc5e
sync dr_mp3 with mainstream.
sezero Dec 2, 2023
744cfca
silenced -Wunused-result for readlink().
sezero Dec 22, 2023
c810b6a
cdrom: fix 'no track 1' edge case
twolife Dec 31, 2023
bc081fd
sdl.m4: Call $PKG_CONFIG rather than hard-coding pkg-config
smcv Jan 1, 2024
97e01d2
Updated copyright for 2024
slouken Jan 1, 2024
bb2f7ff
README: Document SDL12COMPAT_NO_QUIT_VIDEO
sulix Jan 21, 2024
c140618
updated SDL_endian.h and SDL_platform.h from latest SDL2
sezero Apr 23, 2024
92ecf64
quirks: Add SDL12COMPAT_COMPATIBILITY_AUDIOCVT=1 to "heroes3.dynamic".
twolife May 15, 2024
e4dff16
video: Always recreate the _window_, not just the GL context, like SD…
icculus May 22, 2024
c4ffe41
remove unnecarry assert.
sezero May 22, 2024
bec4bd0
quirks: Add SDL12COMPAT_COMPATIBILITY_AUDIOCVT=1 to "doukutsu.bin".
FoxMcCloud45 May 31, 2024
1d6dfdc
updated SDL_endian.h from latest SDL2
sezero Aug 17, 2024
6f0f603
quirks: Closure needs OpenGL scaling disabled (Fix #342)
sulix Oct 9, 2024
75ac6c6
updated SDL_platform.h from latest SDL2.
sezero Dec 14, 2024
082a986
quirks: Force Loki's Unreal Tournament build to sync to vblank.
icculus Feb 4, 2025
c36ad5d
Merged changes from sdl2-compat: don't call into the newer SDL during…
icculus Feb 6, 2025
e3527ec
fix os/2 watcom builds using ow1.9
sezero Feb 6, 2025
9f3a01c
replace CMAKE_SOURCE/BINARY_DIR with CMAKE_CURRENT_SOURC/UBINARY_DIR
Feb 7, 2025
283ecc7
SDL2Compat_strlen: hack to prevent gcc optimizing the code into strlen
sezero Feb 10, 2025
35a63c6
updated dr_mp3 from mainstream.
sezero Feb 13, 2025
fc8a53c
README.md: tell people to use SDL3 directly now, instead of SDL2.
icculus Feb 16, 2025
a152761
README.md: SDL2 versions might not be "2.0.x" anymore.
icculus Feb 16, 2025
a7d7c4c
README.md: fixed typo.
icculus Feb 16, 2025
33c743a
CI: Build for arm64 (#346)
humbertodias Feb 17, 2025
cf3e5bd
cmake: set maximum policy to 3.10
sezero Mar 4, 2025
60ba97c
video: Reflect SDL12_RESIZABLE in SDL12_Surface->flags
neuschaefer Mar 5, 2025
990ce7b
SDL_stdinc.h: Fix apparent copy/paste error
Mar 10, 2025
c6b4b03
CI: update, and run MSVC workflow for both x86 and x64.
sezero Mar 27, 2025
58a3f45
StartCDAudioPlaying(): change the local var pcm_frame into 32 bits
sezero Mar 27, 2025
f109202
Rename sdl12_compat.pc to sdl.pc
sezero Apr 1, 2025
1d3881a
Revert "Rename sdl12_compat.pc to sdl.pc"
Conan-Kudo Apr 6, 2025
edf3883
cmake: bump cmake policy level to latest CMake version
madebr Apr 9, 2025
0dca712
ci: do verbose build
madebr Apr 9, 2025
f124ed8
cmake: enable OBJC for CMake >= 3.16
madebr Apr 9, 2025
2996daa
update dr_mp3 from mainstream and adjust to its new api.
sezero Apr 27, 2025
1b6167b
Add a new quirk 'SDL12COMPAT_NO_UNLOAD', usable/needed by SC3U
twolife Jul 22, 2025
3547d7a
update to latest dr_mp3.h from mainstream
sezero Jul 23, 2025
678ad7e
Add a new quirk 'SDL12COMPAT_MAX_FPS' for SoldierOfFortune & UT99
twolife Jul 23, 2025
f14ede5
fix bad parenthesing leading to MSVC C4244 warning after commit 678ad7e
sezero Jul 24, 2025
c0f7938
update to latest dr_mp3.h from mainstream
sezero Jul 24, 2025
44b1e1f
SDL_CreateRGBSurface: Don't assert SDL_PREALLOC not set on 0-sized su…
sulix Jul 29, 2025
f8d5665
avoid unused function warnings in non-linux builds
sezero Jul 30, 2025
032c8b8
mac: replace @autoreleasepool use with NSAutoreleasePool
sezero Jul 30, 2025
3a9149a
Hint: Add SDL12COMPAT_WINDOWED_MODE_LIST hint, to make SDL_ListModes(…
sulix Jul 31, 2025
25ce0ef
api: Added SDL_SetRefreshRate().
icculus Aug 7, 2025
6a4738f
SDL12.exports: Fixed SDL_SetRefreshRate line.
icculus Aug 7, 2025
cc02011
minor clean-up and sync with latest SDL2
sezero Aug 14, 2025
7b66971
silence some unused-parameter and sign-compare warnings
sezero Sep 3, 2025
5856c41
update dr_mp3.h from mainstream.
sezero Sep 16, 2025
afabbb5
Treat DEBUG_INVOCATION=1 as equivalent to SDL12COMPAT_DEBUG_LOGGING=1
smcv Sep 30, 2025
6152f8d
Fixed style
slouken Sep 30, 2025
2c3d8fb
ci: remove macos-13 job (#369)
madebr Oct 2, 2025
fbb5886
update dr_mp3.h from mainstream.
sezero Oct 23, 2025
11e36ff
Add cmake uninstall target (thanks @ChillerDragon!)
slouken Oct 25, 2025
1bda9e4
Capslock only gets a key up event when toggled off
slouken Oct 25, 2025
192cef7
Don't repeat control keys
slouken Oct 25, 2025
dfa6cc2
Scale coordinates used in SDL_WarpMouse()
slouken Oct 26, 2025
8149d57
Input grab should persist past setting the video mode
slouken Oct 26, 2025
2d3c96b
Prevent continuous round trips to the X server when warping
slouken Oct 26, 2025
ae1a793
Improved modifier key handling
slouken Oct 26, 2025
266e189
Updated copyright for 2025
slouken Oct 26, 2025
98111f0
Update relative mouse mode after changing fullscreen state
slouken Oct 26, 2025
20ab160
Added GitHub release workflow
slouken Oct 26, 2025
456fae2
Fixed build warnings
slouken Oct 27, 2025
6595f6e
Don't include glu.h by default
slouken Oct 27, 2025
ca4b3f7
Updated release workflow (#375)
slouken Oct 27, 2025
517b522
Create an OpenGL window if the default renderer is OpenGL
slouken Oct 28, 2025
8f3c449
Fixed recreating non-OpenGL X11 windows on every mode change
slouken Oct 28, 2025
1a1944b
quirks: Jamestown doesn't work with OpenGL scaling.
icculus Oct 28, 2025
4185ef5
Fixed recreating the window during resize on Windows
slouken Oct 28, 2025
03cd2f4
Send only a single resize event at the end of window resizing on Windows
slouken Oct 28, 2025
b8f62b7
fix build using c++ compilers.
sezero Oct 28, 2025
4990881
Added support for right modifiers and menu key on Windows
slouken Oct 28, 2025
6664980
Map SDL2 SDLK_APPLICATION to SDL12 SDLK_MENU
slouken Oct 28, 2025
eee7543
Updated to version 1.2.70 for release
slouken Oct 29, 2025
9fb466e
test: Optionally install manual tests for "as-installed" testing
smcv Oct 30, 2025
8c181ec
Updated to version 1.2.71 for development
slouken Oct 30, 2025
216d766
Install sdl.m4 to target dir instead of full dir
Sackzement Oct 30, 2025
b667924
Re-try creating the window if it failed due to missing OpenGL
slouken Nov 3, 2025
57847a9
env: Deal with environment variables in the 1.2 way.
icculus Nov 4, 2025
bef8f74
Revert "Don't include glu.h by default"
slouken Nov 6, 2025
45fb7be
Allow building without glu.h by defining NO_SDL_GLU
slouken Nov 7, 2025
4f7a438
update to latest dr_mp3.h from mainstream
sezero Nov 29, 2025
9eedb89
Updated to version 1.2.72 for release
slouken Dec 2, 2025
49be0d7
Install GLU development headers for the linux-verify step
slouken Dec 2, 2025
fc2ec0c
libgl1-mesa-dev is already installed
slouken Dec 2, 2025
a26094d
Updated to version 1.2.73 for development
slouken Dec 2, 2025
2eea59a
updated dr_mp3.h from mainstream.
sezero Dec 16, 2025
9038bdc
Updated copyright for 2026
slouken Jan 1, 2026
0ea5b38
video: Don't tear everything down in SDL_SetVideoMode software surfac…
icculus Jan 8, 2026
a3e9f2b
updated dr_mp3.h from mainstream.
sezero Jan 17, 2026
424f715
silence a Watcom C++ W472 warning
sezero Jan 24, 2026
e1c4dbf
silence a Watcom C++ W687 warning
sezero Jan 24, 2026
4a9f157
Fixed crash on Windows if the video driver hint isn't set
slouken Jan 29, 2026
8cb4550
Updated to version 1.2.74 for release
slouken Feb 3, 2026
e677f47
Updated to version 1.2.75 for development
slouken Feb 4, 2026
d19329e
video: Rebuild screen surface in SDL_SetVideoMode when the window sur…
icculus Apr 1, 2026
129e548
video: SDL_SetVideoMode should always reject bogus bpp arguments.
icculus Apr 1, 2026
8f17124
win32/SDL_win32_main.c: minor warning fix
sezero Apr 2, 2026
c6e6bc6
Handle applications manually freeing surface pixels
slouken Apr 2, 2026
293b4cb
Updated to version 1.2.76 for release
slouken Apr 4, 2026
5392f04
SDL_UpperBlit: fix an oversight in commit 61e247df for issue #244.
sezero May 1, 2026
fa5f961
updated dr_mp3.h from mainstream.
sezero May 11, 2026
2c13ce7
_uitoa does not exist
sezero May 25, 2026
9a016c0
quirks: Penumbra: Overture doesn't like GL scaling.
icculus Jun 8, 2026
04ba42c
tweak SDL12COMPAT_strlen() / volatile hack to be c++-23 compatible.
sezero Jun 13, 2026
8b3be24
quirks: force SDL_VIDEODRIVER to x11 for 2 oldies from LGP
twolife Jun 23, 2026
d6360e1
dylib_locations[]: add missing trailing slash to "/Library/Frameworks"
sezero Jul 19, 2026
5a0aac8
update dr_mp3 from mainstream (Jul.15, 2026.)
sezero Jul 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions .github/actions/setup-ninja/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: 'Setup ninja'
description: 'Download ninja and add it to the PATH environment variable'
inputs:
version:
description: 'Ninja version'
default: '1.12.1'
runs:
using: 'composite'
steps:
- name: 'Calculate variables'
id: calc
shell: sh
run: |
case "${{ runner.os }}-${{ runner.arch }}" in
"Linux-X86" | "Linux-X64")
archive="ninja-linux.zip"
;;
"Linux-ARM64")
archive="ninja-linux-aarch64.zip"
;;
"macOS-X86" | "macOS-X64" | "macOS-ARM64")
archive="ninja-mac.zip"
;;
"Windows-X86" | "Windows-X64")
archive="ninja-win.zip"
;;
"Windows-ARM64")
archive="ninja-winarm64.zip"
;;
*)
echo "Unsupported ${{ runner.os }}-${{ runner.arch }}"
exit 1;
;;
esac
echo "archive=${archive}" >> ${GITHUB_OUTPUT}
echo "cache-key=${archive}-${{ inputs.version }}-${{ runner.os }}-${{ runner.arch }}" >> ${GITHUB_OUTPUT}
- name: 'Restore cached ${{ steps.calc.outputs.archive }}'
id: cache-restore
uses: actions/cache/restore@v4
with:
path: '${{ runner.temp }}/${{ steps.calc.outputs.archive }}'
key: ${{ steps.calc.outputs.cache-key }}
- name: 'Download ninja ${{ inputs.version }} for ${{ runner.os }} (${{ runner.arch }})'
if: ${{ !steps.cache-restore.outputs.cache-hit || steps.cache-restore.outputs.cache-hit == 'false' }}
shell: pwsh
run: |
Invoke-WebRequest "https://github.com/ninja-build/ninja/releases/download/v${{ inputs.version }}/${{ steps.calc.outputs.archive }}" -OutFile "${{ runner.temp }}/${{ steps.calc.outputs.archive }}"
- name: 'Cache ${{ steps.calc.outputs.archive }}'
if: ${{ !steps.cache-restore.outputs.cache-hit || steps.cache-restore.outputs.cache-hit == 'false' }}
uses: actions/cache/save@v4
with:
path: '${{ runner.temp }}/${{ steps.calc.outputs.archive }}'
key: ${{ steps.calc.outputs.cache-key }}
- name: 'Extract ninja'
shell: pwsh
run: |
7z "-o${{ runner.temp }}/ninja-${{ inputs.version }}-${{ runner.arch }}" x "${{ runner.temp }}/${{ steps.calc.outputs.archive }}"
- name: 'Set output variables'
id: final
shell: pwsh
run: |
echo "${{ runner.temp }}/ninja-${{ inputs.version }}-${{ runner.arch }}" >> $env:GITHUB_PATH
24 changes: 13 additions & 11 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,25 +9,27 @@ jobs:
strategy:
matrix:
platform:
- { name: Windows, os: windows-latest }
- { name: Linux, os: ubuntu-20.04, flags: -GNinja }
- { name: MacOS, os: macos-latest }
- { name: Windows-MSVC-x86, os: windows-latest, flags: -A Win32 }
- { name: Windows-MSVC-x64, os: windows-latest, flags: -A x64 }
- { name: Linux-x86_64, os: ubuntu-24.04, flags: -GNinja }
- { name: Linux-arm64, os: ubuntu-24.04-arm, flags: -GNinja }
- { name: MacOS-arm64, os: macos-latest }
steps:
- name: Setup Linux dependencies
if: runner.os == 'Linux'
if: startsWith(runner.os, 'Linux')
run: |
sudo apt-get update
sudo apt-get install cmake ninja-build
sudo apt update -q
sudo apt install -y cmake ninja-build libgl1-mesa-dev libglu1-mesa-dev
- name: Get sdl12-compat sources
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Get SDL2 headers
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
repository: libsdl-org/SDL
ref: release-2.0.14
path: sdl12-compat/SDL2
ref: SDL2
path: SDL2
- name: Configure CMake
run: cmake -DSDL2_INCLUDE_DIR="${{ github.workspace }}/SDL2/include" -B build ${{ matrix.platform.flags }}
- name: Build
run: cmake --build build/
run: cmake --build build/ --verbose

Loading