-
Notifications
You must be signed in to change notification settings - Fork 12
Open
Labels
cmakeRelated to the CMake build backendRelated to the CMake build backend
Description
A single cmake project can build a library, viewers, headers, examples, tests, etc. All of these are represented as different "targets".
When we build a project, the cmake build backend installs the default (ALL_BUILD
) target, which installs all targets together. However, this might not be desired. Instead, it might be desirable to produce independent conda packages.
I propose that we provide some control to the user to allow mapping cmake targets to conda package outputs:
[[tool.pixi-build-cmake.outputs]]
# The name of the conda package
name = "library"
# The CMake target name. We will invoke `install/<cmake_target_name>` to build the package.
# Defaults to `name` if not specified
cmake_target_name = "my_library"
[[tool.pixi-build-cmake.outputs]]
# The name of the conda package
name = "viewer"
# Record a dependency on another cmake target. This will be reflected as a conda dependency.
# Any name mentioned here must be another output.
dependencies = ["library"]
If the outputs
array is empty the default target will be packaged.
Metadata
Metadata
Assignees
Labels
cmakeRelated to the CMake build backendRelated to the CMake build backend