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

[FEA]: Change default CMake options from developer usecase to install-only / packaging usecase #1392

Open
1 task done
alliepiper opened this issue Feb 16, 2024 · 1 comment
Labels
feature request New feature or request.

Comments

@alliepiper
Copy link
Contributor

Is this a duplicate?

Area

General CCCL

Is your feature request related to a problem? Please describe.

The current default CMake options configure a build that is generally targeted at developers by enabling tests, etc. Now that we have presets designed for development and CI, the default CMake options no longer matter for these usecases.

I propose that we change the default options to be more convenient for users and packagers by only generating install rules when configuring CCCL as a top-level project.

The add_subdirectory usage of CCCL by users (e.g. submodules, CPM, fetch_content, etc) would not change, and would continue to provide the appropriate CMake targets for use in downstream projects.

Describe the solution you'd like

  1. Audit the current CMake options and change their defaults to only generate install rules.
  2. Ensure that any changed options are explicitly specified with the intended value in the CMake presets.
  3. Add CI job that configures CCCL with default options and only enables the CCCL install tests to verify that the default installation is functional.

Describe alternatives you've considered

No response

Additional context

No response

@alliepiper
Copy link
Contributor Author

#1945 added an install cmake preset that effectively provides the same functionality as this request through cmake --preset install.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request.
Projects
Status: Todo
Development

No branches or pull requests

1 participant