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

2020-05-07 Thread Tom Rini
On Mon, Jan 06, 2020 at 12:01:17PM +, Rasmus Villemoes wrote:

> 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 
> Reviewed-by: Lukasz Majewski 
> Reviewed-by: Simon Glass 

Applied to u-boot/master, thanks!

-- 
Tom


signature.asc
Description: PGP signature


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

2020-04-29 Thread Rasmus Villemoes
On 30/01/2020 03.17, Simon Glass wrote:
> On Mon, 6 Jan 2020 at 05:17, Lukasz Majewski  wrote:
>>
>> 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 
>>> ---
>>>  scripts/get_default_envs.sh | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> Reviewed-by: Lukasz Majewski 
> 
> Reviewed-by: Simon Glass 
> 

Hi Tom,

This has two R-Bs, perhaps I can get you to pick it up?

Thanks,
Rasmus


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

2020-01-29 Thread Simon Glass
On Mon, 6 Jan 2020 at 05:17, Lukasz Majewski  wrote:
>
> 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 
> > ---
> >  scripts/get_default_envs.sh | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Simon Glass 


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

2020-01-06 Thread Lukasz Majewski
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 
> ---
>  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 


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: lu...@denx.de


pgpoXexbbltaY.pgp
Description: OpenPGP digital signature


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

2020-01-06 Thread Rasmus Villemoes
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 
---
 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}
 
-- 
2.23.0