Installing RPM packages built for AVR32
All it takes is the latest busybox compiled with RPM functions enabled. Then installing an RPM is as simple as: rpm -i neatsoftware.rpm
Building RPM packages for AVR32
I will only cover this process on Fedora 8. Older versions of Fedora, CentOS?, and RHEL should also work. Other RPM based distributions may also be possible.
First you need to have rpm-build installed. You can get it through yum: yum -y install rpm-build
Now, download the rpmbuilding tar file. Open it and copy the .rpmrc file to your home directory. Copy the files in the /usr directory to /usr/lib/rpm. This will setup the required macros for AVR32. Do a mkdir /usr/src/redhat/RPMS/avr32. This will be where the finished RPMs will be kept. Make sure that you also copy the .rpmrc file to /root if you intend to build as root (su). Sudo will use your normal home directory.
* rpmbuilding.tar.bz2: Files for setting up AVR32 RPM build
Test build the software manually before you try building an RPM. You can sort out any porting issues this way. A good trick to use is downloading and installing a source RPM from the Fedora project, pull out the source tree using: rpmbuild -bp /usr/src/redhat/SPECS/neatsoftware.spec
. The source tree will appear in /usr/src/redhat/BUILD, with all the patches applied and ready to go. The source tarball and any patches or supporting files will be kept in /usr/src/redhat/SOURCES.
You can roll your own RPM by and copying it to /usr/src/redhat/SPECS. Make sure the autotools config.sub and config.guess files in the source tree are updated with the latest, then copy your source tarball to /usr/src/redhat/SOURCES.
Building the RPM is as simple as: rpmbuild -ba --target=avr32-linux /usr/src/redhat/SPECS/neatsoftware.spec
The newly created RPM can be found in /usr/src/redhat/RPMS/avr32/
Here is an example RPM that I created using this process:
* leafpad-0.8.11-2.fc8.avr32.rpm: Example binary RPM for AVR32
Here is the source RPM I built it from:
* leafpad-0.8.11-2.fc8.src.rpm: Example source RPM to build with