diff options
| -rw-r--r-- | meta/classes-recipe/kernel-arch.bbclass | 7 | ||||
| -rw-r--r-- | meta/classes-recipe/kernel.bbclass | 6 |
2 files changed, 11 insertions, 2 deletions
diff --git a/meta/classes-recipe/kernel-arch.bbclass b/meta/classes-recipe/kernel-arch.bbclass index 6e19dbbba8..df4884b6c4 100644 --- a/meta/classes-recipe/kernel-arch.bbclass +++ b/meta/classes-recipe/kernel-arch.bbclass | |||
| @@ -80,3 +80,10 @@ KERNEL_OBJCOPY = "${CCACHE}${HOST_PREFIX}objcopy ${HOST_OBJCOPY_KERNEL_ARCH}" | |||
| 80 | KERNEL_STRIP = "${CCACHE}${HOST_PREFIX}strip ${HOST_STRIP_KERNEL_ARCH}" | 80 | KERNEL_STRIP = "${CCACHE}${HOST_PREFIX}strip ${HOST_STRIP_KERNEL_ARCH}" |
| 81 | TOOLCHAIN ?= "gcc" | 81 | TOOLCHAIN ?= "gcc" |
| 82 | 82 | ||
| 83 | # 6.3+ requires the variable LOCALVERSION to be set to not get a "+" in | ||
| 84 | # the local version. Having it empty means nothing will be added, and any | ||
| 85 | # value will be appended to the local kernel version. This replaces the | ||
| 86 | # use of .scmversion file for setting a localversion without using | ||
| 87 | # the CONFIG_LOCALVERSION option. | ||
| 88 | KERNEL_LOCALVERSION ??= "" | ||
| 89 | export LOCALVERSION ?= "${KERNEL_LOCALVERSION}" | ||
diff --git a/meta/classes-recipe/kernel.bbclass b/meta/classes-recipe/kernel.bbclass index 855c784149..2aedf3a31b 100644 --- a/meta/classes-recipe/kernel.bbclass +++ b/meta/classes-recipe/kernel.bbclass | |||
| @@ -426,7 +426,7 @@ do_compile_kernelmodules() { | |||
| 426 | if (grep -q -i -e '^CONFIG_MODULES=y$' ${B}/.config); then | 426 | if (grep -q -i -e '^CONFIG_MODULES=y$' ${B}/.config); then |
| 427 | oe_runmake -C ${B} ${PARALLEL_MAKE} modules ${KERNEL_EXTRA_ARGS} | 427 | oe_runmake -C ${B} ${PARALLEL_MAKE} modules ${KERNEL_EXTRA_ARGS} |
| 428 | 428 | ||
| 429 | # Module.symvers gets updated during the | 429 | # Module.symvers gets updated during the |
| 430 | # building of the kernel modules. We need to | 430 | # building of the kernel modules. We need to |
| 431 | # update this in the shared workdir since some | 431 | # update this in the shared workdir since some |
| 432 | # external kernel modules has a dependency on | 432 | # external kernel modules has a dependency on |
| @@ -620,7 +620,6 @@ do_shared_workdir () { | |||
| 620 | # We don't need to stage anything, not the modules/firmware since those would clash with linux-firmware | 620 | # We don't need to stage anything, not the modules/firmware since those would clash with linux-firmware |
| 621 | SYSROOT_DIRS = "" | 621 | SYSROOT_DIRS = "" |
| 622 | 622 | ||
| 623 | KERNEL_LOCALVERSION ??= "" | ||
| 624 | KERNEL_CONFIG_COMMAND ?= "oe_runmake_call -C ${S} O=${B} olddefconfig || oe_runmake -C ${S} O=${B} oldnoconfig" | 623 | KERNEL_CONFIG_COMMAND ?= "oe_runmake_call -C ${S} O=${B} olddefconfig || oe_runmake -C ${S} O=${B} oldnoconfig" |
| 625 | 624 | ||
| 626 | python check_oldest_kernel() { | 625 | python check_oldest_kernel() { |
| @@ -642,6 +641,9 @@ kernel_do_configure() { | |||
| 642 | # $ scripts/setlocalversion . => + | 641 | # $ scripts/setlocalversion . => + |
| 643 | # $ make kernelversion => 2.6.37 | 642 | # $ make kernelversion => 2.6.37 |
| 644 | # $ make kernelrelease => 2.6.37+ | 643 | # $ make kernelrelease => 2.6.37+ |
| 644 | # See kernel-arch.bbclass for post v6.3 removal of the extra | ||
| 645 | # + in localversion. .scmversion is no longer used, and the | ||
| 646 | # variable LOCALVERSION must be used | ||
| 645 | if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ]; then | 647 | if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ]; then |
| 646 | echo ${KERNEL_LOCALVERSION} > ${B}/.scmversion | 648 | echo ${KERNEL_LOCALVERSION} > ${B}/.scmversion |
| 647 | echo ${KERNEL_LOCALVERSION} > ${S}/.scmversion | 649 | echo ${KERNEL_LOCALVERSION} > ${S}/.scmversion |
