Now building will no longer fail if PETSc isn't available, and it correctly degrades if it cannot find an available MPI. It should now behave similarly as other optionals, such as SuperLU.