Skip to content
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

Remove having two install rules for <project>-header-search.cmake #298

Merged
merged 1 commit into from
Sep 18, 2023

Conversation

robertmaynard
Copy link
Contributor

Description

The install(DIRECTORY would generate one rule with an incorrect source file. This became an issue when a git clone and cmake configuration was executed within 1sec. CMake uses mtime to determine if a file is out of date, and in these cases the second proper install rule wouldn't run.

Checklist

  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

The install(DIRECTORY would generate one rule with an incorrect
source file. This became an issue when a git clone and cmake
configuration was executed within 1sec. CMake uses mtime
to determine if a file is out of date, and in these cases
the second proper install rule wouldn't run.
@robertmaynard robertmaynard requested review from a team as code owners August 3, 2023 17:59
@robertmaynard robertmaynard requested review from wmaxey and ericniebler and removed request for a team August 3, 2023 17:59
@miscco miscco merged commit 5905c62 into NVIDIA:main Sep 18, 2023
370 checks passed
rapids-bot bot pushed a commit to rapidsai/rapids-cmake that referenced this pull request Dec 14, 2023
CCCL's CMake is currently set up to exit early whenever it's added via `add_subdirectory`, which inadvertently prevents the install rules of its components (Thrust/CUB/libcudacxx) from being called. We don't currently have a way to tell CCCL not to do this because preventing that early exit leads to other undesirable outcomes (such as the CCCL::CCCL targets not being created correctly). Therefore, to work around this we must include the various install rule modules directly until this can be fixed upstream in CCCL.

In addition, we require a couple of patches to CCCL's CMake so that 1) the correct config files are installed, and 2) so that multiple invocations of `find_package(CCCL)` will work. These patches have already been fixed on the latest CCCL, see NVIDIA/cccl#298 and NVIDIA/cccl#1157.

Authors:
  - Vyas Ramasubramani (https://github.com/vyasr)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #505
@robertmaynard robertmaynard deleted the fix/multi_install_rule_error branch March 6, 2024 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet

2 participants