ECMAScript 402

V8 optionally implements the ECMAScript 402 API. The API is enabled by default, but can be turned off at compile time.


The i18n implementation adds a dependency on ICU. If you run

make dependencies

a suitable version of ICU is checked out into third_party/icu.

Alternative ICU checkout

You can check out the ICU sources at a different location and define the gyp variable icu_gyp_path to point at the icu.gyp file.

System ICU

Last but not least, you can compile V8 against a version of ICU installed in your system. To do so, specify the gyp variable use_system_icu=1. If you also have want_separate_host_toolset enabled, the bundled ICU will still be compiled to generate the V8 snapshot. The system ICU will only be used for the target architecture.

Embedding V8

If you embed V8 in your application, but your application itself doesn't use ICU, you will need to initialize ICU before calling into V8 by executing:


It is safe to invoke this method if ICU was not compiled in, then it does nothing.

Compiling without i18n support

To build V8 without i18n support use

make i18nsupport=off native