diff --git a/README.md b/README.md index 8590c2b..31e387d 100644 --- a/README.md +++ b/README.md @@ -48,3 +48,18 @@ To install without the CUDA plugins, 1. Copy the migration file for python/cuda from [conda-forge/openmm-feedstock](https://github.com/conda-forge/openmm-feedstock) For eg: [python 3.12 migration](https://github.com/conda-forge/openmm-feedstock/blob/ce7e3376d2dfb1033460093daf8e324f8169d486/.ci_support/migrations/python312.yaml) 2. Run `./rerender.sh`. + +### Building downstream libraries as wheels + +To get downstream pacakges as wheels, we need to do the following, + +1. Get a `conda-forge` feedstock up and running. +2. Copy the feedstock into a new repo for wheel changes +3. Copy `recipe/build_openmm*`, `conda-forge.yml`, `recipe/conda_build_config.yaml`, `rerender.sh`, `download_wheels.sh` from this repo. +4. Copy the dependencies in `recipe/meta.yaml`'s `build` indicated by `# START WHEEL CHANGES`. +5. Make sure `host` in `recipe/meta.yaml` has no C++ shared dependencies on Linux. + To be compatible with `manylinux` spec, we need to build C++ shared libraries + in `recipe/build_openmm.sh`. +6. If there are CUDA specific plugins, then we need to provide a separate python wheel like + `openmm-cuda`. See `recipe/0001-wheels.patch` for how to do that. +7. Edit `recipe/build_openmm.sh` to update the lists of headers, libraries to include in each wheel.