On Sun, 23 Jan 2005 15:31:42 +0100, Olivier JAVAUX <ojavaux@xxxxxxxxxxxx> wrote: > Hello, > > I need to create a binary package for a kernel using "make rpm". > I cannot use "rpmbuild -bb" because I need to patch the kernel sources to > support some WiFi device. > > Here is briefly what I did: > rpm -ivh kernel-xxxxxxxxxxx_FC3.src.rpm > edit "/usr/src/redhat/SPECS/kernel-2.6.spec" to change rhbsys, disable smp > rpmbuild -v -bp --target=i686 /usr/src/redhat/SPECS/kernel-2.6.spec > patch the kernel > adapt .config file > modify Makefile to set UTS_MACHINE to i686 (else, only .i386.rpm is created) > and modify EXTRAVERSION if not OK > make rpm > as soon as mkspec has been run, stop it > and modify kernel.spec to add post install commands > (mainly /sbin/new-kernel-pkg) > rerun "make rpm" Why not just further modify the spec file to include your patches that you need. If you have a particular .config you want to use, just replace the necessary config file in the SOURCES directory. You can make a patch for the Makefile changes and also include it in the spec file. It seems like this might be a better way to go about it. > A binary package .i686.rpm is created > > Here are my questions: > > . the binary package is about 100 MB, compared to the 16 MB of the > binary package from Fedora. > Each .ko is around 4 times bigger than the one from Fedora. > Why ? > Are there compile options to set ????? If you use rpmbuild, then I believe the files are stripped, as it creates a normal sized kernel rpm and a larger debug rpm. Jonathan