serenity
serenity copied to clipboard
Ports: Add port for Jakt
Jakt depends on clang, which is provided by the llvm port so it makes sense that if you want the jakt compiler on serenity it should be provided by installing a port.
I've done some noodling and I think the following need to be figured out to add a port of jakt, I figure since new language features are being added now to the self host compiler that's the one we should aim to install on Serenity:
- [x] Jakt hasn't tagged any releases so we'd just fetch the tarball for whatever the latest commit to the jakt repo is as of when the port is added.
- [x] The rust jakt compiler is gone so rust is no longer needed ~~To bootstrap jakt on the build host rust and clang need to be installed,
package.shhas no notion of "build dependencies" so I suppose it just has to do some custom checks and exit with an error.~~ - [ ] the clang toolchain targeting serenity needs to be available, so we should check for that and error out if it's not found.
- [ ] build jakt with the clang toolchain
- [ ] jakt currently has no installer (as far as I know) so the jakt binary needs to be copied to
/binand the runtime headers need to be available in the serenity filesystem as well. Maybe in/usr/include/jakt/runtime? Before building the self hosting compiler I suppose it would need to be patched to look for the runtime in this location.
jakt currently has no installer
I added this yesterday :)
https://github.com/SerenityOS/jakt/blob/main/documentation/cmake-bootstrap.md
I added this yesterday :)
Nice! That definitely helps. I'm hoping to work on this port in the next couple of days 🤞🏼
I added this yesterday :)
Nice! That definitely helps. I'm hoping to work on this port in the next couple of days 🤞🏼
Any updates on the jakt port?
A Jakt port was added in #19796.