summaryrefslogtreecommitdiff
path: root/Platform/Intel/PurleyOpenBoardPkg/BoardMtOlympus/bld.bat
blob: a6e0605cce589b9a765d4e2adacec0cc2a0d1c9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
@REM @file
@REM
@REM Copyright (c) 2018, Intel Corporation. All rights reserved.<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
@REM http://opensource.org/licenses/bsd-license.php
@REM
@REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
@REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@REM

@echo off

REM Run setlocal to take a snapshot of the environment variables.  endlocal is called to restore the environment.
setlocal
set SCRIPT_ERROR=0

REM ---- Do NOT use :: for comments Inside of code blocks() ----

::**********************************************************************
:: Initial Setup
::**********************************************************************

:parseCmdLine
if "%1"=="" goto :argumentCheck

if /I "%1"=="debug"          set TARGET=DEBUG
if /I "%1"=="release"        set TARGET=RELEASE

if /I "%1"=="cleantree" (
  set BUILD_TYPE=cleantree
  call :cleantree
  goto :EOF
)

shift
GOTO :parseCmdLine

:argumentCheck:

if /I "%TARGET%" == "" (
  echo Info: debug/release argument is empty, use DEBUG as default
  set TARGET=DEBUG
)

REM Art to notify which board you're working on
echo.
type logo.txt
echo.

::
:: Build configuration
::
set BUILD_REPORT_FLAGS=
set BUILD_CMD_LINE=
set BUILD_LOG=%WORKSPACE%\Build\build.log
set BUILD_REPORT=%WORKSPACE%\Build\BuildReport.txt

del %BUILD_LOG% *.efi *.log 2>NUL

echo --------------------------------------------------------------------------------------------
echo.
echo                                Purley Build Start
echo.
echo --------------------------------------------------------------------------------------------


:doPreBuild
echo.
echo --------------------------------------------------------------------
echo.
echo                          Prebuild Start
echo.
echo --------------------------------------------------------------------
call prebuild.bat
if %SCRIPT_ERROR% NEQ 0 EXIT /b %ERRORLEVEL%

echo --------------------------------------------------------------------
echo.
echo                          Prebuild End
echo.
echo --------------------------------------------------------------------
if %ERRORLEVEL% NEQ 0 EXIT /b %ERRORLEVEL%
timeout 1

:buildBios
set BUILD_CMD_LINE=%BUILD_CMD_LINE% -D MAX_SOCKET=%MAX_SOCKET% -y %BUILD_REPORT%
echo --------------------------------------------------------------------
echo.
echo                          Build Start
echo.
echo --------------------------------------------------------------------
echo.
echo build %BUILD_CMD_LINE% --log=%BUILD_LOG% %BUILD_REPORT_FLAGS%
call build %BUILD_CMD_LINE% --log=%BUILD_LOG% %BUILD_REPORT_FLAGS%
echo --------------------------------------------------------------------
echo.
echo                          Build End
echo.
echo --------------------------------------------------------------------
if %ERRORLEVEL% NEQ 0 EXIT /b %ERRORLEVEL%
timeout 1

:postBuild

echo --------------------------------------------------------------------
echo.
echo                          PostBuild Start
echo.
echo --------------------------------------------------------------------
echo.
call postbuild.bat
timeout 1
echo --------------------------------------------------------------------
echo.
echo                          PostBuild End
echo.
echo --------------------------------------------------------------------
if %ERRORLEVEL% NEQ 0 EXIT /b %ERRORLEVEL%

echo %date%  %time%
echo.

echo --------------------------------------------------------------------------------------------
echo.
echo                                Purley Build End
echo.
echo --------------------------------------------------------------------------------------------

if %ERRORLEVEL% NEQ 0 EXIT /b %ERRORLEVEL%
:done
endlocal & EXIT /b %SCRIPT_ERROR%

::--------------------------------------------------------  
::-- Function section starts below here  
::-------------------------------------------------------- 
:cleantree
choice /t 3 /d y /m "Confirm: clean tree of intermediate files created in tree during build"
if %ERRORLEVEL% EQU 2 goto :EOF
goto :EOF


:ErrorHandler:
echo Error handler