[PATCH] scripts/get_default_envs.sh: preserve order of multiple entries for same variable

Lukasz Majewski lukma at denx.de
Mon Jan 6 13:16:58 CET 2020


Hi Rasmus,

> It's possible that the default_environment[] array contains multiple
> entries for the same variable, e.g. a setting from env_default.h based
> on some CONFIG_* variable, and another from
> CONFIG_EXTRA_ENV_SETTINGS. In such a case, the last setting takes
> effect.
> 
> Hence, in order to be able to use the output from this script as an
> CONFIG_DEFAULT_ENV_FILE and get the same default environment as one
> currently has, we need to preserve the order. So only sort by the
> variable name, and disable the last-resort comparison.
> 
> We could pipe the result through uniq to remove duplicate lines, but I
> think there's some value in seeing that certain variables are defined
> multiple times.
> 
> Signed-off-by: Rasmus Villemoes <rasmus.villemoes at prevas.dk>
> ---
>  scripts/get_default_envs.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/scripts/get_default_envs.sh b/scripts/get_default_envs.sh
> index da86a9d69c..d1f2ce4d5c 100755
> --- a/scripts/get_default_envs.sh
> +++ b/scripts/get_default_envs.sh
> @@ -35,7 +35,7 @@ cp ${env_obj_file_path} ${ENV_OBJ_FILE_COPY}
>  ${OBJCOPY} -O binary -j ".rodata.default_environment"
> ${ENV_OBJ_FILE_COPY} 
>  # Replace default '\0' with '\n' and sort entries
> -tr '\0' '\n' < ${ENV_OBJ_FILE_COPY} | sort -u
> +tr '\0' '\n' < ${ENV_OBJ_FILE_COPY} | sort --field-separator== -k1,1
> --stable 
>  rm ${ENV_OBJ_FILE_COPY}
>  

Reviewed-by: Lukasz Majewski <lukma at denx.de>


Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200106/8cb426c3/attachment.sig>


More information about the U-Boot mailing list