4

I work on SAM9G25 EK board with buildroot and Armstrong linux (Linux4sam). My script is creating linux version "2.6.39+" and this "+" is confusing (/lib/modules folder etc.). I want to remove it. I found only two files .uImage.cmd, and kernel.release that contains this string, but both are generated.

Where is this string created ?

alk
  • 69,737
  • 10
  • 105
  • 255
Bartlomiej Grzeskowiak
  • 1,009
  • 5
  • 16
  • 35

2 Answers2

6

You have a .config? Look in there for the value assigned to CONFIG_LOCALVERSION.

To have no local version specifed in the kernel's release, either remove CONFIG_LOCALVERSION or comment it out by starting the line containing it by a #.

The default shall be:

#CONFIG_LOCALVERSION is not set
alk
  • 69,737
  • 10
  • 105
  • 255
1

In this case the main reason was : scripts/setlocalversion line >170:

# append a plus sign if the repository is not in a clean
# annotated or signed tagged state (as git describe only
# looks at signed or annotated tags - git tag -a/-s) and
# LOCALVERSION= is not specified
if test "${LOCALVERSION+set}" != "set"; then
    scm=$(scm_version --short)
    res="$res${scm:++}"
fi

I commented this part out.

Bartlomiej Grzeskowiak
  • 1,009
  • 5
  • 16
  • 35
  • So you are pretending to be 2.6.39 when you are not. – MarcH Jul 30 '13 at 11:12
  • 3
    So setting LOCALVERSION before running make (ie: export LOCALVERSION="") would accomplish the same thing. From the script, "touch .scmversion" would also work. – carveone Nov 15 '13 at 19:14