I think we need a general topic here about Linux support :)
I've decided to help out with porting Milton to Linux, as I'd like to use it on my stream (twitch.tv/miotatsu).
Right now, I have a working Makefile, but Milton doesn't build without errors yet. The patch that was linked in the blog comments seems to be for an older version of Milton and didn't work out, but I manually patched it. Miblo also pointed out that there is an issue on github about linux support (#20). Haven't read that carefully yet.
All my work on Milton will be streamed live. The first Milton stream is archived here:
If anyone else wants to help with Linux support or has any useful information/feedback, let me know :)
Miotatsu if you want to cc @handmade_net when you start a stream, we'll typically retweet you. We'd like to get the word out there to help handmade streamers.
I haven't had time to explore the features that we are currently missing yet, but it seems like the program works well!
Most of the Linux platform layer is shimed with IMPL_MISSING as was done in the WIP Mac platform layer.
One thing to note is that I am currently using a GNU compiler specific macro to get the executable path. To support alternative compilers, other implementations will be needed, or the use of this macro can be replaced - either with a global variable that gets initialized with the value from argv[0], or more ideally by reading the command line arguments from /proc/self in the one function that needs it. There might be other ways to get the executable path that I'm not currently aware of, as the Linux interface is pretty big :)
EDIT: I just noticed we compiled with clang++, so clang does support this GNU extension. It might be fine leaving it as is unless you want to support more obscure compilers, clang and gcc are pretty much the only two compilers most everyone uses on linux I believe.
I can open a pull request if you would like what I have now in the official code base. If there are any major missing features that I need to use Milton on stream, I'll implement them, but otherwise I might want to switch gears to other projects on stream. Would you (or anyone else) be willing to take over the Linux development from this point? If not, I'd be willing to finish everything up myself for it.
popcorn I "witness" this and it was "rad"!! I hope this will work with my old laptop and/or raspberry pi. I'm not sure if both has opengl.
I don't know anything about the specs for the raspberry pi. I would be happy/surprised if it worked there. Please let me know how it goes with your old laptop. If it doesn't work, it may start working later when I put some effort into lowering the GL requirements.
Oops I forgot to report back. I guess since it's on an ARM architecture there isn't a intrinsic for ARM so it doesn't compile, oh well, it was worth the try.