Skip to content

Update ports to remove -D_LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23 - #28203

Merged
aheejin merged 1 commit into
emscripten-core:mainfrom
aheejin:library_transitive_includes
Nov 7, 2026
Merged

aheejin merged 1 commit into
emscripten-core:mainfrom
aheejin:library_transitive_includes

Conversation

@aheejin

@aheejin aheejin commented Nov 7, 2026

Copy link
Copy Markdown
Member

libc++'s LLVM 23 update (#28149) removed transitive includes (llvm/llvm-project#195509), after which we some of our ports needed -D_LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23 to compile.

I've submitted fixes to those ports:

This updates version numbers and SHAs for Cocos2d and dawn and removes the -D_LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23 flag from our ports build.

This also adds -std=c++20 to two tests using Cocos2d because this update (which includes 6 months of work) includes C++20 features.

libc++'s LLVM 23 update (emscripten-core#28149) removed transitive includes
(llvm/llvm-project#195509), after which we
some of our ports needed `-D_LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23` to
compile.

I've submitted fixes to those ports:
- emscripten-ports/Cocos2d#6
- google/dawn#93, which was merged in
google/dawn@aaf0394
- pongasoft/emscripten-glfw#33, after which its
  TAG and SHA was updated in emscripten-core#28166

This updates version numbers and SHAs for Cocos2d and dawn and removes
the `-D_LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23` flag from our ports
build.

This also adds `-std=c++20` to two tests using Cocos2d because this
update (which includes 6 months of work) includes C++20 features.
@aheejin
aheejin requested a review from sbc100 November 7, 2026 04:36

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates several ports and their associated tests. Specifically, it bumps the cocos2d port to version 3.5 and the emdawnwebgpu port to version v20261105.214757, updating their respective hashes and test paths. It also adds the -std=c++20 compiler flag to WebGPU-related tests, removes the temporary -D_LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23 compiler flag from port builds, and refines the curl command in the hash computation documentation. There are no review comments, so I have no feedback to provide.

Comment thread tools/ports/__init__.py
@staticmethod
def fetch_project(name, url, sha512hash=None):
# To compute the sha512 hash, run `curl URL | sha512sum`.
# To compute the sha512 hash, run `curl -sSfL URL | sha512sum`.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Drive-by comment fix

@aheejin
aheejin merged commit 0710e80 into emscripten-core:main Nov 7, 2026
43 checks passed
@aheejin
aheejin deleted the library_transitive_includes branch November 7, 2026 10:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants