[maemo-developers] [maemo-developers] Building maemo from cvs

From: Murray Cumming murrayc at murrayc.com
Date: Fri Mar 31 12:44:33 EEST 2006
On Fri, 2006-03-31 at 10:55 +0300, Devesh.Kothari at nokia.com wrote:
> Murray,
> Such a page would be welcomed.
> 
> Few things to consider
> 1. Maemo 1.1 public release usually lag behind internal product development
> 2. what you see in SVN are realtime in sync (mostly) with product development
> 3. some of the time, these SVN projects like HAF (hildon application framework) move on to new components versions or new dependencies (due to new feature additions) which are not in Maemo X.X public releases
> 
> So to build from scratch (i am throwing things from my head now :)
> 1. get a empty scratchbox
> 2. get a basic developer rootstrap from public maemo release
> 3. set up the apt/sources.list to target the Maemo x.x repository

Ah, so is more than one set of packages in that repository? How can I
discover which are available. I currently have this in my sources.list:

deb http://repository.maemo.org/ maemo1.1rc5 free non-free
deb-src http://repository.maemo.org/ maemo1.1rc5 free

If we can get recent builds of the code currently being worked on, then
that helps a lot, but we will still need to build from cvs too (usually
to a separate prefix). For instance, many of the GNOME Developer use
Ubuntu's unstable release (with the latest GNOME as released in
tarballs) but also use jhbuild to develop the software that can go into
the tarballs.

> 4. set up a local repository on host system(i prefer using a localhost webserver), something like maemo unstable [this is where all the new and updated components used by e.g HAF would go]

So you are talking here about a .deb/apt package repository here rather
than a svn repository?

> 5. Look into e.g HAF SVN and find (thats the hard part), all the new dependencies introduced and updated components. If the project itself dont provide them , then grab them from mainstream and put them in local repo.

Yes, this is something that the jhbuild modulesets should show. I'd also
like to see a page like this, with the module list for a certain release
phase, with branch names:
http://live.gnome.org/TwoPointFifteen/Platform

> 6. Give your local repo preference over the Maemo repo. [you can use tools like apt-ftparchive stuff to create you a Packages.gz/Sources.gz etc]
> 7. apt-get update, install etc
> 8. get the latest SVN source, and then I think you have possibility of some success :)
> 9. once you create and compiled you packages from SVN sources, upload them to you local repository.

This local apt repository only seems necessary in order to load the
updated software onto the device. For working in scratchbox and xephyr,
it does not seem necessary.

> 9. To test : Grab developer rootfs from Maemo , and flash to device
> 10. setup USB networking and modify the apt/sources.list to also point to your local repo, and then the magic apt dist-upgrade (who knows, it might work, at least the theory sound reasonable, isnt it ?) 
> 
> Now here I am assuming when you say Maemo from scratch, you mean Hildon Application Framework, which is in my terminology just HAF, which sits on top of "Maemo Core" [which is all base system, X, gdk, gtk, gconf etc etc]

Well, when we build the hildon-* libs, we also need to build Maemo's
custom GTK+ version, for instance, so I think it makes sense to call it
Maemo.

I'm having some success with building HAF via jhbuild at the moment. 

-- 
Murray Cumming
murrayc at murrayc.com
www.murrayc.com
www.openismus.com


More information about the maemo-developers mailing list