Compiling with your own PETSc and SLEPc builds

How can I make the Python configure build system avoid refreshing source code that it’s already downloaded? When configuring PETSc, and indirectly building scalapack from PETSc (because of the --download-scalapack flag) I’m getting an error in MacOS because the ${objslamov} objects in Makefile.parallel from scalapack are missing the -isysroot flag pointing to the MacOS SDK (while the rest of objects in Makefile.parallel are keeping the flag). The fix is shockingly simple (just add the -isysroot flag to Makefile.parallel and then scalapack builds successfully), but then when I try to rerun the PETSc configure line from your tutorial, it cleans scalapack, downloads it again, and of course it fails :frowning_face:

Is there any way for telling the Python configure not to redownload a package and just use the version already downloaded?