llvm build fix#7
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the project’s CMake configuration and CI setup to better support C++23 builds (including module/std import experimentation) across platforms.
Changes:
- Centralized common CMake preset settings (Ninja generator + build/install directories) into the shared
basepreset. - Tightened C++ standard enforcement and updated the CMake version gating for
CMAKE_EXPERIMENTAL_CXX_IMPORT_STD. - Adjusted Ubuntu CI compiler setup toward LLVM/Clang 19 and attempted to force
clang/clang++to point to version 19.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| CMakePresets.json | Moves generator/build/install directory settings into the shared base preset for reuse. |
| CMakeLists.txt | Enforces C++23 more strictly and updates experimental import std GUID selection by CMake version. |
| .github/workflows/cmake-multi-platform.yml | Updates Ubuntu compiler setup to LLVM/Clang 19 and adds update-alternatives steps. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-19 100 | ||
| sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-19 100 |
There was a problem hiding this comment.
The new update-alternatives calls assume /usr/bin/clang-19 and /usr/bin/clang++-19 exist on the runner. If aminya/setup-cpp installs LLVM into a different prefix (common on GitHub runners), this step will fail and break CI. Consider either (a) installing clang-19 via apt-get explicitly before calling update-alternatives, (b) guarding these commands with an existence check, or (c) setting CC/CXX to the exact compiler path provided by the setup action instead of rewriting system alternatives.
| sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-19 100 | |
| sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-19 100 | |
| if [ -x /usr/bin/clang-19 ]; then | |
| sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-19 100 | |
| fi | |
| if [ -x /usr/bin/clang++-19 ]; then | |
| sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-19 100 | |
| fi |
No description provided.