[Buildroot] [PATCH 0/8] package/sdl3*: complete the SDL3 family

Alsey Coleman Miller <[email protected]>
Newsgroups net.busybox.buildroot
Message-ID <[email protected]>
Buildroot has sdl3, sdl3_gfx, sdl3_image and sdl3_ttf. This adds the two
satellite libraries that are missing, fills in options the existing
packages do not offer, and moves SDL3_image off a prerelease.

Patches 1 and 2 add plutovg and plutosvg. plutosvg is a small SVG
renderer built on plutovg, and it is what patch 6 uses: colour emoji
fonts store their glyphs as SVG, which SDL3_ttf renders through the
FreeType OpenType-SVG hooks. Both are useful on their own.

Patch 3 gives sdl3 an ALSA option. There is none today, so whether the
ALSA audio driver is built is decided by what SDL's own detection finds
in the sysroot rather than by the configuration. It also makes D-Bus
follow BR2_PACKAGE_DBUS instead of being off unconditionally - that
costs screensaver inhibition and the D-Bus parts of the Wayland backend
- adds an option for the test programs, and names the audio backends
that were left unset. SDL probes for OSS, JACK, sndio and PipeWire and
builds against whatever it finds, so an unlisted backend makes the
result depend on which unrelated packages happen to be enabled.

Patch 4 moves sdl3_image from 3.1.1, a prerelease, to 3.4.4, and builds
the AVIF, JPEG, TIFF, WEBP and JXL backends according to the image
libraries already in the configuration rather than PNG alone. The option
names changed in 3.4: PNG is SDLIMAGE_PNG_LIBPNG, and
SDLIMAGE_BACKEND_STB selects the built-in decoder used when no helper
library is available.

Patch 5 stops sdl3_ttf building samples that are never installed and
installing man pages that Buildroot deletes again.

Patches 7 and 8 add sdl3_mixer and sdl3_net, the last two SDL3 satellite
libraries without a package. Both are built with CMake, like sdl3
itself, rather than with the autotools setup their SDL2 counterparts
use. sdl3_mixer plays several formats with no dependency at all and
picks up the better decoders - flac, mpg123, opusfile, wavpack,
fluidsynth, libxmp, game-music-emu - when those are already enabled.

check-package is clean over all seven packages. Checked on x86_64/glibc
with alsa-lib, dbus, harfbuzz, jpeg, libpng, tiff and webp enabled, and
again with plutosvg, sdl3_mixer and sdl3_net turned on: the resulting
*_CONF_OPTS and dependency lists are as intended, and BR2_PACKAGE_PLUTOSVG
selects plutovg and turns on SDLTTF_PLUTOSVG. A full build of the series
on that configuration is still running as I send this.

Alsey Coleman Miller (8):
  package/plutovg: new package
  package/plutosvg: new package
  package/sdl3: add ALSA and test program options, follow dbus
  package/sdl3_image: bump to version 3.4.4
  package/sdl3_ttf: do not build the samples or install man pages
  package/sdl3_ttf: build plutosvg support when available
  package/sdl3_mixer: new package
  package/sdl3_net: new package

 DEVELOPERS                         |   4 ++
 package/Config.in                  |   4 ++
 package/plutosvg/Config.in         |  10 +++
 package/plutosvg/plutosvg.hash     |   3 +
 package/plutosvg/plutosvg.mk       |  18 +++++
 package/plutovg/Config.in          |   7 ++
 package/plutovg/plutovg.hash       |   3 +
 package/plutovg/plutovg.mk         |  16 +++++
 package/sdl3/Config.in             |  15 +++++
 package/sdl3/sdl3.mk               |  38 ++++++++++-
 package/sdl3_image/Config.in       |  10 ++-
 package/sdl3_image/sdl3_image.hash |   4 +-
 package/sdl3_image/sdl3_image.mk   |  62 +++++++++++++++--
 package/sdl3_mixer/Config.in       |  17 +++++
 package/sdl3_mixer/sdl3_mixer.hash |   3 +
 package/sdl3_mixer/sdl3_mixer.mk   | 103 +++++++++++++++++++++++++++++
 package/sdl3_net/Config.in         |   9 +++
 package/sdl3_net/sdl3_net.hash     |   3 +
 package/sdl3_net/sdl3_net.mk       |  21 ++++++
 package/sdl3_ttf/sdl3_ttf.mk       |  16 ++++-
 20 files changed, 356 insertions(+), 10 deletions(-)
 create mode 100644 package/plutosvg/Config.in
 create mode 100644 package/plutosvg/plutosvg.hash
 create mode 100644 package/plutosvg/plutosvg.mk
 create mode 100644 package/plutovg/Config.in
 create mode 100644 package/plutovg/plutovg.hash
 create mode 100644 package/plutovg/plutovg.mk
 create mode 100644 package/sdl3_mixer/Config.in
 create mode 100644 package/sdl3_mixer/sdl3_mixer.hash
 create mode 100644 package/sdl3_mixer/sdl3_mixer.mk
 create mode 100644 package/sdl3_net/Config.in
 create mode 100644 package/sdl3_net/sdl3_net.hash
 create mode 100644 package/sdl3_net/sdl3_net.mk

-- 
2.47.3

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.