The Swift Package Index logo.Swift Package Index

Build Information

Successful build of mlx-swift, reference main (09051e), with Swift 6.3 for macOS (SPM) on 16 Oct 2026 07:17:07 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.5.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/drewster99/mlx-swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/drewster99/mlx-swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 09051ed Add global scale support to quantized layers (#426)
Submodule path 'Source/Cmlx/mlx': checked out 'ce45c52505c8158ea48d2a54e8caae05efd86bfe'
Submodule path 'Source/Cmlx/mlx-c': checked out '0726ca922fc902c4c61ef9c27d94132be418e945'
Submodule 'submodules/mlx' (https://github.com/ml-explore/mlx) registered for path 'Source/Cmlx/mlx'
Submodule 'submodules/mlx-c' (https://github.com/ml-explore/mlx-c) registered for path 'Source/Cmlx/mlx-c'
Cloning into '/Users/admin/builder/spi-builder-workspace/Source/Cmlx/mlx'...
Cloning into '/Users/admin/builder/spi-builder-workspace/Source/Cmlx/mlx-c'...
Cloned https://github.com/drewster99/mlx-swift.git
Revision (git rev-parse @):
09051ed1986b6f2c69b6fda4e32ca42dd7dcdec3
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/drewster99/mlx-swift.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/drewster99/mlx-swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.5.0.app xcrun swift build --arch arm64
[0/8] Write sources
[3/8] Write encuda-tool-entitlement.plist
[4/8] Write swift-version-69A768CDF2A0BEE1.txt
[6/10] Compiling ArgumentParserToolInfo ToolInfo.swift
[7/10] Emitting module ArgumentParserToolInfo
[8/58] Emitting module ArgumentParser
[9/63] Compiling ArgumentParser InputOrigin.swift
[10/63] Compiling ArgumentParser Name.swift
[11/63] Compiling ArgumentParser Parsed.swift
[12/63] Compiling ArgumentParser ParsedValues.swift
[13/63] Compiling ArgumentParser ParserError.swift
[14/63] Compiling ArgumentParser ArgumentHelp.swift
[15/63] Compiling ArgumentParser ArgumentVisibility.swift
[16/63] Compiling ArgumentParser CompletionKind.swift
[17/63] Compiling ArgumentParser Errors.swift
[18/63] Compiling ArgumentParser Flag.swift
[19/63] Compiling ArgumentParser NameSpecification.swift
[20/63] Compiling ArgumentParser Option.swift
[21/63] Compiling ArgumentParser OptionGroup.swift
[22/63] Compiling ArgumentParser ParentCommand.swift
[23/63] Compiling ArgumentParser AsyncParsableCommand.swift
[24/63] Compiling ArgumentParser CommandConfiguration.swift
[25/63] Compiling ArgumentParser SequenceExtensions.swift
[26/63] Compiling ArgumentParser StringExtensions.swift
[27/63] Compiling ArgumentParser SwiftExtensions.swift
[28/63] Compiling ArgumentParser Tree.swift
[29/63] Compiling ArgumentParser AsyncCompletionsValidator.swift
[30/63] Compiling ArgumentParser CommandGroup.swift
[31/63] Compiling ArgumentParser EnumerableFlag.swift
[32/63] Compiling ArgumentParser ExpressibleByArgument.swift
[33/63] Compiling ArgumentParser ParsableArguments.swift
[34/63] Compiling ArgumentParser ParsableCommand.swift
[35/63] Compiling ArgumentParser CodingKeyValidator.swift
[36/63] Compiling ArgumentParser NonsenseFlagsValidator.swift
[37/63] Compiling ArgumentParser ParsableArgumentsValidation.swift
[38/63] Compiling ArgumentParser PositionalArgumentsValidator.swift
[39/63] Compiling ArgumentParser UniqueNamesValidator.swift
[40/63] Compiling ArgumentParser SplitArguments.swift
[41/63] Compiling ArgumentParser DumpHelpGenerator.swift
[42/63] Compiling ArgumentParser HelpCommand.swift
[43/63] Compiling ArgumentParser HelpGenerator.swift
[44/63] Compiling ArgumentParser MessageInfo.swift
[45/63] Compiling ArgumentParser ArgumentDecoder.swift
[46/63] Compiling ArgumentParser ArgumentDefinition.swift
[47/63] Compiling ArgumentParser ArgumentSet.swift
[48/63] Compiling ArgumentParser CommandParser.swift
[49/63] Compiling ArgumentParser InputKey.swift
[50/63] Compiling ArgumentParser BashCompletionsGenerator.swift
[51/63] Compiling ArgumentParser CompletionsGenerator.swift
[52/63] Compiling ArgumentParser FishCompletionsGenerator.swift
[53/63] Compiling ArgumentParser ZshCompletionsGenerator.swift
[54/63] Compiling ArgumentParser Argument.swift
[55/63] Compiling ArgumentParser ArgumentDiscussion.swift
[56/63] Compiling ArgumentParser UsageGenerator.swift
[57/63] Compiling ArgumentParser CollectionExtensions.swift
[58/63] Compiling ArgumentParser Foundation.swift
[59/63] Compiling ArgumentParser Mutex.swift
[60/63] Compiling ArgumentParser Platform.swift
[61/69] Emitting module encuda
[62/69] Compiling encuda encuda-error.swift
[63/69] Compiling encuda encuda-compile.swift
[64/69] Compiling encuda encuda-link.swift
[65/69] Compiling encuda encuda.swift
[66/69] Compiling encuda encuda-utils.swift
[66/69] Write Objects.LinkFileList
[67/69] Linking encuda-tool
[68/69] Applying encuda-tool
[1/1] Compiling plugin CudaBuild
[2/2] Compiling plugin GenerateManual
[3/3] Compiling plugin GenerateDoccReference
Building for debugging...
[3/228] Compiling no_mpi.cpp
[3/228] Compiling distributed.cpp
[3/228] Compiling no_jaccl.cpp
[4/228] Write sources
[4/228] Write encuda-tool-entitlement.plist
[4/228] Write encuda-entitlement.plist
[4/228] Write sources
[4/228] Write Tutorial-entitlement.plist
[4/228] Write sources
[4/228] Compiling format.cc
[4/228] Write sources
[23/228] Write Example1-entitlement.plist
[23/228] Write CustomFunctionExampleSimple-entitlement.plist
[23/228] Write sources
[23/228] Write CustomFunctionExample-entitlement.plist
[23/228] Write sources
[29/228] Compiling _NumericsShims _NumericsShims.c
[29/228] Compiling version.cpp
[31/228] Write swift-version-69A768CDF2A0BEE1.txt
[32/228] Compiling Cmlx.m
[33/239] Compiling cuda.cpp
[34/239] Compiling compile.cpp
[35/239] Compiling device.cpp
[37/239] Compiling RealModule RealFunctions.swift
[38/240] Compiling RealModule RelaxedArithmetic.swift
[39/240] Compiling RealModule Float80+Real.swift
[40/240] Compiling RealModule Real.swift
[41/240] Compiling RealModule Float16+Real.swift
[42/240] Compiling RealModule ElementaryFunctions.swift
[43/240] Compiling RealModule AugmentedArithmetic.swift
[44/240] Compiling RealModule Double+Real.swift
[45/240] Compiling RealModule AlgebraicField.swift
[46/240] Compiling RealModule ApproximateEquality.swift
[47/240] Compiling RealModule Float+Real.swift
[48/240] Emitting module RealModule
[48/240] Compiling closure.cpp
[50/251] Compiling ComplexModule Polar.swift
[51/252] Compiling ComplexModule Complex+Numeric.swift
[52/252] Compiling ComplexModule Complex+StringConvertible.swift
[53/252] Compiling ComplexModule Complex+IntegerLiteral.swift
[54/252] Compiling ComplexModule Complex.swift
[55/252] Compiling ComplexModule Complex+Hashable.swift
[56/252] Compiling ComplexModule Scale.swift
[57/252] Compiling ComplexModule Complex+Codable.swift
[58/252] Compiling ComplexModule Complex+AdditiveArithmetic.swift
[59/252] Compiling ComplexModule Complex+AlgebraicField.swift
[60/252] Emitting module ComplexModule
[61/252] Compiling ComplexModule Complex+ElementaryFunctions.swift
[61/252] Compiling array.cpp
[62/252] Compiling utils.cpp
[63/254] Compiling scheduler.cpp
[65/254] Compiling Numerics Numerics.swift
[66/254] Emitting module Numerics
[66/254] Compiling random.cpp
[67/254] Compiling no_gguf.cpp
[68/254] Compiling linalg.cpp
[69/254] Compiling transforms.cpp
[70/254] Compiling graph_utils.cpp
[71/254] Compiling fft.cpp
[72/254] Compiling load.cpp
[73/254] Compiling primitives.cpp
[74/254] Compiling safetensors.cpp
[75/254] Compiling dtype.cpp
[76/254] Compiling dtype_utils.cpp
[77/254] Compiling utils.cpp
[78/254] Compiling no_ring.cpp
[79/254] Compiling einsum.cpp
[80/254] Compiling fast.cpp
[81/254] Compiling device.cpp
[82/254] Compiling no_nccl.cpp
[83/254] Compiling primitives.cpp
[84/254] Compiling ops.cpp
[86/254] Compiling utils.cpp
[87/254] Compiling unary.cpp
[88/254] Compiling compile.cpp
[89/254] Compiling ternary.cpp
[90/254] Compiling sort.cpp
[91/254] Compiling softmax.cpp
[92/254] Compiling slicing.cpp
[93/254] Compiling scan.cpp
[94/254] Compiling scaled_dot_product_attention.cpp
[95/254] Compiling resident.cpp
[96/254] Compiling rope.cpp
[97/254] Compiling reduce.cpp
[98/254] Compiling export.cpp
[99/254] Compiling primitives.cpp
[100/254] Compiling quantized.cpp
[101/254] Compiling metal.cpp
[102/254] Compiling normalization.cpp
[103/254] Compiling logsumexp.cpp
[104/254] Compiling matmul.cpp
[105/254] Compiling jit_kernels.cpp
[106/254] Compiling indexing.cpp
[107/254] Compiling fence.cpp
[108/254] Compiling event.cpp
[109/254] Compiling hadamard.cpp
[110/254] Compiling eval.cpp
[111/254] Compiling distributed.cpp
[112/254] Compiling device_info.cpp
[113/254] Compiling fft.cpp
[114/254] Compiling slicing.cpp
[115/254] Compiling copy.cpp
[116/254] Compiling primitives.cpp
[117/254] Compiling device.cpp
[118/254] Compiling threefry.cpp
[119/254] Compiling allocator.cpp
[120/254] Compiling compiled.cpp
[121/254] Compiling binary.cpp
[122/254] Compiling conv.cpp
[123/254] Compiling no_cuda.cpp
[124/254] Compiling copy.cpp
[125/254] Compiling custom_kernel.cpp
[126/254] Compiling softmax.cpp
[127/254] Compiling select.cpp
[128/254] Compiling primitives.cpp
[129/254] Compiling scan.cpp
[130/254] Compiling svd.cpp
[131/254] Compiling quantized.cpp
[132/254] Compiling qrf.cpp
[133/254] Compiling sort.cpp
[134/254] Compiling unary.cpp
[135/254] Compiling reduce.cpp
[136/254] Compiling jit_compiler.cpp
[137/254] Compiling matmul.cpp
[138/254] Compiling logsumexp.cpp
[139/254] Compiling hadamard.cpp
[140/254] Compiling masked_mm.cpp
[141/254] Compiling luf.cpp
[142/254] Compiling inverse.cpp
[143/254] Compiling cblas.cpp
[144/254] Compiling encoder.cpp
[145/254] Compiling bnns.cpp
[146/254] Compiling fft.cpp
[147/254] Compiling eval.cpp
[148/254] Compiling device_info.cpp
[149/254] Compiling distributed.cpp
[150/254] Compiling indexing.cpp
[151/254] Compiling utils.cpp
[152/254] Compiling arg_reduce.cpp
[153/254] Compiling eig.cpp
[154/254] Compiling eigh.cpp
[155/254] Compiling slicing.cpp
[156/254] Compiling reduce.cpp
[157/254] Compiling utils.cpp
[158/254] Compiling unary_ops.cpp
[159/254] Compiling unary.cpp
[160/254] Compiling ternary_ops.cpp
[161/254] Compiling ternary.cpp
[162/254] Compiling steel_gemm_splitk_nax.cpp
[163/254] Compiling cholesky.cpp
[164/254] Compiling steel_gemm_splitk.cpp
[165/254] Compiling steel_gemm_segmented.cpp
[166/254] Compiling steel_gemm_masked.cpp
[167/254] Compiling steel_gemm_gather_nax.cpp
[168/254] Compiling steel_gemm_gather.cpp
[169/254] Compiling steel_gemm_fused_nax.cpp
[170/254] Compiling steel_gemm_fused.cpp
[171/254] Compiling steel_conv_general.cpp
[172/254] Compiling steel_conv_3d.cpp
[173/254] Compiling steel_conv.cpp
[174/254] Compiling steel_attention_nax.cpp
[175/254] Compiling steel_attention.cpp
[176/254] Compiling sort.cpp
[177/254] Compiling softmax.cpp
[178/254] Compiling scatter_axis.cpp
[179/254] Compiling scatter.cpp
[180/254] Compiling scan.cpp
[181/254] Compiling reduce_utils.cpp
[182/254] Compiling reduce.cpp
[183/254] Compiling quantized_utils.cpp
[184/254] Compiling quantized_nax.cpp
[185/254] Compiling quantized.cpp
[186/254] Compiling broadcasting.cpp
[187/254] Compiling masked_scatter.cpp
[188/254] Compiling logsumexp.cpp
[189/254] Compiling load.cpp
[190/254] Compiling hadamard.cpp
[191/254] Compiling gemv_masked.cpp
[191/254] Compiling gemm_nax.cpp
[193/254] Compiling gemm.cpp
[194/254] Compiling gather_front.cpp
[195/254] Compiling conv.cpp
[196/254] Compiling gather.cpp
[196/254] Compiling fp_quantized_nax.cpp
[198/254] Compiling gather_axis.cpp
[199/254] Compiling fp_quantized.cpp
[200/254] Compiling conv.cpp
[200/254] Compiling compiled_preamble.cpp
[202/254] Compiling copy.cpp
[202/254] Compiling fft.cpp
[204/254] Compiling binary_two.cpp
[205/254] Compiling binary.cpp
[206/254] Compiling arange.cpp
[207/254] Compiling binary_ops.cpp
[208/254] Compiling compiled.cpp
[209/254] Compiling common.cpp
[210/254] Compiling array.cpp
[211/254] Compiling copy.cpp
[212/254] Compiling version.cpp
[213/254] Compiling transforms_impl.cpp
[214/254] Compiling transforms.cpp
[215/254] Compiling vector.cpp
[216/254] Compiling string.cpp
[217/254] Compiling stream.cpp
[218/254] Compiling random.cpp
[219/254] Compiling compiled_conditional.cpp
[220/254] Compiling ops.cpp
[221/254] Compiling metal.cpp
[222/254] Compiling memory.cpp
[223/254] Write sources
[227/256] Compiling io_types.cpp
[228/256] Compiling map.cpp
[229/256] Compiling linalg.cpp
[230/256] Compiling io.cpp
[231/256] Write Objects.LinkFileList
[233/256] Emitting module ArgumentParserToolInfo
[234/256] Compiling ArgumentParserToolInfo ToolInfo.swift
[234/256] Compiling error.cpp
[235/256] Compiling fft.cpp
[236/304] Compiling fast.cpp
[237/304] Linking encuda-tool
[238/304] Compiling export.cpp
[239/304] Applying encuda-tool
[241/304] Compiling ArgumentParser InputOrigin.swift
[242/304] Compiling ArgumentParser Name.swift
[243/304] Compiling ArgumentParser Parsed.swift
[244/304] Compiling ArgumentParser ParsedValues.swift
[245/304] Compiling ArgumentParser ParserError.swift
[246/309] Emitting module ArgumentParser
[247/309] Compiling ArgumentParser SequenceExtensions.swift
[248/309] Compiling ArgumentParser StringExtensions.swift
[249/309] Compiling ArgumentParser SwiftExtensions.swift
[250/309] Compiling ArgumentParser Tree.swift
[251/309] Compiling ArgumentParser AsyncCompletionsValidator.swift
[252/309] Compiling ArgumentParser CommandGroup.swift
[253/309] Compiling ArgumentParser EnumerableFlag.swift
[254/309] Compiling ArgumentParser ExpressibleByArgument.swift
[255/309] Compiling ArgumentParser ParsableArguments.swift
[256/309] Compiling ArgumentParser ParsableCommand.swift
[257/309] Compiling ArgumentParser Option.swift
[258/309] Compiling ArgumentParser OptionGroup.swift
[259/309] Compiling ArgumentParser ParentCommand.swift
[260/309] Compiling ArgumentParser AsyncParsableCommand.swift
[261/309] Compiling ArgumentParser CommandConfiguration.swift
[262/309] Compiling ArgumentParser ArgumentHelp.swift
[263/309] Compiling ArgumentParser ArgumentVisibility.swift
[264/309] Compiling ArgumentParser CompletionKind.swift
[265/309] Compiling ArgumentParser Errors.swift
[266/309] Compiling ArgumentParser Flag.swift
[267/309] Compiling ArgumentParser NameSpecification.swift
[268/309] Compiling ArgumentParser UsageGenerator.swift
[269/309] Compiling ArgumentParser CollectionExtensions.swift
[270/309] Compiling ArgumentParser Foundation.swift
[271/309] Compiling ArgumentParser Mutex.swift
[272/309] Compiling ArgumentParser Platform.swift
[273/309] Compiling ArgumentParser CodingKeyValidator.swift
[274/309] Compiling ArgumentParser NonsenseFlagsValidator.swift
[275/309] Compiling ArgumentParser ParsableArgumentsValidation.swift
[276/309] Compiling ArgumentParser PositionalArgumentsValidator.swift
[277/309] Compiling ArgumentParser UniqueNamesValidator.swift
[278/309] Compiling ArgumentParser BashCompletionsGenerator.swift
[279/309] Compiling ArgumentParser CompletionsGenerator.swift
[280/309] Compiling ArgumentParser FishCompletionsGenerator.swift
[281/309] Compiling ArgumentParser ZshCompletionsGenerator.swift
[282/309] Compiling ArgumentParser Argument.swift
[283/309] Compiling ArgumentParser ArgumentDiscussion.swift
[284/309] Compiling ArgumentParser SplitArguments.swift
[285/309] Compiling ArgumentParser DumpHelpGenerator.swift
[286/309] Compiling ArgumentParser HelpCommand.swift
[287/309] Compiling ArgumentParser HelpGenerator.swift
[288/309] Compiling ArgumentParser MessageInfo.swift
[288/309] Compiling binary.cpp
[290/309] Compiling ArgumentParser ArgumentDecoder.swift
[291/309] Compiling ArgumentParser ArgumentDefinition.swift
[292/309] Compiling ArgumentParser ArgumentSet.swift
[293/309] Compiling ArgumentParser CommandParser.swift
[294/309] Compiling ArgumentParser InputKey.swift
[295/352] Compiling encuda encuda.swift
[296/352] Compiling encuda encuda-utils.swift
[297/352] Compiling encuda encuda-error.swift
[298/352] Compiling encuda encuda-link.swift
[299/352] Emitting module encuda
[300/352] Compiling encuda encuda-compile.swift
[300/352] Write Objects.LinkFileList
[301/352] Linking encuda
[302/352] Applying encuda
[304/352] Compiling MLX Transforms+Compile.swift
[305/352] Compiling MLX Transforms+CompileOverloads.swift
[306/352] Compiling MLX Transforms+Eval.swift
[307/352] Compiling MLX Transforms+Grad.swift
[308/356] Compiling MLX ArrayAt.swift
[309/356] Compiling MLX Cmlx+Util.swift
[310/356] Compiling MLX DType.swift
[311/356] Compiling MLX Device.swift
[312/356] Compiling MLX MLXArray+Normalizer.swift
/Users/admin/builder/spi-builder-workspace/Source/MLX/MLXArray+maskFill.swift:9:19: warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
 7 |     /// `dtype`, so masked positions vanish under softmax — no `asType` to forget.
 8 |     public static func maskFill(for dtype: DType) -> MLXArray {
 9 |         guard let info = dtype.finfo else {
   |                   `- warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
10 |             fatalError("maskFill requires a floating-point dtype, got \(dtype)")
11 |         }
[313/356] Compiling MLX MLXArray+Ops.swift
/Users/admin/builder/spi-builder-workspace/Source/MLX/MLXArray+maskFill.swift:9:19: warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
 7 |     /// `dtype`, so masked positions vanish under softmax — no `asType` to forget.
 8 |     public static func maskFill(for dtype: DType) -> MLXArray {
 9 |         guard let info = dtype.finfo else {
   |                   `- warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
10 |             fatalError("maskFill requires a floating-point dtype, got \(dtype)")
11 |         }
[314/356] Compiling MLX MLXArray+maskFill.swift
/Users/admin/builder/spi-builder-workspace/Source/MLX/MLXArray+maskFill.swift:9:19: warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
 7 |     /// `dtype`, so masked positions vanish under softmax — no `asType` to forget.
 8 |     public static func maskFill(for dtype: DType) -> MLXArray {
 9 |         guard let info = dtype.finfo else {
   |                   `- warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
10 |             fatalError("maskFill requires a floating-point dtype, got \(dtype)")
11 |         }
[315/356] Compiling MLX MLXArray.swift
/Users/admin/builder/spi-builder-workspace/Source/MLX/MLXArray+maskFill.swift:9:19: warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
 7 |     /// `dtype`, so masked positions vanish under softmax — no `asType` to forget.
 8 |     public static func maskFill(for dtype: DType) -> MLXArray {
 9 |         guard let info = dtype.finfo else {
   |                   `- warning: value 'info' was defined but never used; consider replacing with boolean test [#no-usage]
10 |             fatalError("maskFill requires a floating-point dtype, got \(dtype)")
11 |         }
[316/356] Compiling MLX MLXCustomFunction.swift
[317/356] Compiling MLX MLXFast.swift
[318/356] Compiling MLX MLXFastKernel.swift
[319/356] Compiling MLX Memory.swift
[320/356] Compiling MLX Foundation+Util.swift
[321/356] Compiling MLX GPU+Metal.swift
[322/356] Compiling MLX IO.swift
[323/356] Compiling MLX Linalg.swift
[324/356] Compiling MLX ErrorHandler.swift
[325/356] Compiling MLX Export.swift
[326/356] Compiling MLX FFT.swift
[327/356] Compiling MLX Factory.swift
[328/356] Compiling MLX Nested.swift
[329/356] Compiling MLX Ops+Array.swift
[330/356] Compiling MLX Ops.swift
[331/356] Compiling MLX ParameterTypes.swift
[332/356] Emitting module MLX
[333/356] Compiling MLX Transforms+Internal.swift
[334/356] Compiling MLX Transforms+Vmap.swift
[335/356] Compiling MLX Transforms.swift
[336/356] Compiling MLX WiredMemory.swift
[337/356] Compiling MLX Protocols.swift
[338/356] Compiling MLX Random.swift
[339/356] Compiling MLX State.swift
[340/356] Compiling MLX Stream.swift
[341/356] Compiling MLX MLXArray+Bytes.swift
[342/356] Compiling MLX MLXArray+Indexing.swift
[343/356] Compiling MLX MLXArray+Init.swift
[344/356] Compiling MLX MLXArray+Metal.swift
[345/391] Emitting module MLXFast
[346/391] Compiling MLXFast MLXFastKernel.swift
[347/391] Compiling MLXFast MLXFast.swift
[348/391] Compiling MLXLinalg Linalg.swift
[349/391] Emitting module MLXLinalg
[350/391] Compiling MLXFFT FFT.swift
[351/391] Emitting module MLXFFT
[352/391] Compiling CustomFunctionExample CustomFunctionExample.swift
[353/391] Emitting module CustomFunctionExample
[353/391] Write Objects.LinkFileList
[355/391] Compiling CustomFunctionExampleSimple CustomFunctionExampleSimple.swift
[356/391] Emitting module CustomFunctionExampleSimple
[356/391] Write Objects.LinkFileList
[358/391] Emitting module Example1
[359/391] Compiling Example1 Example1.swift
[360/391] Compiling MLXRandom Random.swift
[361/391] Emitting module MLXRandom
[361/391] Write Objects.LinkFileList
[363/391] Emitting module Tutorial
[364/391] Compiling Tutorial Tutorial.swift
[364/391] Write Objects.LinkFileList
[366/391] Compiling MLXNN Containers.swift
[367/391] Compiling MLXNN Convolution.swift
[368/391] Compiling MLXNN ConvolutionTransposed.swift
[369/391] Compiling MLXNN Dropout.swift
[370/392] Compiling MLXNN Normalization.swift
[371/392] Compiling MLXNN Pooling.swift
[372/392] Compiling MLXNN ValueAndGrad.swift
[373/392] Compiling MLXNN Embedding.swift
[374/392] Compiling MLXNN Linear.swift
[375/392] Compiling MLXNN Activations.swift
[376/392] Compiling MLXNN Cache.swift
[377/392] Emitting module MLXNN
[378/392] Compiling MLXNN Recurrent.swift
[379/392] Compiling MLXNN Transformer.swift
[380/392] Compiling MLXNN PositionalEncoding.swift
[381/392] Compiling MLXNN Quantized.swift
[382/392] Compiling MLXNN Losses.swift
/Users/admin/builder/spi-builder-workspace/Source/MLXNN/Module.swift:1411:34: warning: conditional downcast from 'T?' to 'T' does nothing
1409 |             // note: this gives a warning but it does in fact do something
1410 |             // in the case where this is e.g. ParameterInfo<MLXArray?>
1411 |             if let value = value as? T {
     |                                  `- warning: conditional downcast from 'T?' to 'T' does nothing
1412 |                 return value
1413 |             } else {
/Users/admin/builder/spi-builder-workspace/Source/MLXNN/Module.swift:1524:36: warning: conditional downcast from 'T?' to 'T' does nothing
1522 |             // note: this gives a warning but it does in fact do something
1523 |             // in the case where this is e.g. ModuleInfo<Linear?>
1524 |             if let module = module as? T {
     |                                    `- warning: conditional downcast from 'T?' to 'T' does nothing
1525 |                 return module
1526 |             } else {
/Users/admin/builder/spi-builder-workspace/Source/MLXNN/Module.swift:293:13: warning: default will never be executed
 291 |                 return isAllNone ? .none : .array(result)
 292 |
 293 |             default:
     |             `- warning: default will never be executed
 294 |                 fatalError("Unexpected leaf \(vk) = \(v)")
 295 |             }
[383/392] Compiling MLXNN Module.swift
/Users/admin/builder/spi-builder-workspace/Source/MLXNN/Module.swift:1411:34: warning: conditional downcast from 'T?' to 'T' does nothing
1409 |             // note: this gives a warning but it does in fact do something
1410 |             // in the case where this is e.g. ParameterInfo<MLXArray?>
1411 |             if let value = value as? T {
     |                                  `- warning: conditional downcast from 'T?' to 'T' does nothing
1412 |                 return value
1413 |             } else {
/Users/admin/builder/spi-builder-workspace/Source/MLXNN/Module.swift:1524:36: warning: conditional downcast from 'T?' to 'T' does nothing
1522 |             // note: this gives a warning but it does in fact do something
1523 |             // in the case where this is e.g. ModuleInfo<Linear?>
1524 |             if let module = module as? T {
     |                                    `- warning: conditional downcast from 'T?' to 'T' does nothing
1525 |                 return module
1526 |             } else {
/Users/admin/builder/spi-builder-workspace/Source/MLXNN/Module.swift:293:13: warning: default will never be executed
 291 |                 return isAllNone ? .none : .array(result)
 292 |
 293 |             default:
     |             `- warning: default will never be executed
 294 |                 fatalError("Unexpected leaf \(vk) = \(v)")
 295 |             }
[384/392] Compiling MLXNN Upsample.swift
[385/395] Compiling MLXOptimizers Optimizers.swift
[386/395] Emitting module MLXOptimizers
[387/395] Compiling MLXOptimizers Schedulers.swift
[387/395] Linking CustomFunctionExample
[388/395] Linking Example1
[389/395] Linking CustomFunctionExampleSimple
[390/395] Applying CustomFunctionExample
[391/395] Linking Tutorial
[392/395] Applying Example1
[393/395] Applying CustomFunctionExampleSimple
[394/395] Applying Tutorial
Build complete! (52.15s)
Fetching https://github.com/apple/swift-numerics
Fetching https://github.com/apple/swift-argument-parser
[1/6756] Fetching swift-numerics
[1218/25870] Fetching swift-numerics, swift-argument-parser
Fetched https://github.com/apple/swift-numerics from cache (2.39s)
Fetched https://github.com/apple/swift-argument-parser from cache (2.39s)
Computing version for https://github.com/apple/swift-numerics
Computed https://github.com/apple/swift-numerics at 1.1.1 (2.95s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (0.58s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/apple/swift-numerics
Working copy of https://github.com/apple/swift-numerics resolved at 1.1.1
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Source/Examples/Example1.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/CustomFunctionExample.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/CustomFunctionExampleSimple.swift
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Source/Examples/CustomFunctionExample.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/CustomFunctionExampleSimple.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/Tutorial.swift
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Source/Examples/Example1.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/CustomFunctionExample.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/Tutorial.swift
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Source/Examples/Example1.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/CustomFunctionExampleSimple.swift
    /Users/admin/builder/spi-builder-workspace/Source/Examples/Tutorial.swift
Build complete.
{
  "cxx_language_standard" : "gnu++20",
  "dependencies" : [
    {
      "identity" : "swift-numerics",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-numerics"
    },
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser"
    }
  ],
  "manifest_display_name" : "mlx-swift",
  "name" : "mlx-swift",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    },
    {
      "name" : "ios",
      "version" : "17.0"
    },
    {
      "name" : "tvos",
      "version" : "17.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "MLX",
      "targets" : [
        "MLX"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXRandom",
      "targets" : [
        "MLXRandom"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXNN",
      "targets" : [
        "MLXNN"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXOptimizers",
      "targets" : [
        "MLXOptimizers"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXFFT",
      "targets" : [
        "MLXFFT"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXLinalg",
      "targets" : [
        "MLXLinalg"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXFast",
      "targets" : [
        "MLXFast"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "encuda",
      "targets" : [
        "encuda"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "Tutorial",
      "targets" : [
        "Tutorial"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "Example1",
      "targets" : [
        "Example1"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "CustomFunctionExampleSimple",
      "targets" : [
        "CustomFunctionExampleSimple"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "CustomFunctionExample",
      "targets" : [
        "CustomFunctionExample"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "encuda",
      "module_type" : "SwiftTarget",
      "name" : "encuda",
      "path" : "Source/Encuda",
      "product_dependencies" : [
        "ArgumentParser"
      ],
      "product_memberships" : [
        "MLX",
        "MLXRandom",
        "MLXNN",
        "MLXOptimizers",
        "MLXFFT",
        "MLXLinalg",
        "MLXFast",
        "encuda",
        "Tutorial",
        "Example1",
        "CustomFunctionExampleSimple",
        "CustomFunctionExample"
      ],
      "sources" : [
        "encuda-compile.swift",
        "encuda-error.swift",
        "encuda-link.swift",
        "encuda-utils.swift",
        "encuda.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "Tutorial",
      "module_type" : "SwiftTarget",
      "name" : "Tutorial",
      "path" : "Source/Examples",
      "product_memberships" : [
        "Tutorial"
      ],
      "sources" : [
        "Tutorial.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "MLXTests",
      "module_type" : "SwiftTarget",
      "name" : "MLXTests",
      "path" : "Tests/MLXTests",
      "sources" : [
        "ArrayAtTests.swift",
        "DTypeTests.swift",
        "ErrorTests.swift",
        "ExportTests.swift",
        "FP8Tests.swift",
        "IntegrationTests.swift",
        "LinalgTests.swift",
        "LossTests.swift",
        "MLXArray+IndexingTests.swift",
        "MLXArray+InitTests.swift",
        "MLXArray+NormlizerTests.swift",
        "MLXArray+OpsTests.swift",
        "MLXArrayTests.swift",
        "MLXFastKernelTests.swift",
        "MLXRandomTests.swift",
        "MemoryTests.swift",
        "ModuleTests.swift",
        "NestedTests.swift",
        "OpsTests.swift",
        "OptimizerTests.swift",
        "PoolingTests.swift",
        "QuantizationTests.swift",
        "SaveTests.swift",
        "SchedulerTests.swift",
        "StreamTests.swift",
        "SubclassTests.swift",
        "TransformTests.swift",
        "UpsampleTests.swift",
        "Utils.swift",
        "WiredMemoryTests.swift"
      ],
      "target_dependencies" : [
        "MLX",
        "MLXNN",
        "MLXOptimizers"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MLXRandom",
      "module_type" : "SwiftTarget",
      "name" : "MLXRandom",
      "path" : "Source/MLXRandom",
      "product_memberships" : [
        "MLXRandom"
      ],
      "sources" : [
        "Random.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXOptimizers",
      "module_type" : "SwiftTarget",
      "name" : "MLXOptimizers",
      "path" : "Source/MLXOptimizers",
      "product_memberships" : [
        "MLXOptimizers"
      ],
      "sources" : [
        "Optimizers.swift",
        "Schedulers.swift"
      ],
      "target_dependencies" : [
        "MLX",
        "MLXNN"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXNN",
      "module_type" : "SwiftTarget",
      "name" : "MLXNN",
      "path" : "Source/MLXNN",
      "product_memberships" : [
        "MLXNN",
        "MLXOptimizers"
      ],
      "sources" : [
        "Activations.swift",
        "Cache.swift",
        "Containers.swift",
        "Convolution.swift",
        "ConvolutionTransposed.swift",
        "Dropout.swift",
        "Embedding.swift",
        "Linear.swift",
        "Losses.swift",
        "Module.swift",
        "Normalization.swift",
        "Pooling.swift",
        "PositionalEncoding.swift",
        "Quantized.swift",
        "Recurrent.swift",
        "Transformer.swift",
        "Upsample.swift",
        "ValueAndGrad.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXLinalg",
      "module_type" : "SwiftTarget",
      "name" : "MLXLinalg",
      "path" : "Source/MLXLinalg",
      "product_memberships" : [
        "MLXLinalg"
      ],
      "sources" : [
        "Linalg.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXFast",
      "module_type" : "SwiftTarget",
      "name" : "MLXFast",
      "path" : "Source/MLXFast",
      "product_memberships" : [
        "MLXFast"
      ],
      "sources" : [
        "MLXFast.swift",
        "MLXFastKernel.swift"
      ],
      "target_dependencies" : [
        "MLX",
        "Cmlx"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXFFT",
      "module_type" : "SwiftTarget",
      "name" : "MLXFFT",
      "path" : "Source/MLXFFT",
      "product_memberships" : [
        "MLXFFT"
      ],
      "sources" : [
        "FFT.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLX",
      "module_type" : "SwiftTarget",
      "name" : "MLX",
      "path" : "Source/MLX",
      "product_dependencies" : [
        "Numerics"
      ],
      "product_memberships" : [
        "MLX",
        "MLXRandom",
        "MLXNN",
        "MLXOptimizers",
        "MLXFFT",
        "MLXLinalg",
        "MLXFast",
        "Tutorial",
        "Example1",
        "CustomFunctionExampleSimple",
        "CustomFunctionExample"
      ],
      "sources" : [
        "ArrayAt.swift",
        "Cmlx+Util.swift",
        "DType.swift",
        "Device.swift",
        "ErrorHandler.swift",
        "Export.swift",
        "FFT.swift",
        "Factory.swift",
        "Foundation+Util.swift",
        "GPU+Metal.swift",
        "IO.swift",
        "Linalg.swift",
        "MLXArray+Bytes.swift",
        "MLXArray+Indexing.swift",
        "MLXArray+Init.swift",
        "MLXArray+Metal.swift",
        "MLXArray+Normalizer.swift",
        "MLXArray+Ops.swift",
        "MLXArray+maskFill.swift",
        "MLXArray.swift",
        "MLXCustomFunction.swift",
        "MLXFast.swift",
        "MLXFastKernel.swift",
        "Memory.swift",
        "Nested.swift",
        "Ops+Array.swift",
        "Ops.swift",
        "ParameterTypes.swift",
        "Protocols.swift",
        "Random.swift",
        "State.swift",
        "Stream.swift",
        "Transforms+Compile.swift",
        "Transforms+CompileOverloads.swift",
        "Transforms+Eval.swift",
        "Transforms+Grad.swift",
        "Transforms+Internal.swift",
        "Transforms+Vmap.swift",
        "Transforms.swift",
        "WiredMemory.swift"
      ],
      "target_dependencies" : [
        "Cmlx"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Example1",
      "module_type" : "SwiftTarget",
      "name" : "Example1",
      "path" : "Source/Examples",
      "product_memberships" : [
        "Example1"
      ],
      "sources" : [
        "Example1.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "CustomFunctionExampleSimple",
      "module_type" : "SwiftTarget",
      "name" : "CustomFunctionExampleSimple",
      "path" : "Source/Examples",
      "product_memberships" : [
        "CustomFunctionExampleSimple"
      ],
      "sources" : [
        "CustomFunctionExampleSimple.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "CustomFunctionExample",
      "module_type" : "SwiftTarget",
      "name" : "CustomFunctionExample",
      "path" : "Source/Examples",
      "product_memberships" : [
        "CustomFunctionExample"
      ],
      "sources" : [
        "CustomFunctionExample.swift"
      ],
      "target_dependencies" : [
        "MLX"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "CudaBuild",
      "module_type" : "PluginTarget",
      "name" : "CudaBuild",
      "path" : "Plugins/CudaBuild",
      "plugin_capability" : {
        "type" : "buildTool"
      },
      "product_memberships" : [
        "MLX",
        "MLXRandom",
        "MLXNN",
        "MLXOptimizers",
        "MLXFFT",
        "MLXLinalg",
        "MLXFast",
        "Tutorial",
        "Example1",
        "CustomFunctionExampleSimple",
        "CustomFunctionExample"
      ],
      "sources" : [
        "plugin.swift"
      ],
      "target_dependencies" : [
        "encuda"
      ],
      "type" : "plugin"
    },
    {
      "c99name" : "CmlxTests",
      "module_type" : "SwiftTarget",
      "name" : "CmlxTests",
      "path" : "Tests/CmlxTests",
      "sources" : [
        "CmlxTests.swift"
      ],
      "target_dependencies" : [
        "Cmlx"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Cmlx",
      "module_type" : "ClangTarget",
      "name" : "Cmlx",
      "path" : "Source/Cmlx",
      "product_memberships" : [
        "MLX",
        "MLXRandom",
        "MLXNN",
        "MLXOptimizers",
        "MLXFFT",
        "MLXLinalg",
        "MLXFast",
        "Tutorial",
        "Example1",
        "CustomFunctionExampleSimple",
        "CustomFunctionExample"
      ],
      "sources" : [
        "fmt/src/format.cc",
        "framework/Cmlx.m",
        "mlx-c/mlx/c/array.cpp",
        "mlx-c/mlx/c/closure.cpp",
        "mlx-c/mlx/c/compile.cpp",
        "mlx-c/mlx/c/cuda.cpp",
        "mlx-c/mlx/c/device.cpp",
        "mlx-c/mlx/c/error.cpp",
        "mlx-c/mlx/c/export.cpp",
        "mlx-c/mlx/c/fast.cpp",
        "mlx-c/mlx/c/fft.cpp",
        "mlx-c/mlx/c/io.cpp",
        "mlx-c/mlx/c/io_types.cpp",
        "mlx-c/mlx/c/linalg.cpp",
        "mlx-c/mlx/c/map.cpp",
        "mlx-c/mlx/c/memory.cpp",
        "mlx-c/mlx/c/metal.cpp",
        "mlx-c/mlx/c/ops.cpp",
        "mlx-c/mlx/c/random.cpp",
        "mlx-c/mlx/c/stream.cpp",
        "mlx-c/mlx/c/string.cpp",
        "mlx-c/mlx/c/transforms.cpp",
        "mlx-c/mlx/c/transforms_impl.cpp",
        "mlx-c/mlx/c/vector.cpp",
        "mlx-c/mlx/c/version.cpp",
        "mlx-conditional/compiled_conditional.cpp",
        "mlx-generated/arange.cpp",
        "mlx-generated/binary.cpp",
        "mlx-generated/binary_ops.cpp",
        "mlx-generated/binary_two.cpp",
        "mlx-generated/compiled_preamble.cpp",
        "mlx-generated/conv.cpp",
        "mlx-generated/copy.cpp",
        "mlx-generated/fft.cpp",
        "mlx-generated/fp_quantized.cpp",
        "mlx-generated/fp_quantized_nax.cpp",
        "mlx-generated/gather.cpp",
        "mlx-generated/gather_axis.cpp",
        "mlx-generated/gather_front.cpp",
        "mlx-generated/gemm.cpp",
        "mlx-generated/gemm_nax.cpp",
        "mlx-generated/gemv_masked.cpp",
        "mlx-generated/hadamard.cpp",
        "mlx-generated/logsumexp.cpp",
        "mlx-generated/masked_scatter.cpp",
        "mlx-generated/quantized.cpp",
        "mlx-generated/quantized_nax.cpp",
        "mlx-generated/quantized_utils.cpp",
        "mlx-generated/reduce.cpp",
        "mlx-generated/reduce_utils.cpp",
        "mlx-generated/scan.cpp",
        "mlx-generated/scatter.cpp",
        "mlx-generated/scatter_axis.cpp",
        "mlx-generated/softmax.cpp",
        "mlx-generated/sort.cpp",
        "mlx-generated/steel_attention.cpp",
        "mlx-generated/steel_attention_nax.cpp",
        "mlx-generated/steel_conv.cpp",
        "mlx-generated/steel_conv_3d.cpp",
        "mlx-generated/steel_conv_general.cpp",
        "mlx-generated/steel_gemm_fused.cpp",
        "mlx-generated/steel_gemm_fused_nax.cpp",
        "mlx-generated/steel_gemm_gather.cpp",
        "mlx-generated/steel_gemm_gather_nax.cpp",
        "mlx-generated/steel_gemm_masked.cpp",
        "mlx-generated/steel_gemm_segmented.cpp",
        "mlx-generated/steel_gemm_splitk.cpp",
        "mlx-generated/steel_gemm_splitk_nax.cpp",
        "mlx-generated/ternary.cpp",
        "mlx-generated/ternary_ops.cpp",
        "mlx-generated/unary.cpp",
        "mlx-generated/unary_ops.cpp",
        "mlx-generated/utils.cpp",
        "mlx/mlx/array.cpp",
        "mlx/mlx/backend/common/broadcasting.cpp",
        "mlx/mlx/backend/common/common.cpp",
        "mlx/mlx/backend/common/compiled.cpp",
        "mlx/mlx/backend/common/load.cpp",
        "mlx/mlx/backend/common/reduce.cpp",
        "mlx/mlx/backend/common/slicing.cpp",
        "mlx/mlx/backend/common/utils.cpp",
        "mlx/mlx/backend/cpu/arg_reduce.cpp",
        "mlx/mlx/backend/cpu/binary.cpp",
        "mlx/mlx/backend/cpu/cholesky.cpp",
        "mlx/mlx/backend/cpu/conv.cpp",
        "mlx/mlx/backend/cpu/copy.cpp",
        "mlx/mlx/backend/cpu/device_info.cpp",
        "mlx/mlx/backend/cpu/distributed.cpp",
        "mlx/mlx/backend/cpu/eig.cpp",
        "mlx/mlx/backend/cpu/eigh.cpp",
        "mlx/mlx/backend/cpu/encoder.cpp",
        "mlx/mlx/backend/cpu/eval.cpp",
        "mlx/mlx/backend/cpu/fft.cpp",
        "mlx/mlx/backend/cpu/gemms/bnns.cpp",
        "mlx/mlx/backend/cpu/gemms/cblas.cpp",
        "mlx/mlx/backend/cpu/hadamard.cpp",
        "mlx/mlx/backend/cpu/indexing.cpp",
        "mlx/mlx/backend/cpu/inverse.cpp",
        "mlx/mlx/backend/cpu/jit_compiler.cpp",
        "mlx/mlx/backend/cpu/logsumexp.cpp",
        "mlx/mlx/backend/cpu/luf.cpp",
        "mlx/mlx/backend/cpu/masked_mm.cpp",
        "mlx/mlx/backend/cpu/matmul.cpp",
        "mlx/mlx/backend/cpu/primitives.cpp",
        "mlx/mlx/backend/cpu/qrf.cpp",
        "mlx/mlx/backend/cpu/quantized.cpp",
        "mlx/mlx/backend/cpu/reduce.cpp",
        "mlx/mlx/backend/cpu/scan.cpp",
        "mlx/mlx/backend/cpu/select.cpp",
        "mlx/mlx/backend/cpu/softmax.cpp",
        "mlx/mlx/backend/cpu/sort.cpp",
        "mlx/mlx/backend/cpu/svd.cpp",
        "mlx/mlx/backend/cpu/threefry.cpp",
        "mlx/mlx/backend/cpu/unary.cpp",
        "mlx/mlx/backend/cuda/no_cuda.cpp",
        "mlx/mlx/backend/gpu/copy.cpp",
        "mlx/mlx/backend/gpu/primitives.cpp",
        "mlx/mlx/backend/gpu/slicing.cpp",
        "mlx/mlx/backend/metal/allocator.cpp",
        "mlx/mlx/backend/metal/binary.cpp",
        "mlx/mlx/backend/metal/compiled.cpp",
        "mlx/mlx/backend/metal/conv.cpp",
        "mlx/mlx/backend/metal/copy.cpp",
        "mlx/mlx/backend/metal/custom_kernel.cpp",
        "mlx/mlx/backend/metal/device.cpp",
        "mlx/mlx/backend/metal/device_info.cpp",
        "mlx/mlx/backend/metal/distributed.cpp",
        "mlx/mlx/backend/metal/eval.cpp",
        "mlx/mlx/backend/metal/event.cpp",
        "mlx/mlx/backend/metal/fence.cpp",
        "mlx/mlx/backend/metal/fft.cpp",
        "mlx/mlx/backend/metal/hadamard.cpp",
        "mlx/mlx/backend/metal/indexing.cpp",
        "mlx/mlx/backend/metal/jit_kernels.cpp",
        "mlx/mlx/backend/metal/logsumexp.cpp",
        "mlx/mlx/backend/metal/matmul.cpp",
        "mlx/mlx/backend/metal/metal.cpp",
        "mlx/mlx/backend/metal/normalization.cpp",
        "mlx/mlx/backend/metal/primitives.cpp",
        "mlx/mlx/backend/metal/quantized.cpp",
        "mlx/mlx/backend/metal/reduce.cpp",
        "mlx/mlx/backend/metal/resident.cpp",
        "mlx/mlx/backend/metal/rope.cpp",
        "mlx/mlx/backend/metal/scaled_dot_product_attention.cpp",
        "mlx/mlx/backend/metal/scan.cpp",
        "mlx/mlx/backend/metal/slicing.cpp",
        "mlx/mlx/backend/metal/softmax.cpp",
        "mlx/mlx/backend/metal/sort.cpp",
        "mlx/mlx/backend/metal/ternary.cpp",
        "mlx/mlx/backend/metal/unary.cpp",
        "mlx/mlx/backend/metal/utils.cpp",
        "mlx/mlx/compile.cpp",
        "mlx/mlx/device.cpp",
        "mlx/mlx/distributed/distributed.cpp",
        "mlx/mlx/distributed/jaccl/no_jaccl.cpp",
        "mlx/mlx/distributed/mpi/no_mpi.cpp",
        "mlx/mlx/distributed/nccl/no_nccl.cpp",
        "mlx/mlx/distributed/ops.cpp",
        "mlx/mlx/distributed/primitives.cpp",
        "mlx/mlx/distributed/ring/no_ring.cpp",
        "mlx/mlx/distributed/utils.cpp",
        "mlx/mlx/dtype.cpp",
        "mlx/mlx/dtype_utils.cpp",
        "mlx/mlx/einsum.cpp",
        "mlx/mlx/export.cpp",
        "mlx/mlx/fast.cpp",
        "mlx/mlx/fft.cpp",
        "mlx/mlx/graph_utils.cpp",
        "mlx/mlx/io/load.cpp",
        "mlx/mlx/io/no_gguf.cpp",
        "mlx/mlx/io/safetensors.cpp",
        "mlx/mlx/linalg.cpp",
        "mlx/mlx/ops.cpp",
        "mlx/mlx/primitives.cpp",
        "mlx/mlx/random.cpp",
        "mlx/mlx/scheduler.cpp",
        "mlx/mlx/transforms.cpp",
        "mlx/mlx/utils.cpp",
        "mlx/mlx/version.cpp"
      ],
      "target_dependencies" : [
        "CudaBuild"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.3"
}
Done.