SDL2: Reinstate find-headers.patch

main
OPNA2608 2 years ago committed by Peter Hoeg
parent 3df8e35539
commit ad3e121795
  1. 8
      pkgs/development/libraries/SDL2/default.nix
  2. 34
      pkgs/development/libraries/SDL2/find-headers.patch

@ -65,6 +65,14 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
outputBin = "dev"; # sdl-config
patches = [
# `sdl2-config --cflags` from Nixpkgs returns include path to just SDL2.
# On a normal distro this is enough for includes from all SDL2* packages to work,
# but on NixOS they're spread across different paths.
# This patch + the setup-hook will ensure that `sdl2-config --cflags` works correctly.
./find-headers.patch
];
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [ pkg-config ] ++ optionals waylandSupport [ wayland ];

@ -0,0 +1,34 @@
diff --git a/sdl2-config.cmake.in b/sdl2-config.cmake.in
index c570511fa..ca694f595 100644
--- a/sdl2-config.cmake.in
+++ b/sdl2-config.cmake.in
@@ -7,7 +7,8 @@ set(includedir "@includedir@")
set(SDL2_PREFIX "${prefix}")
set(SDL2_EXEC_PREFIX "${exec_prefix}")
set(SDL2_LIBDIR "${libdir}")
-set(SDL2_INCLUDE_DIRS "${includedir}/SDL2")
+set(SDL2_INCLUDE_DIRS "${includedir}/SDL2" $ENV{SDL2_PATH})
+separate_arguments(SDL2_INCLUDE_DIRS)
set(SDL2_LIBRARIES "-L${SDL2_LIBDIR} @SDL_RLD_FLAGS@ @SDL_LIBS@")
string(STRIP "${SDL2_LIBRARIES}" SDL2_LIBRARIES)
diff --git a/sdl2-config.in b/sdl2-config.in
index 5a2aed292..7c55f0a28 100644
--- a/sdl2-config.in
+++ b/sdl2-config.in
@@ -42,7 +42,11 @@ while test $# -gt 0; do
echo @SDL_VERSION@
;;
--cflags)
- echo -I@includedir@/SDL2 @SDL_CFLAGS@
+ SDL_CFLAGS=""
+ for i in @includedir@/SDL2 $SDL2_PATH; do
+ SDL_CFLAGS="$SDL_CFLAGS -I$i"
+ done
+ echo $SDL_CFLAGS @SDL_CFLAGS@
;;
@ENABLE_SHARED_TRUE@ --libs)
@ENABLE_SHARED_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
--
2.33.1
Loading…
Cancel
Save