-
Notifications
You must be signed in to change notification settings - Fork 255
Description
Feature Request
I'm trying to use the metal-cpp library provided by Apple to integrate my C++ codebase with the metal API.
It doesn't look like there are any wrapfiles for that library.
Possible Issues
One of the issues I foresee is that Apple has a weird way of versioning their library. Namely, it appears they release this library on an OS-compatibility basis (attached screenshot from the page):
Strange. I was wondering what the best way to package this up would be. I see two options:
- We support the latest and greatest wrap version --
metal-cpp_macOS26_iOS26-beta.zip
. I believe this to be unwise -- the latest and greatest right now is an unstable beta that few users actually have installed on their machines. - We provide an array of wraps, each for one zip provided by Apple. This seems like a reasonable-enough solution, but seems like a maintenance nightmare.
This is my first time dipping my toes into writing wraps (normally I would've been lazy and submoduled). Let me know if you have better suggestions than the ones I offered.
For reference, Here's a convenient (to awk
, not so much humans) table of all the redistributions:
metal-cpp_macOS12_iOS15.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS12_iOS15.zip
metal-cpp_macOS13_iOS16.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS13_iOS16.zip
metal-cpp_macOS13.3_iOS16.4.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS13.3_iOS16.4.zip
metal-cpp_macOS14_iOS17-beta.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS14_iOS17-beta.zip
metal-cpp_macOS14.2_iOS17.2.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS14.2_iOS17.2.zip
metal-cpp_macOS15_iOS18-beta.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS15_iOS18-beta.zip
metal-cpp_macOS15_iOS18.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS15_iOS18.zip
metal-cpp_macOS15.2_iOS18.2.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS15.2_iOS18.2.zip
metal-cpp_macOS26_iOS26-beta.zip https://developer.apple.com/metal/cpp/files/metal-cpp_macOS26_iOS26-beta.zip
I'll be opening a PR briefly with a partial implementation for the latter!