[U-Boot] [PATCH 08/11] buildman: Avoid overwriting existing toolchain entries

Stephen Warren swarren at wwwdotorg.org
Thu Jul 7 20:21:44 CEST 2016


On 07/03/2016 03:14 PM, Simon Glass wrote:
> The current code for setting up the toolchain config always writes the new
> paths to an item called 'toolchain'. This means that it will overwrite any
> existing toolchain item with the same name. In practice, this means that:
>
>     buildman --fetch-arch all
>
> will fetch all toolchains, but only the path of the final one will be added
> to the config. This normally works out OK, since most toolchains are the
> same version (e.g. gcc 4.9) and will be found on the same path. But it is
> not correct and toolchains for archs which don't use the same version will
> not function as expected.
>
> Adjust the code to use unique names for each toolchain path entry.

> diff --git a/tools/buildman/bsettings.py b/tools/buildman/bsettings.py

> +def GetItemsAsDict(section):
> +    """Get the items from a section of the config.
> +
> +    Args:
> +        section: name of section to retrieve
> +
> +    Returns:
> +        Dict:
> +           key: name of item
> +           value: value of item
> +    """
> +    try:
> +        items = {}
> +        for item in settings.items(section):
> +            items[item[0]] = item[1]

Aren't those last 3 lines equivalent to:

items = dict(settings.items(section))


More information about the U-Boot mailing list