]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Scripts/ShowEnvironment.bat
BaseTools/BinToPcd: Fix Python 2.7.x compatibility issue
[mirror_edk2.git] / BaseTools / Scripts / ShowEnvironment.bat
1 @REM @file
2 @REM Windows batch file to display the Windows environment
3 @REM
4 @REM This script will be used to show the current EDK II build environment.
5 @REM it may be called by the Edk2Setup.bat (that will be renamed to edksetup.bat) or
6 @REM run as stand-alone application.
7 @REM
8 @REM Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
9 @REM This program and the accompanying materials
10 @REM are licensed and made available under the terms and conditions of the BSD License
11 @REM which accompanies this distribution. The full text of the license may be found at
12 @REM http://opensource.org/licenses/bsd-license.php
13 @REM
14 @REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
15 @REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16 @REM
17 @echo off
18 @set SE_SVN_REVISION=$Revision: 8 $
19 @set SE_VERSION=0.7.0.
20 @if "%SCRIPT%"=="EDKSETUP_BAT" goto SkipCmdlineArgumentCheck
21
22 :parse_cmd_line
23 @if /I "%1"=="-h" @goto Usage
24 @if /I "%1"=="--help" @goto Usage
25 @if /I "%1"=="/?" @goto Usage
26 @if /I "%1"=="-v" @goto Version
27 @if /I "%1"=="--version" @goto Version
28
29 :Usage
30 @echo Usage: ShowEnvironment.bat [Options]
31 @echo Copyright(c) 2014, Intel Corporation. All rights reserved.
32 @echo.
33 @echo Options:
34 @echo --help, -h Print this help screen and exit
35 @echo --version, -v Print this tool's version and exit
36 @echo.
37 @goto End
38
39 :Version
40 @echo ShowEnvironment.bat Version: %SE_VERSION%%SE_SVN_REVISION:~11,-1%
41 @echo Copyright(c) 2014, Intel Corporation. All rights reserved.
42
43 :SkipCmdlineArgumentCheck
44 if defined SRC_CONF @goto SetEnv
45
46 @echo.
47 @echo #############################################################################
48 @if defined WORKSPACE @echo WORKSPACE = %WORKSPACE%
49 @if not defined WORKSPACE @echo WORKSPACE = Not Set
50 @if defined PACKAGES_PATH @echo PACKAGES_PATH = %PACKAGES_PATH%
51 @if defined EDK_TOOLS_PATH @echo EDK_TOOLS_PATH = %EDK_TOOLS_PATH%
52 @if not defined EDK_TOOLS_PATH @echo EDK_TOOLS_PATH = Not Set
53 @if defined BASE_TOOLS_PATH @echo BASE_TOOLS_PATH = %BASE_TOOLS_PATH%
54 @if defined EDK_TOOLS_BIN @echo EDK_TOOLS_BIN = %EDK_TOOLS_BIN%
55 @if defined PYTHON_FREEZER_PATH @echo PYTHON_FREEZER_PATH = %PYTHON_FREEZER_PATH%
56 @if "%NT32PKG%"=="TRUE" (
57 @echo.
58 @echo NOTE: Please configure your build to use the following TOOL_CHAIN_TAG
59 @echo when building NT32Pkg/Nt32Pkg.dsc
60 @if defined VCINSTALLDIR @call :CheckVsVer
61 @set TEST_VS=
62 )
63 @if defined HIDE_PATH goto End
64
65
66 @echo ############################## PATH #########################################
67 @setlocal DisableDelayedExpansion
68 @set "var=%PATH%"
69 @set "var=%var:"=""%"
70 @set "var=%var:^=^^%"
71 @set "var=%var:&=^&%"
72 @set "var=%var:|=^|%"
73 @set "var=%var:<=^<%"
74 @set "var=%var:>=^>%"
75 @set "var=%var:;=^;^;%"
76 @set var=%var:""="%
77 @set "var=%var:"=""Q%"
78 @set "var=%var:;;="S"S%"
79 @set "var=%var:^;^;=;%"
80 @set "var=%var:""="%"
81 @setlocal EnableDelayedExpansion
82 @set "var=!var:"Q=!"
83 @for %%a in ("!var:"S"S=";"!") do (
84 @if "!!"=="" endlocal
85 @if %%a neq "" echo %%~a
86 )
87 @goto End
88
89 :CheckVsVer
90 @set "TEST_VS=C:\Program Files (x86)\Microsoft Visual Studio 9.0\"
91 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
92 @echo TOOL_CHAIN_TAG = VS2008x86
93 @goto :EOF
94 )
95 @set "TEST_VS=C:\Program Files\Microsoft Visual Studio 9.0\"
96 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
97 @echo TOOL_CHAIN_TAG = VS2008
98 @goto :EOF
99 )
100
101 @set "TEST_VS=C:\Program Files (x86)\Microsoft Visual Studio 10.0\"
102 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
103 @echo TOOL_CHAIN_TAG = VS2010x86
104 @goto :EOF
105 )
106 @set "TEST_VS=C:\Program Files\Microsoft Visual Studio 10.0\"
107 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
108 @echo TOOL_CHAIN_TAG = VS2010
109 @goto :EOF
110 )
111
112 @set "TEST_VS=C:\Program Files (x86)\Microsoft Visual Studio 11.0\"
113 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
114 @echo TOOL_CHAIN_TAG = VS2012x86
115 @goto :EOF
116 )
117 @set "TEST_VS=C:\Program Files\Microsoft Visual Studio 11.0\"
118 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
119 @echo TOOL_CHAIN_TAG = VS2012
120 @goto :EOF
121 )
122
123 @set "TEST_VS=C:\Program Files (x86)\Microsoft Visual Studio 12.0\"
124 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
125 @echo TOOL_CHAIN_TAG = VS2013x86
126 @goto :EOF
127 )
128 @set "TEST_VS=C:\Program Files\Microsoft Visual Studio 12.0\"
129 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
130 @echo TOOL_CHAIN_TAG = VS2013
131 @goto :EOF
132 )
133
134 @set "TEST_VS=C:\Program Files (x86)\Microsoft Visual Studio 14.0\"
135 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
136 @echo TOOL_CHAIN_TAG = VS2015x86
137 @goto :EOF
138 )
139 @set "TEST_VS=C:\Program Files\Microsoft Visual Studio 14.0\"
140 @if "%VSINSTALLDIR%"=="%TEST_VS%" (
141 @echo TOOL_CHAIN_TAG = VS2015
142 @goto :EOF
143 )
144 @goto :EOF
145
146 :SetEnv
147 @set FIRST_COPY=FALSE
148 @set MISSING_TARGET_TEMPLATE=FALSE
149 @set MISSING_TOOLS_DEF_TEMPLATE=FALSE
150 @set MISSING_BUILD_RULE_TEMPLATE=FALSE
151 @if not exist "%SRC_CONF%\target.template" @set MISSING_TARGET_TEMPLATE=TRUE
152 @if not exist "%SRC_CONF%\tools_def.template" @set MISSING_TOOLS_DEF_TEMPLATE=TRUE
153 @if not exist "%SRC_CONF%\build_rule.template" @set MISSING_BUILD_RULE_TEMPLATE=TRUE
154
155 @if not exist "%WORKSPACE%\Conf\target.txt" (
156 @if "%MISSING_TARGET_TEMPLATE%"=="TRUE" @goto MissingTemplates
157 @echo copying ... target.template to %WORKSPACE%\Conf\target.txt
158 @copy /Y "%SRC_CONF%\target.template" "%WORKSPACE%\Conf\target.txt" > nul
159 @set FIRST_COPY=TRUE
160 )
161 @if not exist "%WORKSPACE%\Conf\tools_def.txt" (
162 @if "%MISSING_TOOLS_DEF_TEMPLATE%"=="TRUE" @goto MissingTemplates
163 @echo copying ... tools_def.template to %WORKSPACE%\Conf\tools_def.txt
164 @copy /Y "%SRC_CONF%\tools_def.template" "%WORKSPACE%\Conf\tools_def.txt" > nul
165 @set FIRST_COPY=TRUE
166 )
167 @if not exist "%WORKSPACE%\Conf\build_rule.txt" (
168 @if "%MISSING_BUILD_RULE_TEMPLATE%"=="TRUE" @goto MissingTemplates
169 @echo copying ... build_rule.template to %WORKSPACE%\Conf\build_rule.txt
170 @copy /Y "%SRC_CONF%\build_rule.template" "%WORKSPACE%\Conf\build_rule.txt" > nul
171 @set FIRST_COPY=TRUE
172 )
173
174 @if "%FIRST_COPY%"=="TRUE" @goto End
175 @if not "%RECONFIG%"=="TRUE" @goto End
176
177 @if "%RECONFIG%"=="TRUE" (
178 @echo.
179 @echo Over-writing the files in the WORKSPACE\Conf directory
180 @echo using the default template files
181 @echo.
182 @if "%MISSING_TARGET_TEMPLATE%"=="TRUE" @goto MissingTemplates
183 @echo over-write ... target.template to %WORKSPACE%\Conf\target.txt
184 @copy /Y "%SRC_CONF%\target.template" "%WORKSPACE%\Conf\target.txt" > nul
185
186 @if "%MISSING_TOOLS_DEF_TEMPLATE%"=="TRUE" @goto MissingTemplates
187 @echo over-write ... tools_def.template to %WORKSPACE%\Conf\tools_def.txt
188 @copy /Y "%SRC_CONF%\tools_def.template" "%WORKSPACE%\Conf\tools_def.txt" > nul
189
190 @if "%MISSING_BUILD_RULE_TEMPLATE%"=="TRUE" @goto MissingTemplates
191 @echo over-write ... build_rule.template to %WORKSPACE%\Conf\build_rule.txt
192 @copy /Y "%SRC_CONF%\build_rule.template" "%WORKSPACE%\Conf\build_rule.txt" > nul
193 @goto End
194 )
195
196 :MissingTemplates
197 @echo.
198 @if "%RECONFIG%"=="TRUE" @echo ERROR : Reconfig failed
199 @if "%MISSING_TARGET_TEMPLATE%"=="TRUE" @echo ERROR : Unable to locate: "%SRC_CONF%\target.template"
200 @if "%MISSING_TOOLS_DEF_TEMPLATE%"=="TRUE" @echo ERROR : Unable to locate: "%SRC_CONF%\tools_def.template"
201 @if "%MISSING_BUILD_RULE_TEMPLATE%"=="TRUE" @echo ERROR : Unable to locate: "%SRC_CONF%\build_rule.template"
202 @echo.
203 @set MISSING_TARGET_TEMPLATE=
204 @set MISSING_TOOLS_DEF_TEMPLATE=
205 @set MISSING_BUILD_RULE_TEMPLATE=
206 @set FIRST_COPY=
207 @set SE_VERSION=
208 @set SE_SVN_REVISION=
209 @if not "%SCRIPT%"=="EDKSETUP_BAT" @echo on
210 exit /B 1
211
212 :End
213 @set MISSING_TARGET_TEMPLATE=
214 @set MISSING_TOOLS_DEF_TEMPLATE=
215 @set MISSING_BUILD_RULE_TEMPLATE=
216 @set FIRST_COPY=
217 @set SE_VERSION=
218 @set SE_SVN_REVISION=
219 @if not "%SCRIPT%"=="EDKSETUP_BAT" @echo on
220 exit /B 0