Skip to content

build, v8: fix Temporal compilation with system or no ICU#62766

Open
Tmalone1250 wants to merge 1 commit intonodejs:mainfrom
Tmalone1250:fix-temporal-icu-62676
Open

build, v8: fix Temporal compilation with system or no ICU#62766
Tmalone1250 wants to merge 1 commit intonodejs:mainfrom
Tmalone1250:fix-temporal-icu-62676

Conversation

@Tmalone1250
Copy link
Copy Markdown

Fixes a build regression where Temporal fails to compile when configured with --without-intl or with system ICU.

Root Cause:

  1. Build System: v8.gyp was missing the make_temporal_zoneinfo_cpp action (present in V8's BUILD.gn), which is required to generate the baked-in zoneinfo64_static_data used when ICU is disabled or incomplete.
  2. Source Code: deps/v8/src/objects/js-temporal-zoneinfo64.cc had a hard-coded include of udatamem.h, a private ICU header that is not exported in system-ICU installations.

Changes:

  • Ported make_temporal_zoneinfo_cpp to tools/v8_gypfiles/v8.gyp.
  • Added __has_include("udatamem.h") guard to js-temporal-zoneinfo64.cc.
  • Implemented a resilient fallback to static data when the private header is missing.

Verified via configure --with-intl=none --v8-enable-temporal-support.

Refs: #62676

@nodejs-github-bot
Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/gyp
  • @nodejs/security-wg
  • @nodejs/v8-update

@nodejs-github-bot nodejs-github-bot added needs-ci PRs that need a full CI run. tools Issues and PRs related to the tools directory. v8 engine Issues and PRs related to the V8 dependency. labels Apr 16, 2026
@aduh95
Copy link
Copy Markdown
Contributor

aduh95 commented Apr 16, 2026

Looks like this works on shared ICU, too. We would need to send the patch upstream, could you do that? See https://v8.dev/docs/contribute for instructions

@aduh95 aduh95 requested a review from richardlau April 16, 2026 08:30
@Tmalone1250
Copy link
Copy Markdown
Author

@aduh95 Thanks for the validation. I will begin the process for sending it upstream.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-ci PRs that need a full CI run. tools Issues and PRs related to the tools directory. v8 engine Issues and PRs related to the V8 dependency.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants