Skip to content

Commit

Permalink
koboldcpp: refactor darwin sdks
Browse files Browse the repository at this point in the history
  • Loading branch information
DontEatOreo committed Oct 16, 2024
1 parent acae8fa commit 91df882
Showing 1 changed file with 20 additions and 17 deletions.
37 changes: 20 additions & 17 deletions pkgs/by-name/ko/koboldcpp/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
addDriverRunpath,

darwin,
overrideSDK,

koboldLiteSupport ? true,

Expand Down Expand Up @@ -40,13 +41,15 @@ let
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ addDriverRunpath.driverLink ]}"
'';

darwinFrameworks =
if (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) then
darwin.apple_sdk.frameworks
else
darwin.apple_sdk_11_0.frameworks;
stdenv' = if stdenv.hostPlatform.isDarwin then
overrideSDK stdenv {
darwinMinVersion = "10.15";
darwinSdkVersion = "12.3";
}
else
stdenv;

effectiveStdenv = if cublasSupport then cudaPackages.backendStdenv else stdenv;
effectiveStdenv = if cublasSupport then cudaPackages.backendStdenv else stdenv';
in
effectiveStdenv.mkDerivation (finalAttrs: {
pname = "koboldcpp";
Expand All @@ -72,15 +75,15 @@ effectiveStdenv.mkDerivation (finalAttrs: {
[ tk ]
++ finalAttrs.pythonInputs
++ lib.optionals effectiveStdenv.hostPlatform.isDarwin [
darwinFrameworks.Accelerate
darwinFrameworks.CoreVideo
darwinFrameworks.CoreGraphics
darwinFrameworks.CoreServices
darwin.apple_sdk.frameworks.Accelerate
darwin.apple_sdk.frameworks.CoreVideo
darwin.apple_sdk.frameworks.CoreGraphics
darwin.apple_sdk.frameworks.CoreServices
]
++ lib.optionals metalSupport [
darwinFrameworks.MetalKit
darwinFrameworks.Foundation
darwinFrameworks.MetalPerformanceShaders
darwin.apple_sdk.frameworks.MetalKit
darwin.apple_sdk.frameworks.Foundation
darwin.apple_sdk.frameworks.MetalPerformanceShaders
]
++ lib.optionals openblasSupport [ openblas ]
++ lib.optionals cublasSupport [
Expand All @@ -98,14 +101,14 @@ effectiveStdenv.mkDerivation (finalAttrs: {
pythonPath = finalAttrs.pythonInputs;

darwinLdFlags = lib.optionals stdenv.hostPlatform.isDarwin [
"-F${darwinFrameworks.CoreServices}/Library/Frameworks"
"-F${darwinFrameworks.Accelerate}/Library/Frameworks"
"-F${darwin.apple_sdk.frameworks.CoreServices}/Library/Frameworks"
"-F${darwin.apple_sdk.frameworks.Accelerate}/Library/Frameworks"
"-framework CoreServices"
"-framework Accelerate"
];
metalLdFlags = lib.optionals metalSupport [
"-F${darwinFrameworks.Foundation}/Library/Frameworks"
"-F${darwinFrameworks.Metal}/Library/Frameworks"
"-F${darwin.apple_sdk.frameworks.Foundation}/Library/Frameworks"
"-F${darwin.apple_sdk.frameworks.Metal}/Library/Frameworks"
"-framework Foundation"
"-framework Metal"
];
Expand Down

0 comments on commit 91df882

Please sign in to comment.