aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cros_utils/misc.py3
-rw-r--r--cros_utils/toolchain_utils.sh32
2 files changed, 34 insertions, 1 deletions
diff --git a/cros_utils/misc.py b/cros_utils/misc.py
index 939ed66b..f9034b89 100644
--- a/cros_utils/misc.py
+++ b/cros_utils/misc.py
@@ -18,7 +18,8 @@ import command_executer
import logger
CHROMEOS_SCRIPTS_DIR = '~/trunk/src/scripts'
-TOOLCHAIN_UTILS_PATH = '~/trunk/src/platform/dev/toolchain_utils.sh'
+TOOLCHAIN_UTILS_PATH = ('/mnt/host/source/src/third_party/toolchain-utils/'
+ 'cros_utils/toolchain_utils.sh')
def GetChromeOSVersionFromLSBVersion(lsb_version):
diff --git a/cros_utils/toolchain_utils.sh b/cros_utils/toolchain_utils.sh
new file mode 100644
index 00000000..5e9a2a32
--- /dev/null
+++ b/cros_utils/toolchain_utils.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# TODO: Convert this to python.
+
+get_all_board_toolchains()
+{
+ cros_setup_toolchains --show-board-cfg="$1" | sed 's:,: :g'
+}
+
+get_ctarget_from_board()
+{
+ local all_toolchains=( $(get_all_board_toolchains "$@") )
+ echo "${all_toolchains[0]}"
+}
+
+get_board_arch()
+{
+ local ctarget=$(get_ctarget_from_board "$@")
+
+ # Ask crossdev what the magical portage arch is!
+ local arch=$(eval $(crossdev --show-target-cfg "${ctarget}"); echo ${arch})
+ if [[ -z ${arch} ]] ; then
+ error "Unable to determine ARCH from toolchain: ${ctarget}"
+ return 1
+ fi
+
+ echo "${arch}"
+ return 0
+}