Skip to content

Commit d883278

Browse files
committed
doc: add supported platforms list
1 parent 0510472 commit d883278

File tree

2 files changed

+61
-3
lines changed

2 files changed

+61
-3
lines changed

BUILDING.md

Lines changed: 60 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,78 @@ If you consistently can reproduce a test failure, search for it in the
99
file a new issue.
1010

1111

12+
## Supported platforms
13+
14+
This list of supported platforms is current as of the branch / release to which it is attached.
15+
16+
### Input
17+
18+
We rely on a few dependencies that _makes us who we are—most importantly V8 and libuv. We therefore need to adopt their supported platforms and potentially add to their lists based on test and/or release coverage.
19+
20+
### Strategy
21+
22+
Support is divided into three tiers:
23+
24+
* **Tier 1**: Full test coverage and maintenance by the Node.js core team and the broader community.
25+
* **Tier 2**: Full test coverage but more limited maintenance, often provided by the vendor of the platform.
26+
* **Experimental**: Known to compile but not necessarily reliably or with a full passing test suite. These are often working to be promoted to Tier 2 but are not quite ready. There is at least one individual actively providing maintenance and the team is striving to broaden quality and reliability of support.
27+
28+
### Supported platforms
29+
30+
| System | Support type | Version | Architectures | Notes |
31+
|--------------|--------------|----------------------------------|----------------------|------------------|
32+
| GNU/Linux | Tier 1 | kernel >= 2.6.18, glibc >= 2.5 | x86, x64, arm, arm64 | |
33+
| macOS | Tier 1 | >= 10.10 | x64 | |
34+
| Windows | Tier 1 | >= Windows 7 or >= Windows2008R2 | x86, x64 | |
35+
| SmartOS | Tier 2 | = 14 | x86, x64 | |
36+
| FreeBSD | Tier 2 | >= 10 | x64 | |
37+
| GNU/Linux | Tier 2 | kernel >= 4.2.0, glibc >= 2.19 | ppc64be | |
38+
| GNU/Linux | Tier 2 | kernel >= 3.13.0, glibc >= 2.19 | ppc64le | |
39+
| AIX | Tier 2 | >= 6.1 | ppc64be | |
40+
| GNU/Linux | Tier 2 | kernel >= 3.10, glibc >= 2.17 | s390x | |
41+
| macOS | Experimental | >= 10.8 < 10.10 | x64 | no test coverage |
42+
| SmartOS | Experimental | >= 15 | x86, x64 | |
43+
| Linux (musl) | Experimental | musl >= 1.0 | x64 | |
44+
45+
### Supported toolchains
46+
47+
Depending on host platform, the selection of toolchains may vary.
48+
49+
#### Unix
50+
51+
* GCC 4.8 or newer
52+
* Clang 3.4.1 or newer
53+
54+
#### Windows
55+
56+
* Building Node: Visual Studio 2015¹ or Visual C++ Build Tools 2015 or newer
57+
* Building native add-ons: Visual Studio 2013 or Visual C++ Build Tools 2015 or newer
58+
59+
### Shared libraries & dependencies
60+
61+
Node.js intends to support building against shared representations of dependencies found found in the [*deps*][./deps/] directory.
62+
63+
64+
## Building Node.js on supported platforms
65+
1266
### Unix / OS X
1367

1468
Prerequisites:
1569

1670
* `gcc` and `g++` 4.8 or newer, or
17-
* `clang` and `clang++` 3.4 or newer
71+
* `clang` and `clang++` 3.4.1 or newer
1872
* Python 2.6 or 2.7
1973
* GNU Make 3.81 or newer
2074

2175
On OS X, you will also need:
2276
* [Xcode](https://developer.apple.com/xcode/download/)
77+
<<<<<<< HEAD
2378
* You also need to install the `Command Line Tools` via Xcode. You can find
79+
=======
80+
- You also need to install the `Command Line Tools` via Xcode. You can find
81+
>>>>>>> doc: add supported platforms list
2482
this under the menu `Xcode -> Preferences -> Downloads`
25-
* This step will install `gcc` and the related toolchain containing `make`
83+
- This step will install `gcc` and the related toolchain containing `make`
2684

2785
* After building, you may want to setup [firewall rules](tools/macosx-firewall.sh)
2886
to avoid popups asking to accept incoming network connections when running tests:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ the binary verification command above.
132132
## Building Node.js
133133

134134
See [BUILDING.md](BUILDING.md) for instructions on how to build
135-
Node.js from source.
135+
Node.js from source along with a list of officially supported platforms.
136136

137137
## Security
138138

0 commit comments

Comments
 (0)