From e75df8cd4eeda63ea9b9c9407727c3e9cf7af748 Mon Sep 17 00:00:00 2001 From: Lilly Date: Wed, 29 Mar 2023 12:53:39 +0100 Subject: [PATCH] meshoptimizer: init at unstable-2023-03-22 Co-Authored-By: Daniel Nagy <692274+nagy@users.noreply.github.com> --- .../libraries/meshoptimizer/default.nix | 38 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/development/libraries/meshoptimizer/default.nix diff --git a/pkgs/development/libraries/meshoptimizer/default.nix b/pkgs/development/libraries/meshoptimizer/default.nix new file mode 100644 index 00000000000..cfa273aa151 --- /dev/null +++ b/pkgs/development/libraries/meshoptimizer/default.nix @@ -0,0 +1,38 @@ +{ lib, stdenv, fetchFromGitHub, cmake }: + +let + basis_universal = fetchFromGitHub { + owner = "zeux"; + repo = "basis_universal"; + rev = "8903f6d69849fd782b72a551a4dd04a264434e20"; + hash = "sha256-o3dCxAAkpMoNkvkM7qD75cPn/obDc/fJ8u7KLPm1G6g="; + }; +in stdenv.mkDerivation { + pname = "meshoptimizer"; + version = "unstable-2023-03-22"; + src = fetchFromGitHub { + owner = "zeux"; + repo = "meshoptimizer"; + hash = "sha256-OWeptdnKFvTyfkz0sFCpiTI7323GfVE8vb8bNUBnslA="; + rev = "49d9222385daf61a9ce75bb4699472408eb3df3e"; + }; + + nativeBuildInputs = [ cmake ]; + + outputs = [ "bin" "dev" "out" ]; + + cmakeFlags = [ + "-DMESHOPT_BUILD_GLTFPACK=ON" + "-DMESHOPT_BASISU_PATH=${basis_universal}" + ] ++ lib.optional (!stdenv.hostPlatform.isStatic) + "-DMESHOPT_BUILD_SHARED_LIBS:BOOL=ON"; + + meta = with lib; { + description = "Mesh optimization library that makes meshes smaller and faster to render"; + homepage = "https://github.com/zeux/meshoptimizer"; + license = licenses.mit; + maintainers = [ maintainers.lillycham ]; + platforms = platforms.all; + mainProgram = "gltfpack"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1581b6ec63b..19d9bc7991e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22478,6 +22478,8 @@ with pkgs; mergerfs-tools = callPackage ../tools/filesystems/mergerfs/tools.nix { }; + meshoptimizer = callPackage ../development/libraries/meshoptimizer { }; + mctc-lib = callPackage ../development/libraries/science/chemistry/mctc-lib { }; mstore = callPackage ../development/libraries/science/chemistry/mstore { };