As everyone has probably gathered from the first sentence of most of the other posts, GSoC 2011 is now over. I accomplished some of the goals I had for the last quarter, but was unable to get GCC2 support to work. The compiler is different enough to not work with the same options, and even after adding a GCC2 tool definition to kBuild I found that it was too old to compile some of the VirtualBox code.
New status report: major feature dropped; bugs fixed; did some screen research.
At the start of the third term, it was pointed out to me that Haiku does not actually support hardware 3D acceleration, and to add it would be a larger project than I have the time (or knowledge) for. Therefore, I've had to drop host-accelerated OpenGL from the planned features. I'm somewhat annoyed by this, but looking back it was probably a bit too ambitious anyway, and I'm not convinced I could have finished it in time.
Shares fully working! Slightly slow, but usable. Clipboardy stuff too.
I've now fixed most of the bugs in the guest additions, to the point that what's done so far is mostly usable - the only major bugs remaining are some random crashes in VBoxService that I've not been able to reproduce, and an inability to drag icons when mouse pointer integration is enabled. (Thanks to kallisti5 for finding both of these.
During the first few weeks of GSoC, I've gotten vboxsf, the shared folders module, mostly working, though I'm a bit behind where I'd like to be due to unexpected things repeatedly coming up both in physical-land and on my development setup. All supported functionality is working when accessed from the terminal - at this point I'm just optimizing and working on a bug where looking at a shared folder the wrong way in Tracker causes the kernel to panic.
During the community bonding period I played around with the existing guest additions patch, getting it to build and switching my repository over to git to preserve my sanity. I've learned a lot about the way Haiku drivers and modules work, especially in the last few days, and it seems that a few things are simpler than I originally thought they'd be and some things are more difficult.
As an example of the latter, it turns out that drivers can't provide APIs to other drivers; only modules can do this.
Hello. I'm Mike and I'll be porting part of the VirtualBox guest additions to Haiku. My full proposal is here, but briefly, the features I plan to port include:
Mouse pointer integration Shared folders Shared clipboard Time synchronization An improved video driver Guest control (executing commands on the guest from the host) Guest properties During the community bonding period I plan to spend a bit of time reading more code and discussing with the developers to learn more about how things work in both Haiku and VirtualBox.