@@ -36,6 +36,7 @@ set release_urls_arg=
3636set  build_release = 
3737set  enable_vtune_arg = 
3838set  configure_flags = 
39+ set  build_addons = 
3940
4041:next-arg 
4142if  " %1 " == " " goto  args-done
@@ -54,8 +55,9 @@ if /i "%1"=="nosnapshot"    set nosnapshot=1&goto arg-ok
5455if  /i " %1 " == " noetw" set  noetw = 1& goto arg-ok
5556if  /i " %1 " == " noperfctr" set  noperfctr = 1& goto arg-ok
5657if  /i " %1 " == " licensertf" set  licensertf = 1& goto arg-ok
57- if  /i " %1 " == " test" set  test_args = %test_args%  sequential parallel message -J& set jslint=1& goto arg-ok
58- if  /i " %1 " == " test-ci" set  test_args = %test_args%  %test_ci_args%  -p tap --logfile test.tap message sequential parallel& goto arg-ok
58+ if  /i " %1 " == " test" set  test_args = %test_args%  addons sequential parallel message -J& set jslint=1& set build_addons=1& goto arg-ok
59+ if  /i " %1 " == " test-ci" set  test_args = %test_args%  %test_ci_args%  -p tap --logfile test.tap addons message sequential parallel& set build_addons=1& goto arg-ok
60+ if  /i " %1 " == " test-addons" set  test_args = %test_args%  addons& set build_addons=1& goto arg-ok
5961if  /i " %1 " == " test-simple" set  test_args = %test_args%  sequential parallel -J& goto arg-ok
6062if  /i " %1 " == " test-message" set  test_args = %test_args%  message& goto arg-ok
6163if  /i " %1 " == " test-gc" set  test_args = %test_args%  gc& set buildnodeweak=1& goto arg-ok
@@ -91,6 +93,9 @@ if defined build_release (
9193  set  i18n_arg = small-icu
9294)
9395
96+ ::  assign path to node_exe
97+ set  " node_exe = %config% \node.exe" 
98+ 
9499if  " %config% " == " Debug" set  configure_flags = %configure_flags%  --debug
95100if  defined  nosnapshot set  configure_flags = %configure_flags%  --without-snapshot
96101if  defined  noetw set  configure_flags = %configure_flags%  --without-etw&  set  noetw_msi_arg = /p:NoETW=1 
@@ -240,15 +245,36 @@ ssh -F %SSHCONFIG% %STAGINGSERVER% "touch nodejs/%DISTTYPEDIR%/v%FULLVERSION%/no
240245
241246:build-node-weak 
242247@ rem  Build node-weak if required
243- if  " %buildnodeweak% " == " " goto  run-tests 
248+ if  " %buildnodeweak% " == " " goto  build-addons 
244249" %config% \node" " %~dp0 test\gc\node_modules\weak" " %~dp0 ." 
245250if  errorlevel  1  goto  build-node-weak-failed
246- goto  run-tests 
251+ goto  build-addons 
247252
248253:build-node-weak-failed 
249254echo  Failed to build node-weak.
250255goto  exit 
251256
257+ :build-addons 
258+ if  not  defined  build_addons goto  run-tests
259+ if  not  exist  " %node_exe% " 
260+   echo  Failed to find node.exe
261+   goto  run-tests
262+ )
263+ echo  Building add-ons
264+ ::  clear
265+ for  /d %%F  in  (test\addons\??_*) do  (
266+   rd  /s /q %%F 
267+ )
268+ ::  generate
269+ " %node_exe% " 
270+ ::  building addons
271+ for  /d %%F  in  (test\addons\*) do  (
272+   " %node_exe% " ^ 
273+     --directory=" %%F " ^ 
274+     --nodedir=" %cd% " 
275+ )
276+ goto  run-tests
277+ 
252278:run-tests 
253279if  " %test_args% " == " " goto  jslint
254280if  " %config% " == " Debug" set  test_args = --mode=debug %test_args% 
0 commit comments