| Title | GNAP cross compile support |
|---|---|
| Student | Philipp Riegger |
| Mentor | Jose Alberto Suarez Lopez |
| Abstract | |
|
GNAP (Gentoo Network Appliance) is a toolkit to build small
Gentoo-based distributions for embedded devices or old PCs. It consists of 3 packages: gnap, gnap-dev and gnap-ext (all in dev-embedded). Gnap provides the gnap_overlay script, which is used to build customized images (disk image or cd image). Therefore it takes a prebuilt GNAP core and "overlays" it with customized configuration files. Gnap-dev provides gnap_make which can be used to build customized GNAP cores and extensions for existing GNAP cores. Gnap-ext provides gnap_remaster, which is used to extend GNAP cores with extensions. It is easy to get a simple system running using only the gnap and gnap-ext package and GNAP is also flexible enough to allow the user to build complex images with all kinds of special software using gnap-dev. Unfortunately, all of them are only available for x86 and/or amd64. It is only possible to build images for x86 compatible systems. This is a big limitation, since lots of embedded systems are not x86 based, but ppc, arm, mips or mips64. And since GNAP can run off a 16 MB flash drive and is very customizable (a smaller gnap is possible, a totally different purpose is possible) it is interesting for all kind of devices. Or it could/would be, at least. The goal of my project is to integrate cross compilation support in GNAP, include support to build images on platforms different than x86/amd64 and to include support and create documentation for at least one specific embedded board. This probably also includes cleaning up the codebase, fixing bugs to get gnap working out of the box (the current gnap in portage needs some love) and maybe expanding/clarifying existing documentation. |
|