On Fri, Jul 21, 2006 at 03:12:49PM -0700, John Warren enlightened us:
You also said something about keeping my own release numbers. I think the line is:
%define release 34.0.2.EL
So I should change it to something like:
%define release 34.0.2.EL.PRX.01
You can do that, yes. I think by default, it also appends some information like the user building the RPM to the name. You can check out the spec file for that.
PS: Build just finished and got these errors. I was in the following directory when I started the build.
/home/buildcentos/rpmbuild/BUILD/kernel-2.6.9/linux-2.6.9
And the first thing that the RPM does is remove that directory to start from scratch :-)
And used the command:
rpmbuild --rebuild --target=i686 /home/buildcentos/rpmbuild/SRPMS/kernel-2.6.9-34.0.2.EL.src.rpm
If you're making changes to the spec file, you probably want rpmbuild -ba --target=i686 kernel.spec instead.
The errors I got.
Wrote: /home/buildcentos/rpmbuild/RPMS/i686/kernel-2.6.9-34.0.2.EL.i686.rpm Wrote: /home/buildcentos/rpmbuild/RPMS/i686/kernel-devel-2.6.9-34.0.2.EL.i686.rpm Wrote: /home/buildcentos/rpmbuild/RPMS/i686/kernel-smp-2.6.9-34.0.2.EL.i686.rpm Wrote: /home/buildcentos/rpmbuild/RPMS/i686/kernel-smp-devel-2.6.9-34.0.2.EL.i686.rpm Wrote: /home/buildcentos/rpmbuild/RPMS/i686/kernel-hugemem-2.6.9-34.0.2.EL.i686.rpm Wrote: /home/buildcentos/rpmbuild/RPMS/i686/kernel-hugemem-devel-2.6.9-34.0.2.EL.i686 .rpm Wrote: /home/buildcentos/rpmbuild/RPMS/i686/kernel-debuginfo-2.6.9-34.0.2.EL.i686.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.23183 shell-init: error retrieving current directory: getcwd: cannot access parent
Errors are due to where you started. It did successfully create the RPMs, though.
It also looks like all of the files and directories are deleted during the build. That included the kernel.2.6.spec file. Not a problem but it just caught me off guard when they disapeared. It looks like a new copy of the sources with the changes I made was created in the SRPMS directory. Is that correct? If so I guess I just install it and rebuild. Nice touch if that's correct.
Ahh, I bet your changes didn't make it in if you just make them in the BUILD/kernel... directory. The first thing rebuilding the src rpm does is wipe that directory out and unpack a fresh copy. You're best off making changes to the files in the SOURCES directory, and rebuilding from the .spec file. I think there's also a way to skip parts of the build process, so you could -bp to prep, make changes in BUILD, then skip the prep part of the build process so that it doesn't overwrite your changes. man rpmbuild for that.
Matt