Embedding Custom Packages

From
(Redirected from Embed Custom Packages)
Jump to navigation Jump to search

German version

The easiest and cleanest way to embed custom packages into an OpenMoko image build is to basically create a custom distribution on top of OpenMoko (just like OpenMoko is built on top of OpenEmbedded). In order to do this we create a new directory tree openmoko-sar next to oe and openembedded:

$OPENMOKODIR
|
|-> oe
|    |
|    |-> classes
|    |   |
|    |   |-> ...
|    |-> packages
|    |   |
|    |   |-> images
|    |   |-> ...
|    |->...
|-> openembedded
|    |
|    |->...
|-> openmoko-sar
|    |
|    |-> packages
|    |   |
|    |   |-> images
|    |   |   |
|    |   |   |-> openmoko-sar-devel-image.bb
|    |   |   |-> openmoko-sar-image.bb

For a first test we will put our own image recipes into this tree, and create the new recipes based on the image recipes from $OPENMOKODIR/oe/packages/images/. Simply copy the existing recipes, change their name, modify the require statement in (the now new) openmoko-sar-devel-image.bb. At a later time we plan to put this structure into a version control system.

To actually use this structure the following changes are necessary. In setup-env change:

export BBPATH="${OMDIR}/build:${OMDIR}/oe:${OMDIR}/openembedded:"

to

export BBPATH="${OMDIR}/build:${OMDIR}/oe:${OMDIR}/openembedded:${OMDIR}/openmoko-sar"

and in build/conf/local.conf append:

BBFILES := "${BBFILES} ${OMDIR}/openmoko-sar/packages/*/*.bb"

(And maybe, for convenience, append to Makefile:

.PHONY: %-image
%-image:
	( source ./setup-env ; cd build ; bitbake -c build $*-image )

)

Now you should be able to build the new image with make openmoko-sar-devel-image. Bonus point: since the image name starts with openmoko- it will automatically be picked up by make flash-qemu-local.