conda-forge / cuda-feedstock

A conda-smithy repository for cuda.
BSD 3-Clause "New" or "Revised" License
2 stars 9 forks source link

Add run requirements on `-dev` packages to `-static` packages across CUDA #31

Open vyasr opened 5 months ago

vyasr commented 5 months ago

Many CUDA packages on conda-forge publish static libraries. These libraries are named with the suffix -static, e.g. libcublas-static. Typically, we also offer corresponding dynamic libraries in -dev packages, and in those cases these static library packages generally require some components that are present in the corresponding dynamic library package. For example, the static libraries are typically not discoverable by CMake without the corresponding dynamic library.

In the initial iteration of the cf CUDA packages we chose to set a run_constrained dependency between the static and dynamic library packages of a given library to ensure that compatible versions are installed. We chose not to include a run requirement because adding a dependency later would be easier than removing one. Now that we have had these packages for a while and have had some experience with them, we know that the dependency is pretty much always a hard dependency. Given that consideration, we should replace the run_constrained with run in our recipes.