lol
fork

Configure Feed

Select the types of activity you want to include in your feed.

sdl2-compat: add setup hook and minor fixes (#388079)

authored by

K900 and committed by
GitHub
b52f6f7f 18d5a03c

+48 -10
+31
pkgs/by-name/sd/sdl2-compat/find-headers.patch
··· 1 + diff --git a/SDL2Config.cmake.in b/SDL2Config.cmake.in 2 + index 80c1b99..54f50e6 100644 3 + --- a/SDL2Config.cmake.in 4 + +++ b/SDL2Config.cmake.in 5 + @@ -45,7 +45,8 @@ endif() 6 + set(SDL2_PREFIX "@PACKAGE_CMAKE_INSTALL_PREFIX@") 7 + set(SDL2_EXEC_PREFIX "@PACKAGE_CMAKE_INSTALL_PREFIX@") 8 + set(SDL2_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@/SDL2") 9 + -set(SDL2_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@;@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@/SDL2") 10 + +set(SDL2_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@;@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@/SDL2" $ENV{SDL2_PATH}) 11 + +separate_arguments(SDL2_INCLUDE_DIRS) 12 + set(SDL2_BINDIR "@PACKAGE_CMAKE_INSTALL_FULL_BINDIR@") 13 + set(SDL2_LIBDIR "@PACKAGE_CMAKE_INSTALL_FULL_LIBDIR@") 14 + set(SDL2_LIBRARIES SDL2::SDL2) 15 + diff --git a/sdl2-config.in b/sdl2-config.in 16 + index d21b1b2..bb0d624 100644 17 + --- a/sdl2-config.in 18 + +++ b/sdl2-config.in 19 + @@ -50,7 +50,11 @@ while test $# -gt 0; do 20 + echo @PROJECT_VERSION@ 21 + ;; 22 + --cflags) 23 + - echo -I${includedir}/SDL2 @SDL_CFLAGS@ 24 + + SDL_CFLAGS="" 25 + + for i in @includedir@/SDL2 $SDL2_PATH; do 26 + + SDL_CFLAGS="$SDL_CFLAGS -I$i" 27 + + done 28 + + echo $SDL_CFLAGS @SDL_CFLAGS@ 29 + ;; 30 + @ENABLE_SHARED_TRUE@ --libs) 31 + @ENABLE_SHARED_TRUE@ echo -L${libdir} @SDL_RLD_FLAGS@ @SDL_LIBS@
+10 -10
pkgs/by-name/sd/sdl2-compat/package.nix
··· 44 44 45 45 outputBin = "dev"; 46 46 47 + # SDL3 is dlopened at runtime, leave it in runpath 48 + dontPatchELF = true; 49 + 47 50 cmakeFlags = [ 48 51 (lib.cmakeBool "SDL2COMPAT_TESTS" finalAttrs.finalPackage.doCheck) 52 + (lib.cmakeFeature "CMAKE_INSTALL_RPATH" (lib.makeLibraryPath [ sdl3 ])) 49 53 ]; 50 54 55 + # skip timing-based tests as those are flaky 56 + env.SDL_TESTS_QUICK = 1; 57 + 51 58 doCheck = testSupport && stdenv.buildPlatform.canExecute stdenv.hostPlatform; 52 59 53 - postFixup = 54 - if stdenv.hostPlatform.isDarwin then 55 - '' 56 - install_name_tool -add_rpath ${lib.makeLibraryPath [ sdl3 ]} $out/lib/libSDL2.dylib 57 - '' 58 - else 59 - '' 60 - patchelf --add-rpath ${lib.makeLibraryPath [ sdl3 ]} $out/lib/libSDL2.so 61 - ''; 60 + patches = [ ./find-headers.patch ]; 61 + setupHook = ./setup-hook.sh; 62 62 63 63 passthru = { 64 64 tests = ··· 92 92 changelog = "https://github.com/libsdl-org/sdl2-compat/releases/tag/${finalAttrs.src.tag}"; 93 93 license = lib.licenses.zlib; 94 94 maintainers = with lib.maintainers; [ nadiaholmquist ]; 95 - platforms = lib.platforms.unix; 95 + platforms = lib.platforms.all; 96 96 pkgConfigModules = [ "sdl2_compat" ]; 97 97 }; 98 98 })
+7
pkgs/by-name/sd/sdl2-compat/setup-hook.sh
··· 1 + addSDL2Path () { 2 + if [ -e "$1/include/SDL2" ]; then 3 + export SDL2_PATH="${SDL2_PATH-}${SDL2_PATH:+ }$1/include/SDL2" 4 + fi 5 + } 6 + 7 + addEnvHooks "$hostOffset" addSDL2Path