Ubuntu/natty got some cross toolchain updates recently so it is installable again. This gave me some free time to work on improvements. And this mail is an attempt to summary it and to provide some ideas/questions.
= Introduction =
During Emdebian sprint it was decided that my source packages will be used in Debian to provide cross toolchains for users in archive itself (as now Emdebian team autobuilds them into separate archive). We created crosstoolchain project [1] at Alioth and plan to keep Debian branches in git.debian.org repository [2].
= Existing branches =
Speaking of branches - there are several ones in my git repository [3] and some of them are also present as Bazaar branches on Launchpad. This list follows:
debian/experimental/armel-cross-toolchain-base debian/experimental/gcc-4.5-armel-cross debian/experimental/gcc-4.6-armel-cross debian/unstable/gcc-4.4-armel-cross
Those ones can be used to provide cross toolchain for Debian. First one is really ugly as for now it contains a copy of eglibc and linux-2.6 packaging. I have to report few patches [4][5][6] for both components to get this situation sorted. GCC ones do not have any such problems.
ubuntu/natty/armel-cross-toolchain-base ubuntu/natty/gcc-4.4-armel-cross ubuntu/natty/gcc-4.5-armel-cross
Those ones will be soon sent for review/merge/upload into Ubuntu.
ubuntu/not-used/gdb-armel-cross
Superseeded by gdb-multiarch package - gdb 7.2-1ubuntu8 or newer required.
ubuntu/ppa-backport/armel-cross-toolchain-base ubuntu/ppa-backport/gcc-4.5-armel-cross ubuntu/ppa-backport/patches
Those branches are used to generate packages in Linaro toolchain backport PPA [7]. "/patches" branch keeps all patches which I use to alter components.
= Status =
During sprint I merged 3 branches of armel-cross-toolchain-base into one set of rules so today there are not differences between Ubuntu ones and Debian one contains extra debian/packaging directory with copies of eglibc/debian and linux-2.6/debian dirs. Generation of debian/control file is now inside of debian/rules so differences in build dependencies are handled. Switch between Ubuntu and Debian is sorted by using "lsb_release" (idea taken from gcc-4.5) and PPA build can be enabled by "touch debian/ppa".
= Ideas =
There was idea to generate just one source package from this (so it would be debian/experimental/armel-cross-toolchain-base branch) and generate all versions from it. I think that this will work but first we need to get Debian version into state which will be acceptable for inclusion into archive.
= Problems =
Main problem is debian/packaging/ directory in Debian version. I need review of [4] patch and then will report a bug against eglibc.
= Multiarch versions (future) =
When cross build dependencies will be working then we will get rid of armel-cross-toolchain-base package and replace it with binutils-armel-cross (or extend binutils-multiarch to contain "as" and rest of missing binaries).
1. http://alioth.debian.org/projects/crosstoolchain/ 2. http://git.debian.org/?p=collab-maint/cross-toolchain.git%3Ba=summary 3. http://git.linaro.org/gitweb?p=people/hrw/cross-toolchain-packaging.git%3Ba=... 4. http://42.pl/u/2zj4 5. http://42.pl/u/2zj5 6. http://bugs.debian.org/611382 (merged into http://bugs.debian.org/550776 one) 7. https://launchpad.net/~linaro-maintainers/+archive/toolchain