> -----Original Message-----
> From: Dmytriyenko, Denys
> Sent: Wednesday, May 08, 2013 8:59 AM
> To: Cooper Jr., Franklin
> Cc: [email protected]
> Subject: Re: [meta-arago] [PATCH] meta-toolchain-arago: Allow relocate script
> to hard code SDK_PATH value
> 
> Franklin,
> 
> Well, I think I already used up all my weekly quota for reviewing patches
> yesterday... :) But, Ok.
> 
> 
> > * SDK_PATH was previously dynamically determined by using BASHISMS
> when
> >   environment-setup was sourced.
> 
> But there was still a known good fallback for when not run under bash.
> 
> 
> > * Relocate_sdk.py is required to be ran and the script knows the location of
> the
> >   toolchain SDK.
> > * By having the relocate_sdk script set SDK_PATH we remove the need for
> >   bashisms from environment-setup.
> 
> It is already doing that, no need to change it.
> 
> 
> > diff --git a/meta-arago-extras/recipes-core/meta/meta-toolchain-arago.bb
> b/meta-arago-extras/recipes-core/meta/meta-toolchain-arago.bb
> > index 699ada7..7f70c42 100644
> > --- a/meta-arago-extras/recipes-core/meta/meta-toolchain-arago.bb
> > +++ b/meta-arago-extras/recipes-core/meta/meta-toolchain-arago.bb
> > @@ -7,7 +7,7 @@ TOOLCHAIN_CLEANUP_PACKAGES ?= ""
> >
> >  require recipes-core/meta/meta-toolchain.bb
> >
> > -PR = "r23"
> > +PR = "r24"
> >
> >  # This function creates an environment-setup-script for use in a deployable
> SDK
> >  toolchain_create_sdk_env_script () {
> > @@ -15,17 +15,7 @@ toolchain_create_sdk_env_script () {
> >     script=${SDK_OUTPUT}/${SDKPATH}/environment-setup
> >     rm -f $script
> >     touch $script
> > -   echo 'SDK_PATH="${SDKPATH}"' >> $script
> > -   echo 'if [ -z "$ZSH_NAME" ] && [ "x$0" = "x./environment-setup" ];
> then' >> $script
> > -   echo '    echo "Error: This script needs to be sourced. Please run as 
> > \".
> ./environment-setup\""' >> $script
> > -   echo '    exit 1' >> $script
> 
> This portion above may stay - it's a nice safeguard. And there's nothing
> bashisms about it.

Your right. I must of gotten delete happy :).
> 
> 
> > -   echo 'else' >> $script
> > -   echo '    if [ -n "$BASH_SOURCE" ]; then' >> $script
> > -   echo '        SDK_PATH="`dirname $BASH_SOURCE`"' >> $script
> > -   echo '    fi' >> $script
> 
> I can see potentially removing this portion, since devkit is not relocatable
> on its own w/o re-installing it in a different location. BTW, this is the only
> bash-related piece of code here, it just uses bash-specific env variable. If
> not run under bash, it will safely skip it, so it's not really a bashism.
True but the SDK_PATH would not be the correct value.
Current value of SDK_PATH:
SDK_PATH=/tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx..../yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy...../

So although no error will be shown the remaining code and variables will be 
using the incorrect SDK_PATH which results in a lot of issues.
> 
> 
> > -   echo '    SDK_PATH=`readlink -f "$SDK_PATH"`' >> $script
> > -   echo '    export SDK_PATH' >> $script
> > -   echo 'fi' >> $script
> 
> And this portion is another nice safeguard - in case you install it in a
> location that is a symlink.
That makes sense. This can stay also.
> 
> 
> > +   echo 'export SDK_PATH="${SDKPATH}"' >> $script
> >     echo 'export SDK_SYS=${SDK_SYS}' >> $script
> >     echo 'export TARGET_SYS=${REAL_MULTIMACH_TARGET_SYS}' >>
> $script
> >     echo 'export TOOLCHAIN_SYS=${TOOLCHAIN_SYS}' >> $script
> > @@ -234,6 +224,9 @@ for env_setup_script in `ls
> $target_sdk_dir/environment-setup*`; do
> >     $SUDO_EXEC sed -e "s:$TMPSDKPATH:$target_sdk_dir:g" -i
> $env_setup_script
> >  done
> >
> > +# Correct SDK_PATH since the exact installation path is now known
> > +$SUDO_EXEC sed -i -e "s|export SDK_PATH\=.*|export
> SDK_PATH=$target_sdk_dir|g" $target_sdk_dir/environment-setup*
> 
> Why do you need this line? It's already happening anyway.
The only way we get the proper value for SDK_PATH is if the following is 
executed.
       SDK_PATH="`dirname $BASH_SOURCE`"' >> $script

Since I want to remove that logic the above is required. Although the sed 
statement would change slightly since "SDK_PATH=" will need to be modified 
instead of "export SDK_PATH=" since I won't be removing a lot of the safe guard 
logic.

> 
> --
> Denys
_______________________________________________
meta-arago mailing list
[email protected]
http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago

Reply via email to