What's with the LLVM version numbers in Emscripten #17549
-
Sometime in the last month my project started getting a lot of
After the warnings (the oldest build in my CI with the warnings is from 18 days ago. Emscripten reports
The reported version numbers are the same!!! Thinking this failure to change version numbers despite a significant change must be an LLVM issue I went to their GitHub repo listed above only to discovered that 15.0.0 is not released yet! The most recent release is 15.0.0-rc2 released only 2 days ago. The previous release is 14.0.6. I have not found a way to search for a matching commit on GitHub so I've not been able to track down the commits listed above. What is going on here:
Either one is bad. I'm using the Docker image with The fundamental issue I have here is that I'm setting source properties on some files o turn off their warnings. The files are in submodules hence I don't want to modify them. I have to base the property settings on the reported compiler version. If I blindly set, e.g., |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
Emscripten continuously pulls in tip-of-tree LLVM, so it picks up LLVM changes before they reach an LLVM release. However, the LLVM version numbers are only incremented at each release. For example, when LLVM 15 is released, the tip-of-tree version number that Emscripten pulls in will be changed to 16.
Nothing changes about the Emscripten release process when there is an LLVM release, so in general there will not be an Emscripten release that uses the exact commit of the LLVM release.
You can use the src/release-info.py script from https://chromium.googlesource.com/emscripten-releases/ to match Emscripten releases with commits in the LLVM, Binaryen, and Emscripten repos. You can also do it manually by looking at the |
Beta Was this translation helpful? Give feedback.
Emscripten continuously pulls in tip-of-tree LLVM, so it picks up LLVM changes before they reach an LLVM release. However, the LLVM version numbers are only incremented at each release. For example, when LLVM 15 is released, the tip-of-tree version number that Emscripten pulls in will be changed to 16.
Nothing changes about the Emscripten release process when there is an LLVM release, so in general there will not be an Emscripten release that uses the exact commit of the LLVM release.