Skip to content

SFML 3 migration#59623

Open
thypon wants to merge 11 commits intomasterfrom
sfml3-migration
Open

SFML 3 migration#59623
thypon wants to merge 11 commits intomasterfrom
sfml3-migration

Conversation

@thypon
Copy link
Copy Markdown
Member

@thypon thypon commented Mar 28, 2026

SFML 3 Migration - Changes Summary

This document describes the changes made in the sfml3-migration branch relative to origin/master.

Overview

The sfml3-migration branch introduces SFML 3.x support and updates all dependent packages. This involves updating the SFML and CSFML libraries from version 2.x to 3.x, updating SONAMEs in common/shlibs, and patching/adjusting all packages that depend on SFML.

Commit Summary

Commit Description
21bf9ffbe17 SFML: SFML 3.0.2 update
a8beca217a5 CSFML: CSFML 3.0.0 update
03126616594 common/shlibs: update SFML and CSFML SONAMEs for 3.x
853ccb018ee EmptyEpsilon: EmptyEpsilon update to 2024.12.08
342e75312c9 deerportal: update 0.10.0
33eaec048e0 SLADE: rebuild for SFML
a96d2fda25e vba-m: remove SFML unused dep
c1a637d4800 dolphin-emu: rebuild for SFML
bbcd232b588 Cendric: rebuild for SFML
7c61f8067b5 etr: patch for SFML
c213783047e attract: patch for SFML
53016d43f74 TSC: update to 2.2.0

Library Updates

SFML 3.0.2

  • Updated from SFML 2.6.1 to 3.0.2
  • SONAME changes: libsfml-*.so.2.6libsfml-*.so.3.0

CSFML 3.0.0

  • Updated from CSFML 2.5 to 3.0.0
  • SONAME changes: libcsfml-*.so.2.5libcsfml-*.so.3.0

SONAME Updates (common/shlibs)

All SFML and CSFML libraries were updated to reflect the 3.x SONAMEs:

SFML:

  • libsfml-network.so.2.6libsfml-network.so.3.0
  • libsfml-system.so.2.6libsfml-system.so.3.0
  • libsfml-window.so.2.6libsfml-window.so.3.0
  • libsfml-audio.so.2.6libsfml-audio.so.3.0
  • libsfml-graphics.so.2.6libsfml-graphics.so.3.0

CSFML:

  • libcsfml-audio.so.2.5libcsfml-audio.so.3.0
  • libcsfml-graphics.so.2.5libcsfml-graphics.so.3.0
  • libcsfml-window.so.2.5libcsfml-window.so.3.0
  • libcsfml-system.so.2.5libcsfml-system.so.3.0
  • libcsfml-network.so.2.5libcsfml-network.so.3.0

Package-Specific Changes

EmptyEpsilon

  • Updated to version 2024.12.08
  • Adjusted for SFML 3.x compatibility

deerportal

  • Updated from previous version to 0.10.0
  • Adjusted for SFML 3.x compatibility

SLADE

  • Revision bump for SFML 3.x compatibility

vba-m

  • Removed SFML dependency (was unused)

dolphin-emu

  • Revision bump for SFML 3.x compatibility

Cendric

  • Updated for SFML 3.x compatibility
  • Build configuration adjustments

etr

  • Added comprehensive patch (0001-Port-to-SFML-3.0.patch) to port the game to SFML 3.0
  • The patch contains 2025+ lines of changes

attract

  • Modified build patches for SFML 3.0 compatibility
  • Removed old string.patch and Makefile.patch patches
  • Minor template adjustments

TSC (The Second Coming)

  • Updated to version 2.2.0
  • Removed obsolete boost patches (boost-1.80.patch, boost-1.88.patch, no-scriptdocs-cross.patch)
  • Build configuration adjustments for SFML 3.x

Dependencies

The following packages required updates due to SFML 3.x SONAME changes:

  • EmptyEpsilon
  • deerportal
  • SLADE
  • dolphin-emu
  • Cendric
  • etr
  • attract
  • TSC
  • vba-m (dependency removed, was unused)

Migration Notes

SFML 3.0 introduced breaking API changes from 2.x. All dependent packages required some level of modification:

  • Some packages needed only a revision bump (rebuild against new SFML)
  • Others required patches to adapt to the new API
  • The etr package received a substantial 2000+ line patch for full SFML 3.0 compatibility

@thypon thypon force-pushed the sfml3-migration branch 11 times, most recently from b4d25f5 to f2d0424 Compare April 3, 2026 16:31
@thypon thypon force-pushed the sfml3-migration branch from f2d0424 to 53016d4 Compare April 7, 2026 03:22
@thypon thypon changed the title SFML3 migration SFML 3 migration Apr 7, 2026
@thypon thypon requested review from Duncaen and ahesford April 7, 2026 04:30
Copy link
Copy Markdown
Member

@ahesford ahesford left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Commit messages for SFML and CSFML should be reworded to follow the usual form
  • Changes to common/shlibs should be split by package and part of the respective first two commits
  • Is this the original source of the etr patch? If so, this file should be used as is to preserve attribution.
  • I'd probably advocate just dropping etr if it is slow to adapt to new SFML, but defer to @Hoshpak as its maintainer

@thypon
Copy link
Copy Markdown
Member Author

thypon commented Apr 7, 2026

Is this the original source of the etr patch? If so, this file should be used as is to preserve attribution.

No it's not. I found this patch https://sourceforge.net/p/extremetuxracer/discussion/general/thread/77659bcd0c/ here, but it was not working so I implemented a Ralph loop to port from scratch.

Most of the other patches are also generated by me, with a custom Ralph loop.

@thypon thypon force-pushed the sfml3-migration branch from 53016d4 to 69a1dc3 Compare April 7, 2026 22:27
@thypon thypon requested a review from ahesford April 7, 2026 22:32
@thypon
Copy link
Copy Markdown
Member Author

thypon commented Apr 7, 2026

@ahesford
Copy link
Copy Markdown
Member

ahesford commented Apr 8, 2026

It looks like your Ralph loop has stolen at least the patch description whole cloth from the source I linked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants