Adding ARM Cross generation patch to gcc and binutils specfiles
Andy Green
andy at warmcat.com
Fri Dec 24 12:43:25 UTC 2010
Hi -
Building on the work of Lennert Buytenhek and David Woodhouse I recently
uplevelled the spec files for gcc and binutils they did for gcc-4.1.2
and binutils-2.17.50.0.18 to work with recent rawhide gcc and binutils.
The goal of the spec changes is to allow rpmbuild to also build cross
gcc and binutils packages which can co-exist with the normal host ones,
it makes it easy then to build cross kernels or bootloaders which may
otherwise be difficult when your native system doesn't work yet ^^
The patched spec files need to be built like this:
$ rpmbuild -ba --define "binutils_target armv5tel-redhat-linux-gnueabi"
rpmbuild/SPECS/gcc.spec
# rpm -i
rpmbuild/RPMS/x86_64/armv5tel-redhat-linux-gnueabi-binutils-2.20.51.0.12-2.fc15.x86_64.rpm
$ rpmbuild -ba --define="cross_target armv5tel-redhat-linux-gnueabi"
rpmbuild/SPECS/gcc.spec
The binutils patch is simple and small (against
binutils-2.20.51.0.12-2.fc15):
http://warmcat.com/binutils-cross12.diff
The gcc patch (against gcc-4.5.1-5.fc15):
http://warmcat.com/gcc-cross12.diff
is not small or selfcontained and may have some rough edges, but it
works to build functional cross packages that don't conflict with the
host install so its heart is at least in the right place or, best from
my point of view, the patch can be cleaned and merged with the normal
gcc spec.
I see Hans looks after arm-gp2x-linux-gcc which is also stuck in a
gcc-4.1.2 timewarp that maybe my uplevelled patch can also help.
Maybe Jakub and Hans could eyeball the patches and see if there is a
path to allowing cross packages going on just by rebuilding with the
right rpmbuild parameters.
-Andy
More information about the devel
mailing list