vimPlugins.codediff-nvim: fix library build on Darwin

Upstream falls back to `brew --prefix libomp` on macOS when
`find_package(OpenMP)` fails, which does not work in the Nix sandbox.

Patch the CMake fallback to use `llvmPackages.openmp` instead.

No extra `libomp.dylib` symlink is needed on Darwin, since the built
library already references `libomp.dylib` from the Nix store.
This commit is contained in:
Maroun Deeb
2026-04-08 23:49:00 +02:00
parent fde3925eb7
commit 69203d07d9
@@ -7,6 +7,7 @@
vimPlugins,
autoPatchelfHook,
stdenv,
llvmPackages,
}:
vimUtils.buildVimPlugin rec {
pname = "codediff.nvim";
@@ -22,8 +23,16 @@ vimUtils.buildVimPlugin rec {
dependencies = [ vimPlugins.nui-nvim ];
nativeBuildInputs = [ cmake ] ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ stdenv.cc.cc.lib ];
buildInputs =
lib.optionals stdenv.hostPlatform.isLinux [ stdenv.cc.cc.lib ]
++ lib.optionals stdenv.hostPlatform.isDarwin [ llvmPackages.openmp ];
dontUseCmakeConfigure = true;
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace libvscode-diff/CMakeLists.txt \
--replace-fail 'COMMAND brew --prefix libomp' 'COMMAND echo ${llvmPackages.openmp}'
'';
buildPhase = ''
runHook preBuild
make