@@ -184,38 +184,38 @@ jobs:
184184
185185 echo "::warning::mlx.metallib missing from native artifact; attempting to source from installed mlx package"
186186 python - <<'PY'
187- import pathlib
188- import shutil
189- import sys
190-
191- try :
192- import mlx # type: ignore
193- except ImportError :
194- print("::error::The 'mlx' Python package is not installed; cannot locate mlx.metallib.")
195- sys.exit(1)
196-
197- kernels_dir = pathlib.Path(mlx.__file__).resolve().parent / "backend" / "metal" / "kernels"
198- if not kernels_dir.exists() :
199- print(f"::error::Could not find MLX metal kernels directory at {kernels_dir}")
200- sys.exit(1)
201-
202- preferred = kernels_dir / "mlx.metallib"
203- if preferred.exists() :
204- src = preferred
205- else :
206- candidates = sorted(kernels_dir.glob("*.metallib"))
207- if not candidates :
208- print(f"::error::No metallib files were found under {kernels_dir}")
209- sys.exit(1)
210- src = candidates[0]
211- print(f"::warning::Defaulting to metallib file {src.name}")
212-
213- dest = pathlib.Path("artifacts/native/osx-arm64/mlx.metallib").resolve()
214- dest.parent.mkdir(parents=True, exist_ok=True)
215-
216- shutil.copy2(src, dest)
217- print(f"Copied mlx.metallib from {src} to {dest}")
218- PY
187+ import pathlib
188+ import shutil
189+ import sys
190+
191+ try:
192+ import mlx # type: ignore
193+ except ImportError:
194+ print("::error::The 'mlx' Python package is not installed; cannot locate mlx.metallib.")
195+ sys.exit(1)
196+
197+ kernels_dir = pathlib.Path(mlx.__file__).resolve().parent / "backend" / "metal" / "kernels"
198+ if not kernels_dir.exists():
199+ print(f"::error::Could not find MLX metal kernels directory at {kernels_dir}")
200+ sys.exit(1)
201+
202+ preferred = kernels_dir / "mlx.metallib"
203+ if preferred.exists():
204+ src = preferred
205+ else:
206+ candidates = sorted(kernels_dir.glob("*.metallib"))
207+ if not candidates:
208+ print(f"::error::No metallib files were found under {kernels_dir}")
209+ sys.exit(1)
210+ src = candidates[0]
211+ print(f"::warning::Defaulting to metallib file {src.name}")
212+
213+ dest = pathlib.Path("artifacts/native/osx-arm64/mlx.metallib").resolve()
214+ dest.parent.mkdir(parents=True, exist_ok=True)
215+
216+ shutil.copy2(src, dest)
217+ print(f"Copied mlx.metallib from {src} to {dest}")
218+ PY
219219
220220 - name : Stage native libraries in project
221221 run : |
0 commit comments