X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=BaseTools%2FBuildEnv;h=6a1281b96b2a519c1dc989a45381ee881a8e93ac;hb=182ac39771add63ccb88443d261c5a0e821d323c;hp=8e7343a73b749e5e62578cd4e89c5f96ef380b66;hpb=66dcb2f08a49419bd5857459fbd3de7b983b6605;p=mirror_edk2.git diff --git a/BaseTools/BuildEnv b/BaseTools/BuildEnv old mode 100644 new mode 100755 index 8e7343a73b..6a1281b96b --- a/BaseTools/BuildEnv +++ b/BaseTools/BuildEnv @@ -1,16 +1,15 @@ +## @file +# Setup the environment for unix-like systems running a bash-like shell. +# This file must be "sourced" not merely executed. For example: ". edksetup.sh" # -# Copyright (c) 2006 - 2007, Intel Corporation -# All rights reserved. This program and the accompanying materials +# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License # which accompanies this distribution. The full text of the license may be found at # http://opensource.org/licenses/bsd-license.php # # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -# -# Setup the environment for unix-like systems running a bash-like shell. -# This file must be "sourced" not merely executed. For example: ". edksetup.sh" # SetWorkspace() { @@ -23,14 +22,6 @@ SetWorkspace() { return 0 fi - if [ ! ${BASH_SOURCE[0]} -ef ./BaseTools/BuildEnv ] - then - echo Run this script from the base of your tree. For example: - echo " cd /Path/To/Edk/Root" - echo " . BaseTools/BuildEnv" - return -1 - fi - # # Set $WORKSPACE # @@ -44,7 +35,7 @@ RestorePreviousConfiguration() { # # Restore previous configuration # - PREVIOUS_CONF_FILE=Conf/BuildEnv.sh2 + PREVIOUS_CONF_FILE=Conf/BuildEnv.sh if [ -e $PREVIOUS_CONF_FILE ] then echo Loading previous configuration from \$WORKSPACE/$PREVIOUS_CONF_FILE @@ -79,7 +70,7 @@ StoreCurrentConfiguration() { # Write configuration to a shell script to allow for configuration to be # easily reloaded. # - OUTPUT_FILE=Conf/BuildEnv.sh2 + OUTPUT_FILE=Conf/BuildEnv.sh #echo Storing current configuration into \$WORKSPACE/$OUTPUT_FILE OUTPUT_FILE=$WORKSPACE/$OUTPUT_FILE echo "# Auto-generated by ${BASH_SOURCE[0]}" > $OUTPUT_FILE @@ -98,13 +89,6 @@ SetEdkToolsPath() { return 0 fi - # - # Figure out a uniq directory name from the uname command - # - UNAME_DIRNAME=`uname -sm` - UNAME_DIRNAME=${UNAME_DIRNAME// /-} - UNAME_DIRNAME=${UNAME_DIRNAME//\//-} - # # Try $WORKSPACE/Conf/EdkTools # @@ -124,9 +108,9 @@ SetEdkToolsPath() { fi # - # Try $WORKSPACE/BaseTools/Bin/$UNAME_DIRNAME + # Try $WORKSPACE/BaseTools # - if [ -e $WORKSPACE/BaseTools/Bin/$UNAME_DIRNAME ] + if [ -e $WORKSPACE/BaseTools ] then export EDK_TOOLS_PATH=$WORKSPACE/BaseTools return 0 @@ -157,9 +141,9 @@ GetEdkToolsPathBinDirectory() { # BIN_SUB_DIR=`GetBaseToolsBinSubDir` - if [ -e $EDK_TOOLS_PATH/PseudoBin/$BIN_SUB_DIR ] + if [ -e $EDK_TOOLS_PATH/BinWrappers/$BIN_SUB_DIR ] then - EDK_TOOLS_PATH_BIN=$EDK_TOOLS_PATH/PseudoBin/$BIN_SUB_DIR + EDK_TOOLS_PATH_BIN=$EDK_TOOLS_PATH/BinWrappers/$BIN_SUB_DIR else EDK_TOOLS_PATH_BIN=$EDK_TOOLS_PATH/Bin/$BIN_SUB_DIR fi @@ -167,6 +151,14 @@ GetEdkToolsPathBinDirectory() { echo $EDK_TOOLS_PATH_BIN } +AddDirToStartOfPath() { + DIRNAME=$1 + PATH=$DIRNAME:$DIRNAME:$DIRNAME:$PATH + PATH=${PATH//$DIRNAME:/} + PATH=$DIRNAME:$PATH + export PATH +} + AddEdkToolsToPath() { # @@ -174,29 +166,19 @@ AddEdkToolsToPath() { # if [ -z "$EDK_TOOLS_PATH" ] then - return -1 + return 1 fi EDK_TOOLS_PATH_BIN=`GetEdkToolsPathBinDirectory` - if [ ! -e $EDK_TOOLS_PATH_BIN ] - then - echo "Unable to find expected bin path under \$EDK_TOOLS_PATH!" - echo "> $EDK_TOOLS_PATH_BIN" - return -1 - fi - - if [ "${PATH/$EDK_TOOLS_PATH_BIN/}" == "$PATH" ] - then - export PATH=$EDK_TOOLS_PATH_BIN:$PATH - return 0 - fi + AddDirToStartOfPath $EDK_TOOLS_PATH/BinWrappers/PosixLike + AddDirToStartOfPath $EDK_TOOLS_PATH_BIN } CopySingleTemplateFile() { - SRC_FILENAME=BaseTools/Conf/$1.template + SRC_FILENAME=Conf/$1.template DST_FILENAME=Conf/$1.txt if [ -e $WORKSPACE/$DST_FILENAME ] @@ -204,9 +186,9 @@ CopySingleTemplateFile() { return fi - echo "Copying \$WORKSPACE/$SRC_FILENAME" + echo "Copying \$EDK_TOOLS_PATH/$SRC_FILENAME" echo " to \$WORKSPACE/$DST_FILENAME" - SRC_FILENAME=$WORKSPACE/$SRC_FILENAME + SRC_FILENAME=$EDK_TOOLS_PATH/$SRC_FILENAME DST_FILENAME=$WORKSPACE/$DST_FILENAME cp $SRC_FILENAME $DST_FILENAME @@ -215,7 +197,6 @@ CopySingleTemplateFile() { CopyTemplateFiles() { CopySingleTemplateFile build_rule - CopySingleTemplateFile FrameworkDatabase CopySingleTemplateFile tools_def CopySingleTemplateFile target @@ -227,7 +208,7 @@ ScriptMain() { if [ -z $WORKSPACE ] then echo "Failure setting WORKSPACE" - return -1 + return 1 fi RestorePreviousConfiguration @@ -235,14 +216,14 @@ ScriptMain() { SetEdkToolsPath if [ -z $EDK_TOOLS_PATH ] then - return -1 + return 1 fi AddEdkToolsToPath if [ $? -ne 0 ] then echo "Failure adding EDK Tools into PATH!" - return -1 + return 1 fi StoreCurrentConfiguration