c81d3d1604039aba336dc04856c5620ab9607120
[mirror_edk2.git] / DuetPkg / GetVariables.bat
1 @echo off
2 @REM ## @file
3 @REM #
4 @REM # Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
5 @REM #
6 @REM # This program and the accompanying materials
7 @REM # are licensed and made available under the terms and conditions of the BSD License
8 @REM # which accompanies this distribution. The full text of the license may be found at
9 @REM # http://opensource.org/licenses/bsd-license.php
10 @REM # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 @REM # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 @REM #
13 @REM #
14 @REM ##
15
16
17 @REM Read the variables from Conf/target.txt
18 @REM Because we can't add '=' as a delimiter in 'for', each variable is read in 2 parts:
19 @REM First we read the "= xyz" part of the variable assignation which we use, along with
20 @REM the original equal sign for our first assignation. Then we trim any left whitespaces.
21 @REM NB: default token delimiters for "for /f" are tab and space.
22
23 set CONFIG_FILE=%WORKSPACE%\Conf\target.txt
24
25 for /f "tokens=1*" %%i in ('type %CONFIG_FILE% ^| find "TOOL_CHAIN_TAG" ^| find /V "#"') do @set TOOL_CHAIN_TAG%%j
26 for /f "tokens=*" %%i in ("%TOOL_CHAIN_TAG%") do @set TOOL_CHAIN_TAG=%%i
27
28 for /f "tokens=1*" %%i in ('type %CONFIG_FILE% ^| find "TARGET" ^| find /V "#" ^| find /V "TARGET_ARCH"') do @set TARGET%%j
29 for /f "tokens=*" %%i in ("%TARGET%") do @set TARGET=%%i
30
31 for /f "tokens=1*" %%i in ('type %CONFIG_FILE% ^| find "TARGET_ARCH" ^|find /V "#"') do @set TARGET_ARCH%%j
32 for /f "tokens=*" %%i in ("%TARGET_ARCH%") do @set TARGET_ARCH=%%i
33
34
35 REM Set defaults if above variables are undefined in target.txt
36
37 if "%TOOL_CHAIN_TAG%%"=="" @set TOOL_CHAIN_TAG=MYTOOLS
38 if "%TARGET%"=="" @set TARGET=DEBUG
39 if "%TARGET_ARCH%"=="" @set TARGET_ARCH=IA32