2 @REM Windows batch file to setup a WORKSPACE environment
4 @REM Copyright
(c
) 2006 - 2019, Intel Corporation. All rights reserved.
<BR
>
5 @REM
(C
) Copyright
2016 Hewlett Packard Enterprise Development LP
<BR
>
6 @REM SPDX
-License
-Identifier
: BSD
-2-Clause
-Patent
9 @REM
set CYGWIN_HOME
=C
:\cygwin
12 @REM edksetup.bat
[--nt32
] [AntBuild
] [Rebuild
] [ForceRebuild
] [Reconfig
]
13 @REM
if the argument
, skip is present
, only the paths and the
14 @REM test and
set of environment settings are performed.
16 @REM ##############################################################
17 @REM # You should
not have to modify anything below this line
23 @REM
Set the WORKSPACE to the current working directory
28 if not defined WORKSPACE
(
32 if %WORKSPACE% == %CD% (
33 @REM Workspace is
not changed.
38 @REM
set new workspace
39 if not defined WORKSPACE
(
44 if /I
"%1"=="-h" goto Usage
45 if /I
"%1"=="-help" goto Usage
46 if /I
"%1"=="--help" goto Usage
47 if /I
"%1"=="/h" goto Usage
48 if /I
"%1"=="/?" goto Usage
49 if /I
"%1"=="/help" goto Usage
51 if /I
"%1"=="NewBuild" shift
52 if not defined EDK_TOOLS_PATH
(
59 if %WORKSPACE
:~
-1% EQU \
(
60 @
set EDK_BASETOOLS
=%WORKSPACE%BaseTools
62 @
set EDK_BASETOOLS
=%WORKSPACE%\BaseTools
64 if exist %EDK_BASETOOLS% (
65 set EDK_TOOLS_PATH
=%EDK_BASETOOLS%
68 if defined PACKAGES_PATH
(
69 for %%i IN
(%PACKAGES_PATH%) DO (
70 if exist %%~fi\BaseTools
(
71 set EDK_TOOLS_PATH
=%%~fi\BaseTools
77 echo !!! ERROR
!!! Cannot
find BaseTools
!!!
84 if exist %EDK_TOOLS_PATH%\Source
set BASE_TOOLS_PATH
=%EDK_TOOLS_PATH%
87 IF NOT EXIST "%EDK_TOOLS_PATH%\toolsetup.bat" goto BadBaseTools
88 call %EDK_TOOLS_PATH%\toolsetup.bat
%*
89 if /I
"%1"=="Reconfig" shift
95 REM Need the BaseTools Package in order to build
98 @
echo !!! ERROR
!!! The BaseTools Package was
not found
!!!
100 @
echo Set the system environment variable
, EDK_TOOLS_PATH to the BaseTools
,
102 @
echo set EDK_TOOLS_PATH
=C
:\MyTools\BaseTools
103 @
echo The setup script
, toolsetup.bat must reside in this folder.
108 if not defined NASM_PREFIX
(
110 @
echo !!! WARNING
!!! NASM_PREFIX environment variable is
not set
111 @
if exist "C:\nasm\nasm.exe" @
set "NASM_PREFIX=C:\nasm\"
112 @if exist "C
:\nasm
\nasm.exe
" @echo Found nasm.exe, setting the environment variable to C:\nasm\
113 @if not exist "C
:\nasm
\nasm.exe
" echo Attempting to build modules that require NASM will fail.
117 @REM In Windows, set CLANG_HOST_BIN=n to use nmake command
118 @set CLANG_HOST_BIN=n
119 if not defined CLANG_BIN (
121 @echo !!! WARNING !!! CLANG_BIN environment variable is not set
122 @if exist "C
:\Program
Files\LLVM
\bin\clang.exe
" (
123 @set "CLANG_BIN
=C
:\Program
Files\LLVM
\bin
\"
124 @
echo Found LLVM
, setting CLANG_BIN environment variable to C
:\Program
Files\LLVM
\bin\
129 if defined CYGWIN_HOME
(
130 if not exist "%CYGWIN_HOME%" (
132 @
echo !!! WARNING
!!! CYGWIN_HOME
not found
, gcc build may
not be used
!!!
137 set CYGWIN_HOME
=c
:\cygwin
140 @
echo !!! WARNING
!!! No CYGWIN_HOME
set, gcc build may
not be used
!!!
146 if /I
"%1"=="Rebuild" shift
147 if /I
"%1"=="ForceRebuild" shift
148 if /I
"%1"=="VS2019" shift
149 if /I
"%1"=="VS2017" shift
150 if /I
"%1"=="VS2015" shift
151 if /I
"%1"=="VS2013" shift
152 if /I
"%1"=="VS2012" shift
157 @
echo Usage
: "%0 [-h | -help | --help | /h | /help | /?] [Reconfig] [Rebuild] [ForceRebuild] [VS2019] [VS2017] [VS2015] [VS2013] [VS2012]"
159 @
echo Reconfig Reinstall target.txt
, tools_def.txt and build_rule.txt.
160 @
echo Rebuild Perform incremental rebuild of BaseTools binaries.
161 @
echo ForceRebuild Force a full rebuild of BaseTools binaries.
162 @
echo VS2012
Set the env
for VS2012 build.
163 @
echo VS2013
Set the env
for VS2013 build.
164 @
echo VS2015
Set the env
for VS2015 build.
165 @
echo VS2017
Set the env
for VS2017 build.
166 @
echo VS2019
Set the env
for VS2019 build.
168 @
echo Note that target.template
, tools_def.template and build_rules.template
169 @
echo will only be copied to target.txt
, tools_def.txt and build_rule.txt
170 @
echo respectively
if they
do not exist.
Use option
[Reconfig
] to force the
copy.