Skip to content

Conversation

@DDEle
Copy link
Contributor

@DDEle DDEle commented Nov 25, 2025

Proposed changes

Move settings in script/cmake-ck-dev.sh to CMakePresets.json, which is a modern and more common way to do this thing. script/cmake-ck-dev.sh is kept currently for compatibility.

Some examples of using presets

  • cmake .. --preset dev-gfx950 (use the preset for gfx950)
  • cmake .. --preset dev -DGPU_TARGETS=gfx950 (command line options can overwrite settings in the preset)
  • cmake .. -GNinja --preset dev-gfx950 -DCK_CXX_STANDARD=17 (compile with c++17)
  • cmake .. --preset dev-gfx950 -GNinja -DBUILD_DEV=OFF (disable-Werror)

Checklist

Please put an x into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask.

  • I have added tests relevant to the introduced functionality, and the unit tests are passing locally
  • I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, IF the test takes more than 30 seconds to run.
  • I have added inline documentation which enables the maintainers with understanding the motivation
  • I have removed the stale documentation which is no longer relevant after this pull request
  • (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request
  • I have run clang-format on all changed files
  • Any dependent changes have been merged

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR modernizes the CMake configuration by migrating from shell script-based settings to CMakePresets.json, a standard CMake feature for managing build configurations. The changes maintain backward compatibility with the existing shell script while providing a cleaner, more maintainable approach.

Key Changes:

  • Introduced CMakePresets.json with predefined configurations for different AMD GPU targets (gfx908, gfx90a, gfx942, gfx950)
  • Updated the minimum CMake version requirement from 3.14 to 3.21 to support CMake presets
  • Modified Jenkinsfile to use the new preset-based configuration approach

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
CMakePresets.json New file defining build presets for development builds across different GPU targets with shared base configuration
script/cmake-ck-dev.sh Simplified to invoke cmake with the dev preset instead of manually specifying all configuration flags
Jenkinsfile Updated two test pipeline stages to use preset-based cmake commands instead of the shell script
CMakeLists.txt Bumped minimum CMake version from 3.14 to 3.21 to support CMakePresets.json

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@illsilin illsilin self-assigned this Jan 20, 2026
@illsilin illsilin merged commit f41f37d into develop Jan 21, 2026
4 of 6 checks passed
@illsilin illsilin deleted the cmake-presets branch January 21, 2026 16:04
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.

3 participants