From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kiernan Date: Tue, 13 Feb 2018 22:54:59 +0000 Subject: [U-Boot] [PATCH] script: Make the get_default_envs.sh script working with newest u-boot In-Reply-To: <20180213220113.14600-1-lukma@denx.de> References: <20180213220113.14600-1-lukma@denx.de> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Tue, Feb 13, 2018 at 10:01 PM, Lukasz Majewski wrote: > This commit fixes several issues: > > - After moving env related code to ./env directory the env_common.o file > is no longer present in the system (has been replaced with built-in.o). > > - Use ${OBJCOPY} if available, fallback to system default's objcopy if not > present. > > - Extend the script to accept different build directory than current one. > It is extremely handy with OE usage, where source code is separated from > build. > > Signed-off-by: Lukasz Majewski > --- > > scripts/get_default_envs.sh | 19 ++++++++++++++----- > 1 file changed, 14 insertions(+), 5 deletions(-) > > diff --git a/scripts/get_default_envs.sh b/scripts/get_default_envs.sh > index 7955db60e5..bbb6d0a6ef 100755 > --- a/scripts/get_default_envs.sh > +++ b/scripts/get_default_envs.sh > @@ -6,16 +6,24 @@ > # > > # This file extracts default envs from built u-boot > -# usage: get_default_envs.sh > u-boot-env-default.txt > +# usage: get_default_envs.sh [build dir] > u-boot-env-default.txt > set -ue > > -ENV_OBJ_FILE="env_common.o" > +: "${OBJCOPY:=objcopy}" > + > +ENV_OBJ_FILE="built-in.o" > ENV_OBJ_FILE_COPY="copy_${ENV_OBJ_FILE}" > > echoerr() { echo "$@" 1>&2; } > > -path=$(readlink -f $0) > -env_obj_file_path=$(find ${path%/scripts*} -not -path "*/spl/*" \ > +if [ "$#" -eq 1 ]; then > + path=${1} > +else > + path=$(readlink -f $0) > + path=${path%/scripts*} > +fi > + > +env_obj_file_path=$(find ${path} -path "*/env/*" -not -path "*/spl/*" \ > -name "${ENV_OBJ_FILE}") > [ -z "${env_obj_file_path}" ] && \ > { echoerr "File '${ENV_OBJ_FILE}' not found!"; exit 1; } > @@ -24,7 +32,8 @@ cp ${env_obj_file_path} ${ENV_OBJ_FILE_COPY} > > # NOTE: objcopy saves its output to file passed in > # (copy_env_common.o in this case) > -objcopy -O binary -j ".rodata.default_environment" ${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 Tested-by: Alex Kiernan -- Alex Kiernan