]> code.ossystems Code Review - openembedded-core.git/commitdiff
adt-installer: add warning if MACHINE is not set in adt-installer.conf
authorLaurentiu Palcu <laurentiu.palcu@intel.com>
Wed, 25 Sep 2013 15:40:29 +0000 (15:40 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 26 Sep 2013 15:37:13 +0000 (16:37 +0100)
Since the MACHINE can now be specified in adt-installer.conf, in order to
install the proper toolchain and environment script for the given
machine, add a sanity checking at the beginning to make sure MACHINE is
set for the wanted architecture.

Also:
 * uncomment the x86 target variables, in adt-installer.conf, in order
   to have qemux86 MACHINE set, by default, and also the sysroot
   installed (since it doesn't make much sense to install the toolchain
   without a target sysroot);
 * remove 'sudo' when creating relocate_sdk_tmp.py because the file is
   created in adt-installer directory;

[YOCTO #5259]

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/installer/adt-installer/adt_installer
meta/recipes-devtools/installer/adt-installer/adt_installer.conf
meta/recipes-devtools/installer/adt-installer/scripts/adt_installer_internal

index 76afcf36ed7d9c11c94526bb5f7df1449a35629e..f3c05185a1c7723219aa8e15bc1d67929d7ccac2 100755 (executable)
@@ -67,6 +67,10 @@ validate_config()
 
   for selected_arch_type in $YOCTOADT_TARGETS; do
     found=0
+    select_machine_var="\$YOCTOADT_TARGET_MACHINE_$selected_arch_type"
+    select_machine=`eval echo $select_machine_var`
+    show_error_banner=0
+
     for supported_arch_type in $YOCTOADT_SUPPORTED_TARGETS; do
       if [ "$selected_arch_type" == "$supported_arch_type" ]; then
         found=1
@@ -75,10 +79,18 @@ validate_config()
     done
     if [ $found == 0 ]; then
        echo_info "[ADT_INST] Error: YOCTADT_TARGETS in adt_installer.conf contains invalid entries: $YOCTOADT_TARGETS. Valid values are: $YOCTOADT_SUPPORTED_TARGETS"
+       show_error_banner=1
+    elif [ -z "$select_machine" ]; then
+       echo_info "[ADT_INST] Error: No MACHINE was defined for $selected_arch_type architecture! This is needed to install the toolchain and the correct environment settings."
+       echo_info "[ADT_INST] To do that, in adt-installer.conf, set the following variable: YOCTOADT_TARGET_MACHINE_$selected_arch_type"
+       show_error_banner=1
+    fi
+
+    if [ $show_error_banner == 1 ]; then
        echo -e "\n#############################################################################"
        echo -e "# Meet error(s) when installing Yocto ADT! Please check log file for details. "
        echo -e "#############################################################################\n"
-      exit -1
+       exit -1
     fi
   done
 
index cc54acda19232f9c47333d75131d005e4c49ca29..9329a8d199cd67d4d6e2ca3ec06a82a6826f8de7 100644 (file)
@@ -51,11 +51,11 @@ YOCTOADT_TARGET_MACHINE_arm="qemuarm"
 YOCTOADT_TARGET_SYSROOT_LOC_arm="$HOME/test-yocto/$YOCTOADT_TARGET_MACHINE_arm"
 
 
-#Here's another example for setting up target arch of x86, by uncommenting it will trigger the installer to download and setup 2 sysroot environment for 2 target arches: arm and x86.  If you want to add more target arch support, you can append more entries by following these samples
-#YOCTOADT_ROOTFS_x86="sato-sdk"
-#YOCTOADT_TARGET_SYSROOT_IMAGE_x86="sato-sdk"
-#YOCTOADT_TARGET_MACHINE_x86="qemux86"
-#YOCTOADT_TARGET_SYSROOT_LOC_x86="$HOME/test-yocto/$YOCTOADT_TARGET_MACHINE_x86"
+#Here's a template for setting up target arch of x86 
+YOCTOADT_ROOTFS_x86="sato-sdk"
+YOCTOADT_TARGET_SYSROOT_IMAGE_x86="sato-sdk"
+YOCTOADT_TARGET_MACHINE_x86="qemux86"
+YOCTOADT_TARGET_SYSROOT_LOC_x86="$HOME/test-yocto/$YOCTOADT_TARGET_MACHINE_x86"
 
 #Here's some template of other arches, which you need to change the value in ""
 #YOCTOADT_ROOTFS_x86_64="sato-sdk"
index ebfdf2a69b7634360f0de7a261e486d4ba7e73a8..2eb13a9044816b64c0c1817ccd76e0b878430480 100755 (executable)
@@ -195,8 +195,8 @@ escaped_sdkpath=$(echo $DEFAULT_INSTALL_FOLDER |sed -e "s:[\+\.]:\\\\\\\\\0:g")
 
 # We don't change the script in-place since we may want the user to re-run
 # adt-installer script
-$SUDO sh -c "sed -e '"s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:"' scripts/relocate_sdk.py > scripts/relocate_sdk_tmp.py"
-$SUDO chmod +x scripts/relocate_sdk_tmp.py
+sed -e "s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:" scripts/relocate_sdk.py > scripts/relocate_sdk_tmp.py
+chmod +x scripts/relocate_sdk_tmp.py
 
 dl_path=$(find $OECORE_NATIVE_SYSROOT/lib -name "ld-linux*")
 executable_files=$(find $OECORE_NATIVE_SYSROOT -type f -perm /111)