This is a straightforward how to, not a full explained one.
In this HOWTO we will consider playing with fsodeviced which is in cornucopia. So you need to have done a git clone somewhere. No not somewhere. It needs it to be accessible within shr-chroot. So, regarding the path we will use below it need to be relative to your OE root like this :
:~/shr-chroot$ mkdir -p home/universe/dev/FSO/ :~/shr-chroot$ cd home/universe/dev/FSO/ git clone git://git.freesmartphone.org/cornucopia.git
(Personally I use this kind of path structure because it remind me my normal structure out of shr-chroot. but feel free to adapt it to your tastes. but beware to adapt all needed path then.)
Make a experimental branch, or whatever you want to call it :
cd cornucopia/ git branch experimental
and checkout to it to do your change in this branch
git checkout experimental
Commit changes localy
Do some changes and then you commit them into your local git branch of cornucopia so that you can then build corresponding packages for later deployments :
git commit -a
Build the corresponding recipe with shr-chroot
We will add our relevant bits in shr-chroot/OE/shr-unstable/conf/local-builds.inc
for that we need to uncomment the following line in shr-chroot/OE/shr-unstable/conf/local.conf:
#require local-builds.inc
Then set this in your shr-chroot/OE/shr-unstable/conf/local-builds.inc :
FSODEVICED_GIT = "git:///home/universe/dev/FSO/cornucopia/;protocol=file;branch=experimental"
SRCREV_pn-fsodeviced = "${AUTOREV}"
SRC_URI_pn-fsodeviced = "${FSODEVICED_GIT}"
# This is nececesary for fsodeviced but it
# might not be needed for other cornucopia packages
# like fsogsmd
SRC_URI_pn-fsodeviced += "file://fsodeviced"
And now we are ready to build packages of our modified version of fsodeviced
bb fsodeviced
devshell
Now that you have set up your shr-chroot using this page Building SHR you can use the devshell. For that you need first to build it :
bb devshell
Then you will have a script to enter in this devshell, depending of your target, for example tmp/deploy/addons/arm-oe-linux-gnueabi-aurora-palmpre-devshell. So you just need to call it :
./tmp/deploy/addons/arm-oe-linux-gnueabi-aurora-palmpre-devshell
Then you should see that your prompt is different and so You can edit your source and compile it as usual.
In this example go to source directory, for example :
cd /home/universe/dev/FSO/cornucopia/fsodeviced # <= this is where you did a git clone + /fsodeviced
then we generate the config file
./autogen.sh
then we configure
oe_runconf
and finally
make
After that you just need to copy the relevant part to your device and test your changes.
