Acked-by: Chase Maupin <[email protected]>
>-----Original Message----- >From: [email protected] [mailto:meta-arago- >[email protected]] On Behalf Of Cooper Jr., Franklin >Sent: Wednesday, August 21, 2013 4:06 PM >To: [email protected] >Cc: Cooper Jr., Franklin >Subject: [meta-arago] [PATCH v3] ti-tisdk-install: Move SDK >installation script > >Several steps are required before an SDK image is ready to be >used. >1. Extract toolchain sdk (linuxdevkit.sh) >2. Update Rules.make variables. >3. Update CCS project information > >The script that sdk-install.sh is based on was previously packaged >and ran by >the SDK installed (based on InstallJammer). > >By moving the logic outside of the installer. OE users can now >create >a fully functioning SDK without any outside dependencies by simply >running >sdk-install located in the root of the SDK image. > >Signed-off-by: Franklin S. Cooper Jr <[email protected]> >--- >Version 3 changes: >Included MIT license in script. > >Version 2 changes: >Remove debug mode (set -x) >Remove license since script is simple > > .../ti-tisdk-install/sdk-install.sh | 102 >++++++++++++++++++++ > .../ti-tisdk-install/ti-tisdk-install_1.0.bb | 15 +++ > 2 files changed, 117 insertions(+), 0 deletions(-) > create mode 100644 meta-arago-distro/recipes-tisdk/ti-tisdk- >install/ti-tisdk-install/sdk-install.sh > create mode 100644 meta-arago-distro/recipes-tisdk/ti-tisdk- >install/ti-tisdk-install_1.0.bb > >diff --git a/meta-arago-distro/recipes-tisdk/ti-tisdk-install/ti- >tisdk-install/sdk-install.sh b/meta-arago-distro/recipes-tisdk/ti- >tisdk-install/ti-tisdk-install/sdk-install.sh >new file mode 100644 >index 0000000..b19b65f >--- /dev/null >+++ b/meta-arago-distro/recipes-tisdk/ti-tisdk-install/ti-tisdk- >install/sdk-install.sh >@@ -0,0 +1,102 @@ >+#!/bin/sh >+ >+# Permission is hereby granted, free of charge, to any person >obtaining a copy >+# of this software and associated documentation files (the >"Software"), to deal >+# in the Software without restriction, including without >limitation the rights >+# to use, copy, modify, merge, publish, distribute, sublicense, >and/or sell >+# copies of the Software, and to permit persons to whom the >Software is >+# furnished to do so, subject to the following conditions: >+# >+# The above copyright notice and this permission notice shall be >included in >+# all copies or substantial portions of the Software. >+# >+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >EXPRESS OR >+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF >MERCHANTABILITY, >+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO >EVENT SHALL THE >+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES >OR OTHER >+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, >ARISING FROM, >+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >DEALINGS IN >+# THE SOFTWARE. >+ >+# Process command line... >+while [ $# -gt 0 ]; do >+ case $1 in >+ --install_dir) >+ shift; >+ install_dir=$1; >+ ;; >+ *) >+ shift; >+ ;; >+ esac >+done >+ >+if [ "x$install_dir" = "x" ]; then >+ # Verify that the script is being called within untar SDK >directory >+ if [ ! -d "$PWD/board-support" -a ! -f "$PWD/Rules.make" ]; >then >+ echo "Script must be called within untarred sdk >directory" >+ exit 1 >+ else >+ install_dir="$PWD" >+ fi >+fi >+ >+# Get full path to SDK directory >+cd "$install_dir" >+install_dir="$PWD" >+cd - >+ >+if [ ! -d $install_dir ]; then >+ echo "Installation directory does not exist" >+ exit 1 >+fi >+ >+# Remove any .svn directories that were packaged by the >sourceipks >+rm -rf `find $install_dir -name ".svn"` >+ >+ >+# Update Rules.make variables >+ >+sed -i -e s=__SDK__INSTALL_DIR__=$install_dir= >$install_dir/Rules.make >+ >+# Find the linux directory name >+linux=`find $install_dir/board-support -maxdepth 1 -name >"linux*"` >+linux=`basename $linux` >+sed -i -e s=__KERNEL_NAME__=$linux= $install_dir/Rules.make >+cd - >+ >+ >+# Install toolchain sdk >+$install_dir/linux-devkit.sh -y -d $install_dir/linux-devkit >+ >+# Remove toolchain sdk >+rm $install_dir/linux-devkit.sh >+ >+ >+# Update example applications CCS project files >+ >+# Grab some essential variables from environment-setup >+TARGET_SYS=`sed -n 's/^export TARGET_SYS=//p' $install_dir/linux- >devkit/environment-setup` >+TOOLCHAIN_SYS=`sed -n 's/^export TOOLCHAIN_SYS=//p' >$install_dir/linux-devkit/environment-setup` >+SDK_SYS=`sed -n 's/^export SDK_SYS=//p' $install_dir/linux- >devkit/environment-setup` >+ >+# Grab toolchain's GCC version >+GCC_VERSION=`ls $install_dir/linux- >devkit/sysroots/$SDK_SYS/usr/lib/gcc/$TOOLCHAIN_SYS/` >+ >+TOOLCHAIN_TARGET_INCLUDE_DIR="linux- >devkit/sysroots/$TARGET_SYS/usr/include" >+TOOLCHAIN_INCLUDE_DIR="linux- >devkit/sysroots/$SDK_SYS/usr/lib/gcc/$TOOLCHAIN_SYS/$GCC_VERSION/i >nclude" >+ >+# Update CCS project files using important paths to headers >+ >+find $install_dir/example-applications -type f -exec sed -i >"s|<TOOLCHAIN_TARGET_INCLUDE_DIR>|$TOOLCHAIN_TARGET_INCLUDE_DIR|g" >{} \; >+find $install_dir/example-applications -type f -exec sed -i >"s|<TOOLCHAIN_INCLUDE_DIR>|$TOOLCHAIN_INCLUDE_DIR|g" {} \; >+ >+ >+if [ -f "$install_dir/sdk-install.sh" ]; then >+ # File is only able to run once so delete it from the SDK >+ rm "$install_dir/sdk-install.sh" >+fi >+ >+echo "Installation completed!" >+exit 0 >+ >diff --git a/meta-arago-distro/recipes-tisdk/ti-tisdk-install/ti- >tisdk-install_1.0.bb b/meta-arago-distro/recipes-tisdk/ti-tisdk- >install/ti-tisdk-install_1.0.bb >new file mode 100644 >index 0000000..bf8060c >--- /dev/null >+++ b/meta-arago-distro/recipes-tisdk/ti-tisdk-install/ti-tisdk- >install_1.0.bb >@@ -0,0 +1,15 @@ >+DESCRIPTION = "Contains script to properly extract and update >various files" >+LICENSE = "MIT" >+LIC_FILES_CHKSUM = "file://../sdk- >install.sh;beginline=3;endline=19;md5=ba3aaf42626984584c94c6abe9da >fc06" >+ >+SRC_URI = "file://sdk-install.sh" >+ >+PR = "r0" >+ >+do_install () { >+ install -d ${D}/ >+ install ${WORKDIR}/sdk-install.sh ${D}/sdk-install.sh >+ >+} >+ >+FILES_${PN} = "/*" >-- >1.7.0.4 > >_______________________________________________ >meta-arago mailing list >[email protected] >http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago _______________________________________________ meta-arago mailing list [email protected] http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
