@@ -21,6 +21,7 @@ set nobuild=
2121set nosign =
2222set nosnapshot =
2323set test_args =
24+ set package =
2425set msi =
2526set upload =
2627set licensertf =
@@ -66,6 +67,7 @@ if /i "%1"=="test-pummel" set test_args=%test_args% pummel&goto arg-ok
6667if /i " %1 " == " test-all" set test_args = %test_args% sequential parallel message gc internet pummel& set buildnodeweak=1& set jslint=1& goto arg-ok
6768if /i " %1 " == " test-known-issues" set test_args = %test_args% known_issues --expect-fail& goto arg-ok
6869if /i " %1 " == " jslint" set jslint = 1& goto arg-ok
70+ if /i " %1 " == " package" set package = 1& goto arg-ok
6971if /i " %1 " == " msi" set msi = 1& set licensertf=1& set download_arg=" --download=all" & set i18n_arg=small-icu& goto arg-ok
7072if /i " %1 " == " build-release" set build_release = 1& goto arg-ok
7173if /i " %1 " == " upload" set upload = 1& goto arg-ok
@@ -87,6 +89,7 @@ goto next-arg
8789
8890if defined build_release (
8991 set config = Release
92+ set package = 1
9093 set msi = 1
9194 set licensertf = 1
9295 set download_arg = " --download=all"
@@ -206,11 +209,59 @@ if errorlevel 1 echo Failed to sign exe&goto exit
206209
207210:licensertf
208211@ rem Skip license.rtf generation if not requested.
209- if not defined licensertf goto msi
212+ if not defined licensertf goto package
210213
211214%config% \node tools\license2rtf.js < LICENSE > %config% \license.rtf
212215if errorlevel 1 echo Failed to generate license.rtf& goto exit
213216
217+ :package
218+ if not defined package goto msi
219+ echo Creating package...
220+ cd Release
221+ mkdir node-v%FULLVERSION% -win-%target_arch% > nul 2 > nul
222+ mkdir node-v%FULLVERSION% -win-%target_arch% \node_modules > nul 2 > nul
223+
224+ copy /Y node.exe node-v%FULLVERSION% -win-%target_arch% \ > nul
225+ if errorlevel 1 echo Cannot copy node.exe && goto package_error
226+ copy /Y ..\LICENSE node-v%FULLVERSION% -win-%target_arch% \ > nul
227+ if errorlevel 1 echo Cannot copy LICENSE && goto package_error
228+ copy /Y ..\README.md node-v%FULLVERSION% -win-%target_arch% \ > nul
229+ if errorlevel 1 echo Cannot copy README.md && goto package_error
230+ copy /Y ..\CHANGELOG.md node-v%FULLVERSION% -win-%target_arch% \ > nul
231+ if errorlevel 1 echo Cannot copy CHANGELOG.md && goto package_error
232+ robocopy /e ..\deps\npm node-v%FULLVERSION% -win-%target_arch% \node_modules\npm > nul
233+ if errorlevel 8 echo Cannot copy npm package && goto package_error
234+ copy /Y ..\deps\npm\bin\npm node-v%FULLVERSION% -win-%target_arch% \ > nul
235+ if errorlevel 1 echo Cannot copy npm && goto package_error
236+ copy /Y ..\deps\npm\bin\npm.cmd node-v%FULLVERSION% -win-%target_arch% \ > nul
237+ if errorlevel 1 echo Cannot copy npm.cmd && goto package_error
238+
239+ echo Creating node-v%FULLVERSION% -win-%target_arch% .7z
240+ del node-v%FULLVERSION% -win-%target_arch% .7z > nul 2 > nul
241+ 7z a -r -mx9 -t7z node-v%FULLVERSION% -win-%target_arch% .7z node-v%FULLVERSION% -win-%target_arch% > nul
242+ if errorlevel 1 echo Cannot create node-v%FULLVERSION% -win-%target_arch% .7z && goto package_error
243+
244+ echo Creating node-v%FULLVERSION% -win-%target_arch% .zip
245+ del node-v%FULLVERSION% -win-%target_arch% .zip > nul 2 > nul
246+ 7z a -r -mx9 -tzip node-v%FULLVERSION% -win-%target_arch% .zip node-v%FULLVERSION% -win-%target_arch% > nul
247+ if errorlevel 1 echo Cannot create node-v%FULLVERSION% -win-%target_arch% .zip && goto package_error
248+
249+ echo Creating node_pdb.7z
250+ del node_pdb.7z > nul 2 > nul
251+ 7z a -mx9 -t7z node_pdb.7z node.pdb > nul
252+
253+ echo Creating node_pdb.zip
254+ del node_pdb.zip > nul 2 > nul
255+ 7z a -mx9 -tzip node_pdb.zip node.pdb > nul
256+
257+ cd ..
258+ echo Package created!
259+ goto package_done
260+ :package_error
261+ cd ..
262+ exit /b 1
263+ :package_done
264+
214265:msi
215266@ rem Skip msi generation if not requested
216267if not defined msi goto run
@@ -236,8 +287,12 @@ if not defined STAGINGSERVER set STAGINGSERVER=node-www
236287ssh -F %SSHCONFIG% %STAGINGSERVER% " mkdir -p nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% "
237288scp -F %SSHCONFIG% Release\node.exe %STAGINGSERVER% :nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% /node.exe
238289scp -F %SSHCONFIG% Release\node.lib %STAGINGSERVER% :nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% /node.lib
290+ scp -F %SSHCONFIG% Release\node_pdb.zip %STAGINGSERVER% :nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% /node_pdb.zip
291+ scp -F %SSHCONFIG% Release\node_pdb.7z %STAGINGSERVER% :nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% /node_pdb.7z
292+ scp -F %SSHCONFIG% Release\node-v%FULLVERSION% -win-%target_arch% .7z %STAGINGSERVER% :nodejs/%DISTTYPEDIR% /v%FULLVERSION% /node-v%FULLVERSION% -win-%target_arch% .7z
293+ scp -F %SSHCONFIG% Release\node-v%FULLVERSION% -win-%target_arch% .zip %STAGINGSERVER% :nodejs/%DISTTYPEDIR% /v%FULLVERSION% /node-v%FULLVERSION% -win-%target_arch% .zip
239294scp -F %SSHCONFIG% node-v%FULLVERSION% -%target_arch% .msi %STAGINGSERVER% :nodejs/%DISTTYPEDIR% /v%FULLVERSION% /
240- ssh -F %SSHCONFIG% %STAGINGSERVER% " touch nodejs/%DISTTYPEDIR% /v%FULLVERSION% /node-v%FULLVERSION% -%target_arch% .msi.done nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% .done && chmod -R ug=rw-x+X,o=r+X nodejs/%DISTTYPEDIR% /v%FULLVERSION% /node-v%FULLVERSION% -%target_arch% .msi * nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% *"
295+ ssh -F %SSHCONFIG% %STAGINGSERVER% " touch nodejs/%DISTTYPEDIR% /v%FULLVERSION% /node-v%FULLVERSION% -%target_arch% .msi.done nodejs/%DISTTYPEDIR% /v%FULLVERSION% /node-v %FULLVERSION% - win-%target_arch% .zip. done nodejs/ %DISTTYPEDIR% /v %FULLVERSION% /node-v %FULLVERSION% -win- %target_arch% .7z.done nodejs/ %DISTTYPEDIR% /v %FULLVERSION% /win- %target_arch% .done && chmod -R ug=rw-x+X,o=r+X nodejs/%DISTTYPEDIR% /v%FULLVERSION% /node-v%FULLVERSION% -%target_arch% .* nodejs/%DISTTYPEDIR% /v%FULLVERSION% /win-%target_arch% *"
241296
242297:run
243298@ rem Run tests if requested.
0 commit comments