[petsc-dev] get moving on gnu make version of PETSc compiler

Jed Brown jedbrown at mcs.anl.gov
Tue Sep 17 23:21:48 CDT 2013


Satish Balay <balay at mcs.anl.gov> writes:
> balay at petsc^/sandbox/balay/petsc.clone((4920dd4...)) $ git diff
> diff --git a/config/BuildSystem/config/packages/MPI.py b/config/BuildSystem/config/packages/MPI.py
> index a0232eb..14e976f 100644
> --- a/config/BuildSystem/config/packages/MPI.py
> +++ b/config/BuildSystem/config/packages/MPI.py
> @@ -289,6 +289,7 @@ class Configure(config.package.Package):
>    def alternateConfigureLibrary(self):
>      '''Setup MPIUNI, our uniprocessor version of MPI'''
>      self.addDefine('HAVE_MPIUNI', 1)
> +    self.addMakeMacro('PETSC_USING_MPIUNI', 1)

I used MPI_IS_MPIUNI because BuildSystem should not depend on PETSc.

>      #
>      #  Even though MPI-Uni is not an external package (it is in PETSc source) we need to stick the
>      #  include path for its mpi.h and mpif.h so that external packages that are built with PETSc to
> diff --git a/gmakefile b/gmakefile
> index bd3ef2e..50187e6 100644
> --- a/gmakefile
> +++ b/gmakefile
> @@ -134,6 +134,17 @@ $(OBJDIR)/%.o : %.cu | $$(@D)/.DIR
>         $(PETSC_COMPILE.cu) $< -o $@ # Compile first so that if there is an error, it comes from a normal compile
>         @$(PETSC_GENDEPS.cu) $< -o $(@:%.o=%.d) # Generate the dependencies for later
>  
> +ifeq ($(PETSC_USING_MPIUNI),1)
> +$(OBJDIR)/src/sys/f90-mod/petscsysmod.o:$(OBJDIR)/src/sys/mpiuni/f90-mod/mpiunimod.o
> +MPIUNI_MOD = $(PETSC_ARCH)/include/mpi.mod
> +endif
> +$(OBJDIR)/src/vec/f90-mod/petscvecmod.o:$(OBJDIR)/src/sys/f90-mod/petscsysmod.o
> +$(OBJDIR)/src/mat/f90-mod/petscmatmod.o:$(OBJDIR)/src/vec/f90-mod/petscvecmod.o
> +$(OBJDIR)/src/dm/f90-mod/petscdmmod.o:$(OBJDIR)/src/mat/f90-mod/petscmatmod.o
> +$(OBJDIR)/src/ksp/f90-mod/petsckspmod.o:$(OBJDIR)/src/dm/f90-mod/petscdmmod.o
> +$(OBJDIR)/src/snes/f90-mod/petscsnesmod.o:$(OBJDIR)/src/ksp/f90-mod/petsckspmod.o
> +$(OBJDIR)/src/ts/f90-mod/petsctsmod.o:$(OBJDIR)/src/snes/f90-mod/petscsnesmod.o

I've added a slightly-modified version of this and merged to 'next'.
Will merge to 'master' if there are no problems.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20130917/12ee5674/attachment.sig>


More information about the petsc-dev mailing list