[petsc-dev] PETSc always recompiles mpi4py petsc4py even when it does not have too

Barry Smith bsmith at petsc.dev
Sun Oct 11 20:26:47 CDT 2020



> On Oct 11, 2020, at 1:46 PM, Satish Balay <balay at mcs.anl.gov> wrote:
> 
> Which is the correct thing to do. i.e:
> 
> if libpetsc.so is rebuilt - its dependencies should get rebuilt.
> 
> However - in cases where it doesn't get rebuilt (as make found no new
> sources to compile) - its probably best to add infrastructure to skip
> the rebuild of dependent packages.

  I think the correct solution is to pull the building of Petsc4py into the gmakefile building process (Jed wrote) which handles most dependencies well and could handle this as well.

  Barry

> 
> Satish
> 
> On Sun, 11 Oct 2020, Pierre Jolivet wrote:
> 
>> This actually applies to all packages with builtafterpetsc = 1.
>> I think you want to do make libs instead of make all?
>> 
>> Thanks,
>> Pierre
>> 
>>> On 11 Oct 2020, at 9:36 AM, Barry Smith <bsmith at petsc.dev> wrote:
>>> 
>>> 
>>>  I change a single PETSc file and do make all that single file gets compiled but all of mpi4py and petsc4py get recompiled even though I have not changed any thing to affect them. No include files for example
>>> 
>>> 
>>> *** Building mpi4py ***
>>> *** Installing mpi4py ***
>>> =====================================
>>> To use mpi4py, add /Users/barrysmith/Src/petsc/arch-cleanup-dmd-domaindecomposition/lib to PYTHONPATH
>>> =====================================
>>> *** Building petsc4py ***
>>> 
>> 
>> 
> 



More information about the petsc-dev mailing list