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 |