[GSoC 2014] LibUSB Port
My name is Akshay Jaggi. I am presently a sophomore, pursuing a Bachelor’s in Computer Science and Engineering from International Institute of Information Technology, Hyderabad, India (GMT +0530). My interests include (but are not limited to) competitive and algorithmic programming, computer systems architecture, networking, formal methods.
The project I proposed is completing the port of LibUSB to Haiku.
Haiku uses USBKit to access USB devices from userspace. LibUSB is a generic C library, used for the very same purpose. The benefit we get from porting LibUSB to Haiku is that a lot of applications which use LibUSB as their USB backend become easier to port to Haiku (as then there is no need to touch their USB implementation).
- Port LibUSB using USBKit as the OS backend.
- Port a sample application, to test the working of the port.
I am attaching a link to my project proposal for a descriptive version of my project and the goals. http://www.google-melange.com/gsoc/proposal/public/google/gsoc2014/akshay1994/5629499534213120
Community Bonding Period
This is the time when we get to know more about our organisation, the people working in it, our mentors and especially our project.
In this period I would like to make myself well versed with Haiku, its coding guidelines, build procedure and of all the technologies that I will be using to complete this port. This would help me work in full efficiency during the coding period.
I would also like to see and understand the whole USB Stack used by Haiku, and also the current port, which will again make my work further ahead the line easier and fast.
I would also like to write some tests on LibUSB, which will help in testing the port, and will probably make a testing suite to ease adding and removing test cases.
Finally, I would also like to take up some bugs, not necessarily in the area of my project, just to get more comfortable with Haiku.
I am hopeful that I will be able to complete my work on time, and look forward to very awesome three months ahead.