kbuild: fix LOCALVERSION handling to match description
authorAndy Whitcroft <apw@canonical.com>
Mon, 14 Jun 2010 09:41:10 +0000 (10:41 +0100)
committerMichal Marek <mmarek@suse.cz>
Tue, 15 Jun 2010 10:45:40 +0000 (12:45 +0200)
In the commit below the version string handling was modified, adding
a '+' where no other version information was supplied:

    commit 85a256d8e0116c8f5ad276730830f5d4d473344d
    Author: David Rientjes <rientjes@google.com>
    Date:   Wed Jan 13 13:01:05 2010 -0800

From the commit the intent was as below:

     - when CONFIG_LOCALVERSION_AUTO is disabled, a `+' is appended if the
       repository has been revised beyond a tagged commit and LOCALVERSION=
       was not passed to "make".

However if the user supplies an empty LOCALVERSION on the command line
the plus suffix is still added.  This form is useful in the case where
the build environment knows that the version as specified is correct and
complete but does not correspond to a specific tag.

This patch changes the implementation to match the documentation
such that specifying LOCALVERSION= on the build line is sufficient
to suppress any suffix.

Signed-off-by: Andy Whitcroft <apw@canonical.com>
Acked-by: David Rientjes <rientjes@google.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Makefile

index 993d1f3359251a23576ffb4ed903d1ccd7c0b7ef..324130c682dd947cf3d5f7be11b2e785a5fdf9a0 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -944,7 +944,7 @@ ifdef CONFIG_LOCALVERSION_AUTO
        localver-extra = $(scm-identifier)
 else
        ifneq ($(scm-identifier),)
-               ifeq ($(LOCALVERSION),)
+               ifeq ("$(origin LOCALVERSION)", "undefined")
                        localver-extra = +
                endif
        endif