[opensuse-kernel] Custom kernel flavours
Hi, I am following the hints from http://lists.opensuse.org/opensuse-kernel/2010-07/msg00014.html in order to create a custom kernel. Using patches.addon with patches and a series file is a very nice feature in order to ease integration with upstream kernel srpms. I am now wondering if there is a similar mechanism for adding custom kernel flavours. E.g. something like a file which gets prepended to config.conf and package-descriptions etc. I already learned that I can place the configuration for the new flavour into config.addon.tar.bz2. My config.addon.tar.bz2 looks like drwxr-xr-x root/root 0 2011-01-13 13:04 config.addon/ drwxr-xr-x root/root 0 2011-01-13 13:04 config.addon/i386/ -rw-r--r-- root/root 63963 2011-01-13 13:04 config.addon/i386/ccs -rw-r--r-- root/root 63963 2011-01-13 13:04 config.addon/i386/ccsws I also added my two new flavours to config.conf manually. I can then successfully create kernel-ccs.spec and kernel-ccsws.spec using ./mkspec. When trying to actually build the kernel flavours I get: rpmbuild -ba kernel-ccs.spec tar: config/i386/ccs: Not found in archive tar: Exiting with failure status due to previous errors To me this looks like config.add.tar.bz2 is actually not used as expected. Any hints welcome. Best regards Martin Konold Robert Bosch GmbH Automotive Electronics (RtP2/TEF72) Postfach 13 42 72703 Reutlingen GERMANY www.bosch.com external.martin.konold@de.bosch.com Sitz: Stuttgart, Registergericht: Amtsgericht Stuttgart, HRB 14000; Aufsichtsratsvorsitzender: Hermann Scholl; Geschäftsführung: Franz Fehrenbach, Siegfried Dais; Bernd Bohr, Rudolf Colm, Volkmar Denner, Wolfgang Malchow, Peter Marks, Peter Tyroller; Stefan Asenkerschbaumer, Uwe Raschke, Wolf-Henning Scheider -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
On 13.1.2011 13:33, EXTERNAL Konold Martin (Firma, RtP2/TEF72) wrote:
My config.addon.tar.bz2 looks like
drwxr-xr-x root/root 0 2011-01-13 13:04 config.addon/ drwxr-xr-x root/root 0 2011-01-13 13:04 config.addon/i386/ -rw-r--r-- root/root 63963 2011-01-13 13:04 config.addon/i386/ccs -rw-r--r-- root/root 63963 2011-01-13 13:04 config.addon/i386/ccsws
I also added my two new flavours to config.conf manually.
I can then successfully create kernel-ccs.spec and kernel-ccsws.spec using ./mkspec.
When trying to actually build the kernel flavours I get:
rpmbuild -ba kernel-ccs.spec tar: config/i386/ccs: Not found in archive tar: Exiting with failure status due to previous errors
To me this looks like config.add.tar.bz2 is actually not used as expected.
I didn't expect such usage back when I added support for config.addon.tar.bz2 :). But it would be quite nice if it worked. The problem is that the config files get merged (in your case, and empty file gets merged with a whole new config file) in the %prep phase, while we need to know the values of certain config options when parsing the spec. See http://gitorious.org/opensuse/kernel-source/blobs/master/rpm/kernel-binary.s..., it's a documented limitation. It could be fixed by adding an option to the configtool.pl script to only print the value of a given variable, so that we could use it when parsing the spec file (lines 45-46 in the above link). Another option is to work with the git repository, adding a new flavor is quite easy that way and you will rarely get merge conflicts. Michal -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
participants (2)
-
EXTERNAL Konold Martin (Firma, RtP2/TEF72)
-
Michal Marek