adding pjsip to my openmoko overlay
Posted on February 15, 2008
Filed Under openmoko | 4 Comments
continuing my quest for a programmable sip client on openmoko, i’ve been working on adding pjsip to my openembedded overlay.
adding a new package to openembedded is quite daunting at first but there are some great resources out there:
- http://linuxtogo.org/~mickeyl/tools/FOSDEM2005.pdf – overview of openembedded & bitbake
- http://www.openembedded.org/wiki/Bbfile – overview of bitbake files
- http://bitbake.berlios.de/manual/ – the bitbake user manual
- http://www.uv-ac.de/openembedded/openembedded-3.html – great overview of practical bitbake usage
i’ve also found that browsing through the files in openembedded/classes and openembedded/conf is quite useful to learn which tasks are implemented and what they do.
using bitbake in interpreter mode (bitbake -i) can save some time in the edit/test cycle when developing bitbake recipes because the recipe files are parsed once.
i copied the openembedded/packages/ffmpeg/ffmpeg_svn.bb recipe to use as a starting point. the first challenge was fetching the pjproject subversion repository. the ffmpeg recipe uses this:
SRC_URI = "svn://svn.mplayerhq.hu/ffmpeg/;module=trunk"
the svn repository for pjsip is http://svn.pjsip.org/repos/pjproject/trunk but this doesn’t work:
SRC_URI = "http://svn.pjsip.org/repos/pjproject;module=trunk"
because bitbake uses the svn:// or http:// to determine whether to fetch the code with the subversion client or with wget. so to fetch the pjproject repository this is necessary:
SRC_URI = "svn://svn.pjsip.org/repos/pjproject;module=trunk;proto=http"
another gotcha is that unless you define SRCREV it defaults to 1 so the do_fetch task will always retrieve the subversion repository at revision 1 unless you either set SRCREV to a specific revision to check out or you define:
SRCREV_pn-<your project name> = "${AUTOREV}"
so for my new recipe i’ve added:
SRCREV_pn-pjproject = "${AUTOREV}"
my recipe thus far will check out the repository and incorrectly build & install it into the staging area. i’ll work on improving those areas next.
you can find my local overlay in my subversion repository here:
http://svn.eugeneoden.com/openmoko-overlay/trunk/
Comments
4 Responses to “adding pjsip to my openmoko overlay”
Leave a Reply
hey there
nice post I just had a question regarding the installation of pjsip….I get an error will running the bbfile and I have no idea how to fix it could you help
sorry, i haven’t kept up with the openmoko development – its been quite some time since i’ve tried a build and am not working with pjsip anymore.
i think someone else got it working although i don’t have a link handy.
thanks,
gene
Hopefully you’ll get around to reading this.
I’ve already done a lot of searching for an easy solution to building pjsip using OE. Unfortunately I haven’t found one.
So if you have a link I’d greatly appreciate it. If not can you tell me if you started using something else instead of pjsip or did you stop with SIP stuff completely?
Thanks
sorry, haven’t used pjsip at all since i posed this.
ended up writing my own sip stack in python because i didn’t really find another solution i was comfortable with.
unfortunately its owned by my company so i can’t release it.
thanks,
gene