Date: Sat, 10 Feb 2018 02:36:42 -0700 From: Warner Losh <imp@bsdimp.com> To: FreeBSD Current <freebsd-current@freebsd.org> Subject: Lua Loader changes posted Message-ID: <CANCZdfoU1rMgn_=U_xwdELONVk2mpLFnwXfUiCA8FgPdAkM6vw@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
I'm at a good point in the lua loader, so I've posted changed to https://reviews.freebsd.org/D14295 for review. It works great in the userboot.so loader test harness, but I've not booted this on real hardware yet, so anyone wanting to take it for a spin be sure you have an old-working loader or some other way to recover your machine / VM. It's purely opt-in right now. You must build WITHOUT_FORTH=yes and WITH_LOADER_LUA=yes. The good news is you don't need a full buildworld. You can just build stand (but don't forget the above options on both the build and the install). It's getting close. But there's no man page (it will be committed without one unless someone else writes it). I've done a lot of cleanup of the original GSoC code that was then cleaned up a bit by Rui, etc (all the names of the contributors are in the review and will be in the commit message). However, I'm sure the lua code could use some more cleanup. The menu code is especially inefficient at drawing boxes and could likely use some additional cleanup. Despite the slight roughness around the edges, I'm grateful to Zakary Nafziger's menu changes from this past fall. They look a lot better than the final GSoC state. I arbitrarily decided to follow the same conventions we do with style(9) for the lua code. The loader and os module code (the C code in lutil.c) could also use some close scrutiny. I've cleaned up the LUA code to match the new lua modules stuff, but haven't done this code at all and it likely could benefit from a final pass there. The original code was written before you could have integers, so there may be a couple of stray places that still use numbers. If anyone with a lot of Lua embedding experience could look, that would be great. Please let me know what you think. It's been a long road to get /stand into decent enough shape to allow us to build lua w/o changes to lua (OK, only 1 change to lua since there was a format that was forced to be floating point that couldn't change with a #define). It's also quite a bit different than either the final GSoC code, or the Rui branch, or the cleaned up, forward ported Rui branch. Most of my changes have been to the C glue code, though I did some tweaks to the lua code. Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfoU1rMgn_=U_xwdELONVk2mpLFnwXfUiCA8FgPdAkM6vw>