Fix localversion behavior for CONFIG_LOCALVERSION

CONFIG_LOCALVERSION value in config becomes visible only after one
of the targets is built and include/config/auto.conf properly generated.

Use kernelrelease make target after the main targets are built.

Change-Id: Ia2a140df0196b14b3dcfe03ab2f8930b5eed9deb
Reviewed-on: https://cos-review.googlesource.com/c/cos/tools/+/33120
Cloud-Build: GCB Service account <228075978874@cloudbuild.gserviceaccount.com>
Tested-by: Oleksandr Tymoshenko <ovt@google.com>
Reviewed-by: Meena Shanmugam <meenashanmugam@google.com>
diff --git a/src/cmd/cos_kernel_devenv/devenv.sh b/src/cmd/cos_kernel_devenv/devenv.sh
index ba62b40..79e5f26 100755
--- a/src/cmd/cos_kernel_devenv/devenv.sh
+++ b/src/cmd/cos_kernel_devenv/devenv.sh
@@ -381,8 +381,10 @@
     kmake "$@" mrproper
   fi
   kmake "$@" "${KERNEL_CONFIGS[@]}"
-  local -r version=$(kmake "$@" -s kernelrelease)
   kmake "$@" "${image_target}" modules
+  # kernelrelease should be evaluated after the build
+  # otherwise CONFIG_LOCALVERSION value is not picked up properly
+  local -r version=$(kmake "$@" -s kernelrelease)
   INSTALL_MOD_PATH="${tmproot_dir}" kmake "$@" modules_install
 
   mkdir -p "${tmproot_dir}/boot/"