summaryrefslogtreecommitdiff
path: root/Edk2Setup.bat
diff options
context:
space:
mode:
authorCinnamon Shia <cinnamon.shia@hpe.com>2016-10-21 15:41:21 +0800
committerLiming Gao <liming.gao@intel.com>2016-10-24 10:49:19 +0800
commitb8e54b012126a90911e9602b9f6e10d4e16d01d9 (patch)
tree264cfa39098a90973ada165c853c2e4a2983d743 /Edk2Setup.bat
parent92063b0b212ddc408dff163ede8e4ae36ba89400 (diff)
downloadedk2-b8e54b012126a90911e9602b9f6e10d4e16d01d9.tar.gz
Edk2Setup.bat: Support building platforms with Python source
Following the same approach as toolsetup.bat: If build.exe, TargetTool.exe, Trim.exe or GenFds.exe is missing, run its Python source instead. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'Edk2Setup.bat')
-rwxr-xr-xEdk2Setup.bat36
1 files changed, 30 insertions, 6 deletions
diff --git a/Edk2Setup.bat b/Edk2Setup.bat
index 2d132349b..68f46dc42 100755
--- a/Edk2Setup.bat
+++ b/Edk2Setup.bat
@@ -27,6 +27,7 @@
@REM build.exe Version 0.51 Developer Build based on Revision: 15668
@REM
@REM Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
+@REM (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
@REM This program and the accompanying materials
@REM are licensed and made available under the terms and conditions of the BSD License
@REM which accompanies this distribution. The full text of the license may be found at
@@ -59,6 +60,7 @@
@set SRC_CONF=
@set ARGUMENT=
@set SCRIPT=EDKSETUP_BAT
+@set PYTHON_BUILD=
@if not defined ORIGINAL_PATH set "ORIGINAL_PATH=%PATH%"
@REM Always set the WORKSPACE environment variable to the current directory
@@ -352,12 +354,7 @@
@if defined REBUILD_TOOLS goto SetConf
@if defined SVN_PULL goto SetConf
-@if not exist "%EDK_TOOLS_PATH%\Bin\Win32\build.exe" (
- @echo ERROR : %EDK_TOOLS_PATH%\Bin\Win32\build.exe does not exist
- @echo Re-run this script using --reset, --pull or --rebuild
- @echo.
- @goto ExitFailure
-)
+
@echo.
@echo Rebuilding of the tools is not required. Binaries of the latest,
@echo tested versions of the tools have been tested and included in the
@@ -416,6 +413,31 @@
)
@set "PATH=%EDK_TOOLS_BIN%;%PATH%"
+@if NOT EXIST "%EDK_TOOLS_BIN%\build.exe" @set PYTHON_BUILD=TRUE
+@if NOT EXIST "%EDK_TOOLS_BIN%\GenFds.exe" @set PYTHON_BUILD=TRUE
+@if NOT EXIST "%EDK_TOOLS_BIN%\TargetTool.exe" @set PYTHON_BUILD=TRUE
+@if NOT EXIST "%EDK_TOOLS_BIN%\Trim.exe" @set PYTHON_BUILD=TRUE
+
+@if not defined PYTHON_BUILD goto SvnPull
+
+@echo !!! WARNING !!! Setup environment to run Python scripts directly.
+
+@if not defined PYTHON_HOME (
+ @if defined PYTHONHOME (
+ @set PYTHON_HOME=%PYTHONHOME%
+ ) else (
+ @echo.
+ @echo !!! ERROR !!! PYTHON_HOME is required to build or execute the tools, please set it. !!!
+ @echo.
+ @goto ExitFailure
+ )
+)
+
+@set PATH=%PATH%;%BASE_TOOLS_PATH%\BinWrappers\WindowsLike
+@set BASETOOLS_PYTHON_SOURCE=%BASE_TOOLS_PATH%\Source\Python
+@set PYTHONPATH=%BASETOOLS_PYTHON_SOURCE%;%PYTHONPATH%
+
+:SvnPull
@if "%REBUILD_TOOLS%"=="TRUE" @goto Rebuild
@if "%SVN_PULL%"== "TRUE" (
if defined PYTHONHOME (
@@ -485,6 +507,7 @@
@set SCRIPT=
@set LIST_VS_VERSIONS=
@set PYTHON_FREEZER_PATH=
+@set PYTHON_BUILD=
@echo on
@exit /B 0
@@ -504,5 +527,6 @@
@set SCRIPT=
@set LIST_VS_VERSIONS=
@set PYTHON_FREEZER_PATH=
+@set PYTHON_BUILD=
@echo on
@exit /B 1