summaryrefslogtreecommitdiff
path: root/vcbuild.bat
AgeCommit message (Collapse)Author
2019-10-10build: make full-icu the default for releasesRichard Lau
Release builds specifically set the `--with-intl=` configure option instead of relying on the default. Explicitly set to `full-icu`. Refs: https://github.com/nodejs/node/pull/29522 PR-URL: https://github.com/nodejs/node/pull/29887 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Steven R Loomis <srloomis@us.ibm.com> Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2019-09-27build,win: goto lint only after defining node_exeJoão Reis
When running `vcbuild lint` on a new prompt where vcbuild was not run before, `%node_exe%` was not defined and `eslint.js`, `lint-js.js` and `lint-md.js` would be run directly using the program defined in Windows (usually the Windows Scripting Host or Notepad). This moves the goto statement to after `%node_exe%` is defined. Fixes: https://github.com/nodejs/node/issues/29602 PR-URL: https://github.com/nodejs/node/pull/29616 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2019-09-02build,win: accept Python 3 if 2 is not availableJoão Reis
If there is no Python 2 available, use Python 3. This allows to test running configure with Python 3. PR-URL: https://github.com/nodejs/node/pull/29236 Reviewed-By: Christian Clauss <cclauss@me.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2019-08-16build: add a testclean targetDaniel Bevenius
This commit adds a target named testclean to allow for cleaning the temporary files generated during a test run without having to use the clean target. PR-URL: https://github.com/nodejs/node/pull/29094 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2019-07-27build,tools: support building with Visual Studio 2019Michaël Zasso
Add a `vs2019` option to `vcbuild.bat` to use VS 2019 instead of VS 2017 PR-URL: https://github.com/nodejs/node/pull/28781 Reviewed-By: João Reis <reis@janeasystems.com> Reviewed-By: Refael Ackermann (רפאל פלחי) <refack@gmail.com>
2019-06-13build,win: delegate lint-cpp to makeRefael Ackermann
* look for GNU Make in the Path or use wsl PR-URL: https://github.com/nodejs/node/pull/28102 Fixes: https://github.com/nodejs/node/issues/28086 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: João Reis <reis@janeasystems.com>
2019-05-25build,win: create junction instead of symlink to `out\%config%`Refael Ackermann
PR-URL: https://github.com/nodejs/node/pull/27736 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2019-05-17build: add arm64 to vcbuild.bat help messageJon Kunkee
PR-URL: https://github.com/nodejs/node/pull/27683 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: João Reis <reis@janeasystems.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2019-04-22build,win: deprecate `vcbuild test-ci`Refael Ackermann
PR-URL: https://github.com/nodejs/node/pull/27231 Refs: https://github.com/google/googletest/tree/39f72ea6f5cd458860b563d7bcb7ea67546e6ea3 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2019-04-22deps,test: bump googletest to 39f72ea6f5Refael Ackermann
Refs: https://github.com/google/googletest/tree/39f72ea6f5cd458860b563d7bcb7ea67546e6ea3 PR-URL: https://github.com/nodejs/node/pull/27231 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2019-04-20build,win: bail vcbuild if mklink failsRefael Ackermann
PR-URL: https://github.com/nodejs/node/pull/27216 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2019-04-19build,win: rename node.lib to libnode.libRefael Ackermann
eliminate the need for `rename_node_bin_win` PR-URL: https://github.com/nodejs/node/pull/27150 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2019-04-16build: run `mkcodecache` as an actionRefael Ackermann
* fix test-code-cache (for the common cases) * deprecate `configure --code-cache-path` PR-URL: https://github.com/nodejs/node/pull/27161 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2019-04-12build,win: put all compilation artifacts into `out`Refael Ackermann
* Add symlink from Release to out\Release for backward compat PR-URL: https://github.com/nodejs/node/pull/27149 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2019-03-30build: remove unused label from vcbuild.batBen Noordhuis
Remove the :wix-not-found label and harmonize the spelling of "WiX". PR-URL: https://github.com/nodejs/node/pull/26901 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2019-03-07build,win: simplify new `msbuild_arg` optionRefael Ackermann
PR-URL: https://github.com/nodejs/node/pull/26431 Refs: https://github.com/nodejs/node/pull/25994 Reviewed-By: João Reis <reis@janeasystems.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2019-03-04win,build: add ARM64 support to vcbuild.batJon Kunkee
PR-URL: https://github.com/nodejs/node/pull/25995 Reviewed-By: João Reis <reis@janeasystems.com>
2019-03-04win,build: add arbitrary and binlog optionsJon Kunkee
This change adds a 'msbuild_arg' option to vcbuild.bat that can be used to pass arbitrary flags to MSBuild. It also adds a 'binlog' flag as a shortcut 'msbuild_arg' option to enable binary logging to `%config%\node.binlog`. This is especially convenient when debugging changes to the build system. In the process of developing this change, the idea of adding 'setlocal' to the beginning of the script was rejected since other scripts in this repo rely on the exported environment variables. This change adds a note describing this. PR-URL: https://github.com/nodejs/node/pull/25994 Reviewed-By: João Reis <reis@janeasystems.com>
2019-02-14build,win: emit MSBuild summaryRefael Ackermann
PR-URL: https://github.com/nodejs/node/pull/25931 Reviewed-By: João Reis <reis@janeasystems.com>
2019-02-14build,win: always build with PCHRefael Ackermann
PR-URL: https://github.com/nodejs/node/pull/25931 Reviewed-By: João Reis <reis@janeasystems.com>
2018-12-31win, build: fix building addons on WindowsBartosz Sosnowski
Building addons would fail because addon-verify.js dependencies from tools\doc where not installed. This fixes this issue by installing those dependencies if addons are to be built. Fixes: https://github.com/nodejs/node/issues/25096 PR-URL: https://github.com/nodejs/node/pull/25108 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-12-21tools: report unused disable-directives for ESLintRich Trott
Refs: https://eslint.org/docs/user-guide/command-line-interface#--report-unused-disable-directives PR-URL: https://github.com/nodejs/node/pull/25119 Reviewed-By: Teddy Katz <teddy.katz@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-12-05build,win: pack the install-tools scripts for distRefael Ackermann
PR-URL: https://github.com/nodejs/node/pull/24233 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: João Reis <reis@janeasystems.com>
2018-12-04test: partition N-API testsGabriel Schulhof
Partition test/addons-napi into test/js-native-api and test/node-api to isolate the Node.js-agnostic portion of the N-API tests from the Node.js-specific portion. PR-URL: https://github.com/nodejs/node/pull/24557 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
2018-11-29win, build: skip building cctest by defaultBartosz Sosnowski
vcbuild will build cctest only if it will be run, or for CI and release builds PR-URL: https://github.com/nodejs/node/pull/21408 Reviewed-By: João Reis <reis@janeasystems.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-11-10test: move benchmark tests out of main test suiteRich Trott
Move benchmark tests (which are slow) out of the main test suite. We can hopefully add them to node-daily-master so that they are still run daily on CI. PR-URL: https://github.com/nodejs/node/pull/24265 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-04doc: remove GA trackingBen Noordhuis
The Google Analytics tracking wasn't wholly uncontroversial and hasn't been used in practice. Remove it. PR-URL: https://github.com/nodejs/node/pull/23083 Fixes: https://github.com/nodejs/node/issues/22652 Refs: https://github.com/nodejs/node/pull/6601 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Roman Reiss <me@silverwind.io> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-10-02build: exclude npm test directories on WindowsRichard Lau
npm test directories are excluded on other platforms by `tools/install.py`. Do the same on Windows. Fixes: https://github.com/nodejs/node/issues/22901 PR-URL: https://github.com/nodejs/node/pull/23001 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: João Reis <reis@janeasystems.com>
2018-09-21build: make config verbose on CIRefael Ackermann
PR-URL: https://github.com/nodejs/node/pull/22935 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2018-09-19src: deprecate global COUNTER_* and remove perfctrJames M Snell
To support Performance Counters on Windows, a number of global `COUNTER_` methods were added that are undocumented and really only intended to be used internally by Node.js. Unfortunately, the perfctr support apparently hasn't even worked for quite a while and no one has even complained. This removes the perfctr support and replaces the global functions with deprecated non-ops for now, with the intent of removing those outright in the next major release cycle. PR-URL: https://github.com/nodejs/node/pull/22485 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: João Reis <reis@janeasystems.com>
2018-09-17build: skip cctest on Windows shared lib buildYihong Wang
cctest depends on some internal APIs which don't declare `__declspec(dllexport)` and causes build failure when building node as shared lib on Windows. Since we already have good test coverage in static lib, we decide to skip the cctest in shared lib build on Windows. Signed-off-by: Yihong Wang <yh.wang@ibm.com> PR-URL: https://github.com/nodejs/node/pull/21228 Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-09-11tools: use lint-md.jsRefael Ackermann
* remove unused `tools/remark-cli` * vcbuild tested with `vcbuild nobuild noprojgen lint-md-build lint-md` PR-URL: https://github.com/nodejs/node/pull/20109 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-09-08build: make doc generation work on WindowsTobias Nießen
PR-URL: https://github.com/nodejs/node/pull/22749 Refs: https://github.com/nodejs/node/pull/21697 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: James M Snell <jasnell@gmail.com>
2018-09-04build,win: remove unmatched `endlocal` statementRefael Ackermann
Seems like it's a leftover from c403eeb7fdf8c1033422b6ea8bf025667892f867 PR-URL: https://github.com/nodejs/node/pull/22627 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-09-02win, build: remove superfluous error messageBartosz Sosnowski
When building from clean checkout, `vcbuild` will produce superfluous error message about missing .tmp_gyp_configure_stamp and .gyp_configure_stamp. This removes both those messages. PR-URL: https://github.com/nodejs/node/pull/22580 Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-08-31win,build: build N-API addons in parallelBartosz Sosnowski
Ref: https://github.com/nodejs/node/pull/21403 PR-URL: https://github.com/nodejs/node/pull/22582 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-08-22build: use `npm ci`Refael Ackermann
* remove obsolete `node_modules/js-yaml/package.json` target * remove `@touch` since `npm ci` is always destructive PR-URL: https://github.com/nodejs/node/pull/22399 Refs: https://github.com/nodejs/node/pull/21802 Refs: https://github.com/nodejs/node/pull/21490 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Sam Ruby <rubys@intertwingly.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
2018-08-01test: remove test/gc, integrate into parallelAnna Henningsen
There’s no reason to have a separate addon just for testing GC anymore. PR-URL: https://github.com/nodejs/node/pull/22001 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jon Moss <me@jonathanmoss.me> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-07-27build,win,v8: allow precompiling objects-inl.hJoão Reis
This makes compiling v8_base much faster on Windows. Sharding is disabled because the header would have to be precompiled for each shard but is only once. The library is much smaller, so sharding is unnecessary. This is enabled by default, but disabled for CI and releases. PR-URL: https://github.com/nodejs/node/pull/21772 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Kyle Farnung <kfarnung@microsoft.com> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>
2018-07-25tools: produce JSON documentation using unified/remark/rehypeSam Ruby
PR-URL: https://github.com/nodejs/node/pull/21697 Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-07-20tools: create HTML docs with unified/remark/rehypeSam Ruby
PR-URL: https://github.com/nodejs/node/pull/21490 Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2018-07-19build: move to `npm ci` where possibleRich Trott
Recent events (involving a maliciously published version of a popular module's dependency) have reinvigorated my interest in seeing us move to `npm ci` instead of `npm install`. This moves us to `npm ci` where possible in Makefile and vcbuild.bat. PR-URL: https://github.com/nodejs/node/pull/21802 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2018-06-27build, win: make LTCG optionalBartosz Sosnowski
Disables Link Time Code Generation by default. Adds ‘ltcg’ vcbuild option to enable it. LTCG will be used by default by release and CI builds. PR-URL: https://github.com/nodejs/node/pull/21186 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2018-06-26win, build: generate .sln only when necessaryBartosz Sosnowski
When generating sln, store flags passed to configure. Next time, if node.sln exists and configure flags match those stored, skip building .sln files. Adds projgen vcbuild option to force .sln regeneration. PR-URL: https://github.com/nodejs/node/pull/21284 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2018-06-24win, build: fix building on 32-bit machinesBartosz Sosnowski
Fixes: https://github.com/nodejs/node/issues/21402 PR-URL: https://github.com/nodejs/node/pull/21437 Fixes: https://github.com/nodejs/node/issues/21402 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-06-24build: build addons in parallel on WindowsBartosz Sosnowski
Port https://github.com/nodejs/node/pull/21155 to vcbuild.bat PR-URL: https://github.com/nodejs/node/pull/21403 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-06-07win, build: add documentation support to vcbuildBartosz Sosnowski
Adds `doc` option to vcbuild.bat which will install node-doc-generator dependencies and build the documentation in the %config%\doc folder. Adds `lint-md-build` option which will download markdown linter. Adds `lint-md` option, included by default in `lint` and `test` options which will run linter on the markdown files in the doc folder. PR-URL: https://github.com/nodejs/node/pull/19663 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-05-31http2: switch to new runtime-controlled debugging systemAnna Henningsen
Remove `--debug-http2` as a compile-time feature and make all debug statements available using `NODE_DEBUG_NATIVE=http2` at runtime. This probably makes the debugging-enabled case a bit slower due to additional string concatenations, but switching to a runtime-checking system makes debugging more flexible and can be applied more easily to other parts of the source code as well. PR-URL: https://github.com/nodejs/node/pull/20987 Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Minwoo Jung <minwoo@nodesource.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-12build, win: opt-in openssl_no_asm if no nasm foundShigeki Ohtsu
Instead of automatically falling back to openssl_no_asm with warning if no nasm is found during build on Windows, this stops vcbuild.bat and requires users to specify openssl_no_asm option explicitly. Fixes: https://github.com/nodejs/node/issues/19918 PR-URL: https://github.com/nodejs/node/pull/19943 Refs: https://github.com/nodejs/node/pull/19930 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>
2018-04-10build, tools, win: add nasm detection for OpenSSLJoão Reis
OpenSSL-1.1.0 requires the nasm assembler for building asm files on Windows. This finds nasm at \Program Files\NASM\nasm.exe or \ProgramFiles(x86)\NASM\nasm.exe in vcbuild.bat for users who did not add its path in their enviroments. Fixes: https://github.com/nodejs/build/issues/1190 Fixes: https://github.com/nodejs/node/issues/4270 PR-URL: https://github.com/nodejs/node/pull/19794 Reviewed-By: Shigeki Ohtsu <ohtsu@ohtsu.org> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>