[oe] [PATCHv2] kernel/module-base: Append PR to MACHINE_KERNEL_PR

Koen Kooi koen at dominion.thruhere.net
Mon Apr 4 13:58:40 UTC 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 04-04-11 15:00, Andreas Oberritter wrote:
> Ping. Any votes for or against this patch with either appended or
> prepended PR?

I don't like this patch *at all*. Recipes can already do
MACHINE_KERNEL_PR_append = "something" if they need to.

Can you should me a specific example on how this would be an improvement?

regards,

Koen

> 
> On 03/24/2011 05:14 PM, Andreas Oberritter wrote:
>> Based on http://comments.gmane.org/gmane.comp.handhelds.openembedded/42905
>>
>> Signed-off-by: Andreas Oberritter <obi at opendreambox.org>
>> CC: Denis Dydychkin <nyrl at mail.ru>
>> CC: Frans Meulenbroeks <fransmeulenbroeks at gmail.com>
>> ---
>> v2: Move code to machine-kernel-pr.bbclass, to avoid duplication and to
>>     allow other recipes to inherit it. This is useful for tasks which
>>     depend on different kernel modules for different kernel versions,
>>     e.g. madwifi-ng for old kernels, but ath5k for new kernels.
>>
>>  classes/kernel.bbclass            |    7 ++-----
>>  classes/machine-kernel-pr.bbclass |   15 +++++++++++++++
>>  classes/module-base.bbclass       |   11 ++---------
>>  3 files changed, 19 insertions(+), 14 deletions(-)
>>  create mode 100644 classes/machine-kernel-pr.bbclass
>>
>> diff --git a/classes/kernel.bbclass b/classes/kernel.bbclass
>> index 0109ce6..0187fb3 100644
>> --- a/classes/kernel.bbclass
>> +++ b/classes/kernel.bbclass
>> @@ -20,13 +20,10 @@ python __anonymous () {
>>      image = bb.data.getVar('INITRAMFS_IMAGE', d, True)
>>      if image:
>>          bb.data.setVar('INITRAMFS_TASK', '${INITRAMFS_IMAGE}:do_rootfs', d)
>> -
>> -    machine_kernel_pr = bb.data.getVar('MACHINE_KERNEL_PR', d, True)
>> -
>> -    if machine_kernel_pr:
>> -       bb.data.setVar('PR', machine_kernel_pr, d)
>>  }
>>  
>> +inherit machine-kernel-pr
>> +
>>  INITRAMFS_IMAGE ?= ""
>>  INITRAMFS_TASK ?= ""
>>  
>> diff --git a/classes/machine-kernel-pr.bbclass b/classes/machine-kernel-pr.bbclass
>> new file mode 100644
>> index 0000000..a72a0c0
>> --- /dev/null
>> +++ b/classes/machine-kernel-pr.bbclass
>> @@ -0,0 +1,15 @@
>> +# A machine.conf or local.conf can increase MACHINE_KERNEL_PR to force
>> +# rebuilds for kernel and external modules
>> +python __anonymous () {
>> +    machine_kernel_pr = bb.data.getVar('MACHINE_KERNEL_PR', d, True)
>> +    if machine_kernel_pr:
>> +       # Append
>> +       # a) .X, if the recipe's PR is rX, or
>> +       # b) +${PR}, if the recipe's PR doesn't begin with r
>> +       pr = bb.data.getVar('PR', d, True)
>> +       if pr.startswith('r'):
>> +               suffix = '.' + pr[1:]
>> +       else:
>> +               suffix = '+' + pr
>> +       bb.data.setVar('PR', machine_kernel_pr + suffix, d)
>> +}
>> diff --git a/classes/module-base.bbclass b/classes/module-base.bbclass
>> index 9aaaa4e..1a97955 100644
>> --- a/classes/module-base.bbclass
>> +++ b/classes/module-base.bbclass
>> @@ -2,18 +2,11 @@ inherit module_strip
>>  
>>  inherit kernel-arch
>>  
>> +inherit machine-kernel-pr
>> +
>>  export OS = "${TARGET_OS}"
>>  export CROSS_COMPILE = "${TARGET_PREFIX}"
>>  
>> -# A machine.conf or local.conf can increase MACHINE_KERNEL_PR to force
>> -# rebuilds for kernel and external modules
>> -python __anonymous () {
>> -    machine_kernel_pr = bb.data.getVar('MACHINE_KERNEL_PR', d, True)
>> -
>> -    if machine_kernel_pr:
>> -       bb.data.setVar('PR', machine_kernel_pr, d)
>> -}
>> -
>>  export KERNEL_VERSION = "${@base_read_file('${STAGING_KERNEL_DIR}/kernel-abiversion')}"
>>  export KERNEL_SOURCE = "${@base_read_file('${STAGING_KERNEL_DIR}/kernel-source')}"
>>  KERNEL_OBJECT_SUFFIX = "${@[".o", ".ko"][base_read_file('${STAGING_KERNEL_DIR}/kernel-abiversion') > "2.6.0"]}"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFNmc6QMkyGM64RGpERApSbAJkBcJm8dGGqOLOftp/ulcfEyQjR+ACgjPAu
LUeJwMv5bmRdL9kDne0GvIc=
=U/65
-----END PGP SIGNATURE-----





More information about the Openembedded-devel mailing list