-
Notifications
You must be signed in to change notification settings - Fork 7
/
make.cmd
167 lines (113 loc) · 3.87 KB
/
make.cmd
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
@ECHO OFF
ECHO DotRas (http://dotras.codeplex.com) Release Builder
ECHO Copyright (c) Jeff Winn. All rights reserved.
ECHO.
IF /I "%1"=="/?" GOTO ShowSyntax
IF /I "%1"=="/help" GOTO ShowSyntax
IF /I "%1"=="-?" GOTO ShowSyntax
REM *****************************************************************
REM * CONFIGURATION
REM *****************************************************************
SET SKIPTEST=false
SET SKIPDOCS=false
SET SKIPPACK=false
REM *****************************************************************
REM DO NOT MODIFY THE CONTENTS OF THIS FILE BELOW THIS POINT!!
REM *****************************************************************
SET KEYFILE=.\Source\DotRas\Public.snk
SET CERTFILE=
SET RELEASEKEYFILE=G:\PrivateKeys\Winnster.snk
SET RELEASECERTFILE=
SET FXFOLDER=%SYSTEMROOT%\Microsoft.NET\Framework\v4.0.30319
REM *****************************************************************
REM * INITIALIZE
REM *****************************************************************
IF "%DEVENVDIR%"=="" GOTO NeedSDKPrompt
:Initialize
IF /I "%1"=="/testonly" (
SET SKIPTEST=false
SET SKIPDOCS=true
SET SKIPPACK=true
)
IF /I "%1"=="/skiptest" (SET SKIPTEST=true)
IF /I "%1"=="/skiptests" (SET SKIPTEST=true)
IF /I "%1"=="/skipinteg" (SET SKIPINTEG=true)
IF /I "%1"=="/skipdocs" (SET SKIPDOCS=true)
IF /I "%1"=="/skipdoc" (SET SKIPDOCS=true)
IF /I "%1"=="/skippack" (SET SKIPPACK=true)
IF /I "%1"=="" GOTO EndInit
SHIFT
GOTO Initialize
:EndInit
ECHO ATTENTION! For your safety, please understand this build project does use
ECHO custom MSBuild tasks during the build process.
ECHO.
ECHO 1. NON-OFFICIAL release build.
ECHO 2. OFFICIAL release build. This option requires a specific strong key file.
ECHO 3. ABORT!
ECHO.
CHOICE /C:123 /N /D:3 /T:30 /M "Please enter a build option (1/2/3):"
IF "%ERRORLEVEL%" == "2" (
SET KEYFILE=%RELEASEKEYFILE%
SET CERTFILE=%RELEASECERTFILE%
)
IF "%ERRORLEVEL%" == "3" (
GOTO AbortRequested
)
:PerformBuild
IF NOT "%KEYFILE%"=="" (IF NOT EXIST "%KEYFILE%" GOTO MissingSNK)
IF NOT "%CERTFILE%"=="" (IF NOT EXIST "%CERTFILE%" GOTO MissingCert)
"%FXFOLDER%\MSBuild.exe" .\build.proj /p:CertificateKeyFile="%CERTFILE%" /p:StrongNameKeyFile="%KEYFILE%" /p:SkipIntegrationTests=%SKIPINTEG% /p:SkipTests=%SKIPTEST% /p:SkipDocumentation=%SKIPDOCS% /p:SkipPackage=%SKIPPACK% /fl /v:diag
GOTO ExitBatch
:ShowSyntax
ECHO Syntax: make.bat [options]
ECHO.
ECHO Options:
ECHO /skiptest - Forces the assembly testing process to be skipped.
ECHO /skipinteg = Forces the integration testing process to be skipped.
ECHO /skipdocs - Forces the documentation generation to be skipped.
ECHO /skippack - Forces the packaging process to be skipped.
ECHO.
GOTO ExitBatch
:AbortRequested
ECHO.
ECHO Aborting the build process as requested.
ECHO.
GOTO ExitBatch
:NeedSDKPrompt
ECHO.
ECHO *******************************************
ECHO * ABORTING! VISUAL STUDIO SDK PROMPT
ECHO *******************************************
ECHO.
ECHO Aborting the build process. This batch file must be executed within a
ECHO Visual Studio 2008 command prompt.
ECHO.
GOTO ExitBatch
:MissingCert
ECHO.
ECHO *******************************************
ECHO * ABORTING! MISSING CERTIFICATE FILE
ECHO *******************************************
ECHO.
ECHO Aborting the build process. The certificate file could not be found. Please
ECHO verify the USB key is inserted in the build machine or choose the non-official
ECHO release build.
ECHO.
ECHO CERTFILE: '%CERTFILE%'
ECHO.
GOTO ExitBatch
:MissingSNK
ECHO.
ECHO *******************************************
ECHO * ABORTING! MISSING SNK FILE
ECHO *******************************************
ECHO.
ECHO Aborting the build process. The private key could not be found. Please verify
ECHO the USB key is inserted in the build machine or choose the non-official
ECHO release build.
ECHO.
ECHO KEYFILE: '%KEYFILE%'
ECHO.
GOTO ExitBatch
:ExitBatch