-
Notifications
You must be signed in to change notification settings - Fork 24
Support buildng multiple outputs from a recipe #138
Copy link
Copy link
Open
Description
This feature request is based on a requirement that came up in #109 – it would be great if we could also support the conda-forge feature for multiple outputs for builds, which would use the same build environment for building multiple variations of a package.
The proposed implementation could be as follows:
- add an
outputs:field to the recipe that allows subfields such asscript:,about:post:, morerequirements:(and sub-requirements), etc. - build in the order they are specified, building the first listed output and proceed to the next one if it passes
- we can stop if it fails; I don't think we need a --keep-going option or building in parallel at the moment
- the graph builder can keep the same logic, more or less – it's just that one recipe will generate
$n$ packages instead of just one
The rationale is that many recipes could benefit from this – for example:
- packages such as NumPy/SciPy/etc. and various Meson-based packages can then use their "install tags" integration with Meson to build WASM wheels for
scipyandscipy-tests, which can be installed together in the same environment. this can be used to control build sizes better than stripping away wheels. - it allows packages to ship multiple variants of their builds: we could ship NumPy + OpenBLAS and NumPy with Netlib BLAS from the same recipe file, just with different build scripts listed together.
- for libraries: SuiteSparse, for example, can be instructed to build different components separately for packages that need only a specific one.
Reference:
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels