[Feature] add GA346 baseline version

Change-Id: Ic62933698569507dcf98240cdf5d9931ae34348f
diff --git a/src/tinysys/medmcu/tools/build_tinysys.sh b/src/tinysys/medmcu/tools/build_tinysys.sh
new file mode 100755
index 0000000..d252e77
--- /dev/null
+++ b/src/tinysys/medmcu/tools/build_tinysys.sh
@@ -0,0 +1,109 @@
+#!/bin/bash
+###############################################################################
+# This script provides the customer a quick way to build Tiny System from
+# source.
+###############################################################################
+
+PROG=$(basename ${0})
+
+usage() {
+    cat >&2 <<- EOF
+USAGE
+  ${PROG} [-h] [...]
+
+  This script provides a quicker way to build tinysys.
+
+PREREQUISITE
+  The Android environment must be initialize.
+  That is, you need to run those steps at least once:
+    $ cd <ANDROID_ROOT_DIR>
+    $ . buid/envsetup.sh
+    $ lunch
+
+  This script must be executed in Android top directory.
+
+OPTIONS
+  -h            Print this help message
+
+Other options for GNU make or build targets can be provided.
+For example:
+  clean         Clean up all built directories and objects
+  configheader  Generate C header that contains all config options
+  -jN           Run N parallel build tasks
+EOF
+
+exit 1
+}
+
+info() {
+    echo "${PROG}: [INFO] ${*}"
+}
+
+error() {
+    echo "${PROG}: [ERROR] ${*}"
+    exit 1
+}
+
+check_Android_env() {
+    if [ -z "${ANDROID_PRODUCT_OUT}" ] || [ -z "${TARGET_PRODUCT}" ] ; then
+        cat >&2 <<- EOF
+[ERROR] Android environment is not ready yet.
+
+Please make sure build/envsetup.sh is sourced and lunch is executed.
+EOF
+        return 1
+    fi
+
+    return 0
+}
+
+run_build_cmd() {
+    echo "Build command: ${*}"
+    eval "${*}" || exit 1
+}
+
+#######################################
+# Main
+#######################################
+TINYSYS_ROOT='tinysys/medmcu'
+TINYSYS_TARGET='tinysys-medmcu'
+#ADSP_TARGET='tinysys-adsp'
+CLEAN_TINYSYS_TARGET="clean-${TINYSYS_TARGET}"
+#CLEAN_ADSP_TARGET="clean-${ADSP_TARGET}"
+TINYSYS_ANDROID_MK="${TINYSYS_ROOT}/Android.mk"
+CLEAN_TARGET=0
+
+# Categorize options
+for i in "${@}"; do
+    case "${i}" in
+    'clean')
+        KEYWORDS="${KEYWORDS} ${i}"
+        CLEAN_TARGET=1
+        ;;
+    '-h')
+        usage
+        ;;
+    *) CMD_ARGS="${CMD_ARGS} ${i}"
+    esac
+done
+
+check_Android_env || exit 1
+
+# This script must be run in Android root directory
+[ -f 'build/envsetup.sh' ] || \
+    error "Please execute this command in Android top directory"
+
+#######################################
+# Here we build
+#######################################
+BUILD_CMD="ONE_SHOT_MAKEFILE=${TINYSYS_ANDROID_MK} make ${TINYSYS_TARGET} ${CMD_ARGS}"
+CLEAN_CMD="ONE_SHOT_MAKEFILE=${TINYSYS_ANDROID_MK} make ${CLEAN_TINYSYS_TARGET} ${CMD_ARGS}"
+
+
+if [ ${CLEAN_TARGET} -eq 1 ]; then
+    run_build_cmd "${CLEAN_CMD}"
+else
+    run_build_cmd "${BUILD_CMD}"
+fi
+
+exit ${?}