In build-wheels, fromager is called twice for each package being built. First, it calls the bootstrap command to generate the build-order.json file, then it calls build-sequence to what is listed in the build-order.json file.
In order to generate an accurate build-order.json file, fromager must build some of the dependencies. That's ok. The problem is that the content built by bootstrap is not really considered trusted by the fromager maintainers.
Let's change the build-wheels script to throw away any built content from the bootstrap command:
- For each package
- Run
bootstrap for the package.
- Delete all the generated files, except the
build-order.json file.
- For each
build-order.json file
- Run
build-sequence for the file.
- Clean up the
work-dir. Keep all other files, including sdist-repo and wheel-repo. We want to re-use those when building multiple packages.
In build-wheels, fromager is called twice for each package being built. First, it calls the
bootstrapcommand to generate thebuild-order.jsonfile, then it callsbuild-sequenceto what is listed in thebuild-order.jsonfile.In order to generate an accurate
build-order.jsonfile, fromager must build some of the dependencies. That's ok. The problem is that the content built bybootstrapis not really considered trusted by the fromager maintainers.Let's change the
build-wheelsscript to throw away any built content from thebootstrapcommand:bootstrapfor the package.build-order.jsonfile.build-order.jsonfilebuild-sequencefor the file.work-dir. Keep all other files, including sdist-repo and wheel-repo. We want to re-use those when building multiple packages.