diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/recastnavigation')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/recastnavigation/default.nix | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/recastnavigation/default.nix b/nixpkgs/pkgs/development/libraries/recastnavigation/default.nix new file mode 100644 index 000000000000..8e0fe7947f44 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/recastnavigation/default.nix @@ -0,0 +1,43 @@ +{ stdenv, lib, fetchFromGitHub, cmake, libGL, SDL2, libGLU, catch }: + +stdenv.mkDerivation rec { + pname = "recastai"; + # use latest revision for the CMake build process and OpenMW + # OpenMW use e75adf86f91eb3082220085e42dda62679f9a3ea + version = "unstable-2023-01-02"; + + src = fetchFromGitHub { + owner = "recastnavigation"; + repo = "recastnavigation"; + rev = "405cc095ab3a2df976a298421974a2af83843baf"; + sha256 = "sha256-WVzDI7+UuAl10Tm1Zjkea/FMk0cIe7pWg0iyFLbwAdI="; + }; + + postPatch = '' + cp ${catch}/include/catch/catch.hpp Tests/catch.hpp + + # https://github.com/recastnavigation/recastnavigation/issues/524 + substituteInPlace CMakeLists.txt \ + --replace '\$'{exec_prefix}/'$'{CMAKE_INSTALL_LIBDIR} '$'{CMAKE_INSTALL_FULL_LIBDIR} \ + --replace '\$'{prefix}/'$'{CMAKE_INSTALL_INCLUDEDIR} '$'{CMAKE_INSTALL_FULL_INCLUDEDIR} + '' + lib.optionalString stdenv.hostPlatform.isDarwin '' + # Expects SDL2.framework in specific location, which we don't have + # Change where SDL2 headers are searched for to match what we do have + substituteInPlace RecastDemo/CMakeLists.txt \ + --replace 'include_directories(''${SDL2_LIBRARY}/Headers)' 'include_directories(${SDL2.dev}/include/SDL2)' + ''; + + doCheck = true; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ libGL SDL2 libGLU ]; + + meta = with lib; { + homepage = "https://github.com/recastnavigation/recastnavigation"; + description = "Navigation-mesh Toolset for Games"; + license = licenses.zlib; + maintainers = with maintainers; [ marius851000 ]; + platforms = platforms.all; + }; +} |