@@ -8,6 +8,71 @@ If you consistently can reproduce a test failure, search for it in the
88[ Node.js issue tracker] ( https://github.com/nodejs/node/issues ) or
99file a new issue.
1010
11+ ## Supported platforms
12+
13+ This list of supported platforms is current as of the branch / release to
14+ which it is attached.
15+
16+ ### Input
17+
18+ Node.js relies on V8 and libuv. Therefore, we adopt a subset of their
19+ supported platforms.
20+
21+ ### Strategy
22+
23+ Support is divided into three tiers:
24+
25+ * ** Tier 1** : Full test coverage and maintenance by the Node.js core team and
26+ the broader community.
27+ * ** Tier 2** : Full test coverage but more limited maintenance,
28+ often provided by the vendor of the platform.
29+ * ** Experimental** : Known to compile but not necessarily reliably or with
30+ a full passing test suite. These are often working to be promoted to Tier
31+ 2 but are not quite ready. There is at least one individual actively
32+ providing maintenance and the team is striving to broaden quality and
33+ reliability of support.
34+
35+ ### Supported platforms
36+
37+ | System | Support type | Version | Architectures | Notes |
38+ | --------------| --------------| ----------------------------------| ----------------------| ------------------|
39+ | GNU/Linux | Tier 1 | kernel >= 2.6.18, glibc >= 2.5 | x86, x64, arm, arm64 | |
40+ | macOS | Tier 1 | >= 10.10 | x64 | |
41+ | Windows | Tier 1 | >= Windows 7 or >= Windows2008R2 | x86, x64 | |
42+ | SmartOS | Tier 2 | >= 15 < 16.4 | x86, x64 | see note1 |
43+ | FreeBSD | Tier 2 | >= 10 | x64 | |
44+ | GNU/Linux | Tier 2 | kernel >= 4.2.0, glibc >= 2.19 | ppc64be | |
45+ | GNU/Linux | Tier 2 | kernel >= 3.13.0, glibc >= 2.19 | ppc64le | |
46+ | AIX | Tier 2 | >= 6.1 TL09 | ppc64be | |
47+ | GNU/Linux | Tier 2 | kernel >= 3.10, glibc >= 2.17 | s390x | |
48+ | macOS | Experimental | >= 10.8 < 10.10 | x64 | no test coverage |
49+ | Linux (musl) | Experimental | musl >= 1.0 | x64 | |
50+
51+ note1 - The gcc4.8-libs package needs to be installed, because node
52+ binaries have been built with GCC 4.8, for which runtime libraries are not
53+ installed by default. For these node versions, the recommended binaries
54+ are the ones available in pkgsrc, not the one available from nodejs.org.
55+ Note that the binaries downloaded from the pkgsrc repositories are not
56+ officially supported by the Node.js project, and instead are supported
57+ by Joyent. SmartOS images >= 16.4 are not supported because
58+ GCC 4.8 runtime libraries are not available in their pkgsrc repository
59+
60+ ### Supported toolchains
61+
62+ Depending on host platform, the selection of toolchains may vary.
63+
64+ #### Unix
65+
66+ * GCC 4.8.5 or newer
67+ * Clang 3.4.1 or newer
68+
69+ #### Windows
70+
71+ * Building Node: Visual Studio 2015 or Visual C++ Build Tools 2015 or newer
72+ * Building native add-ons: Visual Studio 2013 or Visual C++ Build Tools 2015
73+ or newer
74+
75+ ## Building Node.js on supported platforms
1176
1277### Unix / OS X
1378
@@ -20,9 +85,9 @@ Prerequisites:
2085
2186On OS X, you will also need:
2287* [ Xcode] ( https://developer.apple.com/xcode/download/ )
23- * You also need to install the ` Command Line Tools ` via Xcode. You can find
88+ - You also need to install the ` Command Line Tools ` via Xcode. You can find
2489 this under the menu ` Xcode -> Preferences -> Downloads `
25- * This step will install ` gcc ` and the related toolchain containing ` make `
90+ - This step will install ` gcc ` and the related toolchain containing ` make `
2691
2792* After building, you may want to setup [ firewall rules] ( tools/macosx-firewall.sh )
2893to avoid popups asking to accept incoming network connections when running tests:
@@ -51,7 +116,8 @@ the `-j4` flag. See the
51116[ GNU Make Documentation] ( https://www.gnu.org/software/make/manual/html_node/Parallel.html )
52117for more information.
53118
54- Note that the above requires that ` python ` resolve to Python 2.6 or 2.7 and not a newer version.
119+ Note that the above requires that ` python ` resolve to Python 2.6 or 2.7
120+ and not a newer version.
55121
56122To run the tests:
57123
@@ -252,9 +318,11 @@ It is possible to build Node.js with
252318
253319** Note** : building in this way does ** not** allow you to claim that the
254320runtime is FIPS 140-2 validated. Instead you can indicate that the runtime
255- uses a validated module. See the [ security policy] ( http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140sp/140sp1747.pdf )
321+ uses a validated module. See the
322+ [ security policy] ( http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140sp/140sp1747.pdf )
256323page 60 for more details. In addition, the validation for the underlying module
257- is only valid if it is deployed in accordance with its [ security policy] ( http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140sp/140sp1747.pdf ) .
324+ is only valid if it is deployed in accordance with its
325+ [ security policy] ( http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140sp/140sp1747.pdf ) .
258326If you need FIPS validated cryptography it is recommended that you read both
259327the [ security policy] ( http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140sp/140sp1747.pdf )
260328and [ user guide] ( https://openssl.org/docs/fips/UserGuide-2.0.pdf ) .
0 commit comments