[opensuse-packaging] kernel-*.spec fixed strings are no fun
Hi, the kernel-*.spec files contain a lot of hardcoded strings, such as 2.6.22.1 for what's currently cooking. This causes a major pain when trying to bump the version by oneself. All occurrences need to be replaced by more-or-less blunt scripts (simple perl -pe 's///'), since the .in files are not available. If these could please be added to the kernel-source pack, that would greatly simplify work. Moreover, I think that strings, where possible, should be replaced by rpm tags. For example this obvious one: Provides: kernel = 2.6.22.1-%source_rel (and other places) this can easily be replaced by %version-%source_rel. The other major thing being Name: kernel-default (and other places of course) which could be replaced - since the macro is already there - by Name: kernel-%build_flavor thanks, Jan -- --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Thu, 09 Aug 2007 21:34:31 +0200, Jan Engelhardt wrote:
the kernel-*.spec files contain a lot of hardcoded strings, such as 2.6.22.1 for what's currently cooking. This causes a major pain when trying to bump the version by oneself. All occurrences need to be replaced by more-or-less blunt scripts (simple perl -pe 's///'), since the .in files are not available. If these could please be added to the kernel-source pack, that would greatly simplify work.
Well, most of the scripts need direct access to our internal CVS server. So just putting them somewhere doesn't help. Although this is something I already have on my to-do list.
Moreover, I think that strings, where possible, should be replaced by rpm tags. For example this obvious one:
Provides: kernel = 2.6.22.1-%source_rel (and other places)
this can easily be replaced by %version-%source_rel. The other major thing being
Name: kernel-default (and other places of course)
which could be replaced - since the macro is already there - by
Name: kernel-%build_flavor
Right, this is something that can be done in a shorter time frame I guess. I'll look into that. --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Friday 10 August 2007 1:21 pm, Jan Blunck wrote:
On Thu, 09 Aug 2007 21:34:31 +0200, Jan Engelhardt wrote:
the kernel-*.spec files contain a lot of hardcoded strings, such as 2.6.22.1 for what's currently cooking. This causes a major pain when trying to bump the version by oneself. All occurrences need to be replaced by more-or-less blunt scripts (simple perl -pe 's///'), since the .in files are not available. If these could please be added to the kernel-source pack, that would greatly simplify work.
Well, most of the scripts need direct access to our internal CVS server. So just putting them somewhere doesn't help. Although this is something I already have on my to-do list.
I ended up writing my own script to build kernel spec files from templates, which I have attached. Basically, I made 3 spec templates from the specs I found in the buildservice, using @@VARIABLENAME@@ where I wanted substitutions: kernel-source.spec.in kernel-binary.spec.in kernel-syms.spec.in Then I created a bunch of files containing flavor-specific variables: kernel-bigsmp.vars kernel-debug.vars kernel-default.vars kernel-kdump.vars kernel-ppc64.vars kernel-s390.vars kernel-um.vars kernel-vanilla.vars kernel-xenpae.vars kernel-xen.vars Here's the contents of kernel-bigsmp.vars, for example: FLAVOR="bigsmp" EXCLUSIVEARCHES="%ix86" SUMMARY="Kernel with PAE Support" DESCRIPTION="This kernel supports up to 64GB of main memory. It requires Physical\n\ Addressing Extensions (PAE), which were introduced with the Pentium Pro\n\ processor." Hope that helps, -- James Oakley jfunk@funktronics.ca
On Aug 13 2007 12:58, James Oakley wrote:
I ended up writing my own script to build kernel spec files from templates, which I have attached.
Well I do have my own, and I'd like to get rid of them, because as soon as someone from Novell changes lines so that my regexes do not match anymore, they will break. Jan -- --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Tuesday 14 August 2007 5:12 am, Jan Engelhardt wrote:
On Aug 13 2007 12:58, James Oakley wrote:
I ended up writing my own script to build kernel spec files from templates, which I have attached.
Well I do have my own, and I'd like to get rid of them, because as soon as someone from Novell changes lines so that my regexes do not match anymore, they will break.
Since I turned it into a template, a simple diff -u tells me what to update from new versions of the spec files. -- James Oakley jfunk@funktronics.ca --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Aug 9 2007 21:34, Jan Engelhardt wrote:
the kernel-*.spec files contain a lot of hardcoded strings, such as 2.6.22.1 for what's currently cooking. This causes a major pain when trying to bump the version by oneself. All occurrences need to be replaced by more-or-less blunt scripts (simple perl -pe 's///'), since the .in files are not available. If these could please be added to the kernel-source pack, that would greatly simplify work.
I have not heard back in the last two months about this, and specfiles still are unmodified. Dunno what I should do about it since you guys are in charge of the code... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
participants (3)
-
James Oakley
-
Jan Blunck
-
Jan Engelhardt