zoukankan      html  css  js  c++  java
  • ti processor sdk linux am335x evm setup.sh hacking

    #!/bin/sh
    
    #
    #   ti processor sdk linux am335x evm setup.sh hacking
    # 说明:
    #     本文主要对TI的sdk中的setup.sh脚本进行解读,是为了了解其工作机制。
    # 该文件中主要时调用bin下的脚本。
    #
    #                                      2016-4-16 深圳 南山平山村 曾剑锋
    
    
    # This distribution contains contributions or derivatives under copyright
    # as follows:
    #
    # Copyright (c) 2010, Texas Instruments Incorporated
    # All rights reserved.
    #
    # Redistribution and use in source and binary forms, with or without
    # modification, are permitted provided that the following conditions
    # are met:
    # - Redistributions of source code must retain the above copyright notice,
    #   this list of conditions and the following disclaimer.
    # - Redistributions in binary form must reproduce the above copyright
    #   notice, this list of conditions and the following disclaimer in the
    #   documentation and/or other materials provided with the distribution.
    # - Neither the name of Texas Instruments nor the names of its
    #   contributors may be used to endorse or promote products derived
    #   from this software without specific prior written permission.
    #
    # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    # PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
    # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
    # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
    # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
    # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
    # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
    # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
    # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    
    entry_header() {
    cat << EOF
    -------------------------------------------------------------------------------
    TISDK setup script
    This script will set up your development host for SDK development.
    Parts of this script require administrator priviliges (sudo access).
    -------------------------------------------------------------------------------
    EOF
    }
    
    exit_footer() {
    cat << EOF
    -------------------------------------------------------------------------------
    TISDK setup completed!
    Please continue reading the Software Developer's Guide for more information on
    how to develop software on the EVM
    -------------------------------------------------------------------------------
    EOF
    }
    
    cwd=`dirname $0`
    # Minimum major Linux version for running add-to-group script
    # Ubuntu 最低版本
    min_ver_upper=12
    
    # Publish the TISDK setup header
    entry_header
    
    # Make sure that the common.sh file exists
    if [ -f $cwd/bin/common.sh ]; then
        . $cwd/bin/common.sh
        get_host_type host
        get_major_host_version host_upper
    else
        echo "common.sh does not exist in the bin directory"
        exit 1
    fi
    
    if [ -f $cwd/bin/setup-host-check.sh ]; then
        $cwd/bin/setup-host-check.sh
        check_status
    else
        echo "setup-host-check.sh does not exist in the bin directory"
        exit 1
    fi
    
    # Only execute if the Linux version is above 12.xx
    if [ "$host_upper" -gt "$min_ver_upper" -o "$host_upper" -eq "$min_ver_upper" ]; then
        if [ -f $cwd/bin/add-to-group.sh ]; then
            $cwd/bin/add-to-group.sh
            check_status
        else
            echo "add-to-group.sh does not exist in the bin directory"
            exit 1
        fi
    fi
    
    if [ -f $cwd/bin/setup-package-install.sh ]; then
         $cwd/bin/setup-package-install.sh
         check_status
    else
        echo "setup-package-install.sh does not exist in the bin directory"
        exit 1
    fi
    
    if [ -f $cwd/bin/setup-targetfs-nfs.sh ]; then
        $cwd/bin/setup-targetfs-nfs.sh
        check_status
    else
        echo "setup-targetfs-nfs.sh does not exist in the bin directory"
        exit 1
    fi
    
    if [ -f $cwd/bin/setup-tftp.sh ]; then
        $cwd/bin/setup-tftp.sh
        check_status
    else
        echo "setup-tftp.sh does not exist in the bin directory"
        exit 1
    fi
    
    if [ -f $cwd/bin/setup-minicom.sh ]; then
        $cwd/bin/setup-minicom.sh
        check_status
    else
        echo "setup-minicom.sh does not exist in the bin directory"
        exit 1
    fi
    
    if [ -f $cwd/bin/setup-uboot-env.sh ]; then
        $cwd/bin/setup-uboot-env.sh
        check_status
    else
        echo "setup-uboot-env.sh does not exist in the bin directory"
        exit 1
    fi
    
    # Publish the TISDK exit header
    exit_footer
  • 相关阅读:
    python+selenium+unnitest写一个完整的登陆的验证
    selenium+python启动Firefox浏览器失败问题和点击登陆按钮无效问题
    WEB请求处理
    MySQL数据库实现分页查询的SQL语句写法!
    容错性测试
    如何简单实现接口自动化测试(基于 python) 原博主地址https://blog.csdn.net/gitchat/article/details/77849725
    python里如何获取当前日期前后N天或N月的日期
    java:面向对象(接口(续),Compareble重写,Comparator接口:比较器的重写,内部类,垃圾回收机制)
    java:面向对象(多态,final,抽象方法,(简单工厂模式即静态方法模式),接口)
    Java:面向对象(继承,方法的重写(overide),super,object类及object类中方法的重写,父子类代码块执行顺序)
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/5398369.html
Copyright © 2011-2022 走看看