From 71b0d9ef4d161818da14f890d4d688206b203153 Mon Sep 17 00:00:00 2001 From: Colin Date: Mon, 28 Jul 2025 19:11:43 +0000 Subject: [PATCH] allegro5: support building with SDL stock allegro5 does not support Wayland. the experimental SDL backend is one way to enable native Wayland support for allegro applications. see: - - --- pkgs/development/libraries/allegro/5.nix | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/allegro/5.nix b/pkgs/development/libraries/allegro/5.nix index 237974c38609..119d777459dd 100644 --- a/pkgs/development/libraries/allegro/5.nix +++ b/pkgs/development/libraries/allegro/5.nix @@ -35,8 +35,13 @@ texinfo, xorgproto, zlib, + # https://github.com/liballeg/allegro5/blob/master/README_sdl.txt + useSDL ? false, + sdl2-compat ? null, }: +assert useSDL -> sdl2-compat != null; + stdenv.mkDerivation rec { pname = "allegro"; version = "5.2.10.1"; @@ -89,6 +94,9 @@ stdenv.mkDerivation rec { libXxf86misc libXxf86vm xorgproto + ] + ++ lib.optionals useSDL [ + sdl2-compat ]; postPatch = '' @@ -97,7 +105,12 @@ stdenv.mkDerivation rec { sed -e 's@OpenAL/@AL/@g' -i addons/audio/openal.c ''; - cmakeFlags = [ "-DCMAKE_SKIP_RPATH=ON" ]; + cmakeFlags = [ + "-DCMAKE_SKIP_RPATH=ON" + ] + ++ lib.optionals useSDL [ + "ALLEGRO_SDL=ON" + ]; outputs = [ "out"