@@ -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