-
Notifications
You must be signed in to change notification settings - Fork 162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate CI configs to CMake presets. #324
Conversation
7f828ee
to
a16631d
Compare
An overarching goal is to push as much logic into the cmake presets or cmake targets as possible. In other words, there should be very little logic in the build scripts themselves because that needs to be replicated across both Linux and Windows build scripts. Ideally, cmake should be the source of truth for everything.
|
re: architecture, I remembered that for the CI jobs, that is currently set in the matrix file here: I want to have a single source of truth whenever possible, so I think we could eliminate the Alternatively, the cmake presets could parse the architecture from the matrix.yaml file (assuming we had a top-level entry for the gpu archs). |
3b98cd3
to
1ffa72d
Compare
06ff31a
to
4eaa512
Compare
850074d
to
0b17fe2
Compare
We were destructively parsing the CLI args in build_common, but the test scripts needed those to persist so they could be passed to the build scripts after sourcing build_common.sh. This was causing the build/test scripts to execute with different parameters.
The usage of the atomics was removed in a previous commit, this removes the header to unblock the cl builds on sm60.
0b17fe2
to
3cae5b3
Compare
Can we also update the contributing guide section that describes how to use the scripts: https://github.com/NVIDIA/cccl/blob/main/CONTRIBUTING.md#building-and-testing |
# Prepare environment for CMake: | ||
export CMAKE_BUILD_PARALLEL_LEVEL="${PARALLEL_LEVEL}" | ||
export CTEST_PARALLEL_LEVEL="1" | ||
export CXX="${HOST_COMPILER}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
question (for self): Does this overwrite the CXX envvar after running the script?
Addressed requested changes
This is ready for another round of reviews. |
Description
Closes #252
MIgrate Thrust and CUB's Github CI config/build/test/ steps to use CMake presets.