utils/check-package: warn about overridden variables
authorRicardo Martincoski <ricardo.martincoski@gmail.com>
Sun, 27 Jan 2019 18:59:43 +0000 (16:59 -0200)
committerPeter Korsgaard <peter@korsgaard.com>
Tue, 5 Feb 2019 19:24:57 +0000 (20:24 +0100)
commitb03fa5d96f54847ce338f0a30839d2ad67d2c4da
tree4f6e3c8278133f0fc03159a8abe7c3ca7997466e
parentfa6217bc67ad8ed81cce25d35f66847e1ad3db5f
utils/check-package: warn about overridden variables

For the general case, appending values to variables is OK and also a
good practice, like this:
|PACKAGE_VAR = value1
|ifeq ...
|PACKAGE_VAR += value2

or this, when the above is not possible:
|PACKAGE_VAR = value1
|ifeq ...
|PACKAGE_VAR := $(PACKAGE_VAR), value2

But this override is an error:
|PACKAGE_VAR = value1
|PACKAGE_VAR = value2

as well this one:
|ifeq ...
|PACKAGE_VAR += value1
|endif
|PACKAGE_VAR = value2

And this override is error-prone:
|PACKAGE_VAR = value1
|ifeq ...
|PACKAGE_VAR = value2

Create a check function to warn about overridden variables.

Some variables are likely to have a default value that gets overridden
in a conditional, so ignore them. The name of such variables end in
_ARCH, _CPU, _SITE, _SOURCE or _VERSION.

After ignoring these variable names, there are a few exceptions to this
rule in the tree. For them use the comment that disables the check.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Simon Dawson <spdawson@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Titouan Christophe <titouan.christophe@railnova.eu>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/gcc/gcc-final/gcc-final.mk
package/zmqpp/zmqpp.mk
utils/checkpackagelib/lib_mk.py