[petsc-dev] [petsc-maint] Updating PETSc to support Elemental 0.80

Jack Poulson jack.poulson at gmail.com
Mon Jun 24 13:15:29 CDT 2013


On Mon, Jun 24, 2013 at 9:39 AM, Satish Balay <balay at mcs.anl.gov> wrote:

> On Sun, 16 Jun 2013, Jack Poulson wrote:
>
> > On Sun, Jun 16, 2013 at 4:37 PM, Jack Poulson <jack.poulson at gmail.com
> >wrote:
> >
> > > On Sun, Jun 16, 2013 at 4:09 PM, Satish Balay <balay at mcs.anl.gov>
> wrote:
> > >
> > > On Sun, 16 Jun 2013, Jack Poulson wrote:
> > >>
> > >> > I have been experimenting with having Clique checkout both
> pkg-metis and
> > >> > pkg-parmetis as part of its build system and it seems that a few
> things
> > >> > need to be added to the parmetis CMakeLists.txt for it to function
> > >> > correctly (please correct me if I am missing something!).
> > >> >
> > >> > The two main problems are the inclusion of gklib_tls.h and
> gklib_defs.h,
> > >> > where the former is generated by the metis build system, usually in
> > >> > metis/include in the installation directory, and the latter is is in
> > >> > metis/libmetis/ in the source directory. While setting METIS_PATH
> to the
> > >> > metis installation directory would pick up gklib_tls.h since
> > >> > ${METIS_PATH}/include is added to the include directories of the
> > >> parmetis
> > >> > CMakeLists.txt, I do not see any corresponding include_directories
> > >> > statement for the libmetis directory containing gklib_defs.h.
> > >>
> > >> Its also installed in CMAKE_INSTALL_PREFIX/include?
> > >>
> > >>
> > >>
> https://bitbucket.org/petsc/pkg-metis/commits/7352fdb4f3027f2330d69896c938fc4996f66461
> > >>
> > >
> > > Apparently so. but I am trying to build metis and parmetis as part of
> the
> > > build (my CMakeLists.txt checks out the pkg-metis and pkg-parmetis
> > > repositories). I would prefer to be able to do things this way instead
> of
> > > requiring metis to have been installed previously. I should have been
> more
> > > clear with my previous language: when I said 'installation' directory,
> I
> > > should have said 'build' directory.
> > >
> > >
> > Additionally, pkg-metis does not seem to be iinstalling enough header
> files
> > for parmetis to be successfully built. In particular, it is not
> installing
> > the headers from the GKlib folder:
> >
> > poulson at poulson-ThinkPad-E520:~/Source/External/pkg-metis/build$ make
> > install
> > [100%] Built target metis
> > Install the project...
> > -- Install configuration: ""
> > -- Up-to-date: /home/poulson/Source/Install/include/metis.h
> > -- Up-to-date: /home/poulson/Source/Install/include/gklib_tls.h
> > -- Up-to-date: /home/poulson/Source/Install/lib/libmetis.a
> > -- Up-to-date: /home/poulson/Source/Install/include/gklib_defs.h
> > -- Up-to-date: /home/poulson/Source/Install/include/gklib_rename.h
> >
> > What is the recommended means of coupling pkg-metis and pkg-parmetis?
>
> I don't understand the issue here.
>
> When PETSc is building metis/parmetis - things appear to be installed
> correctly.
>
> Satish
>
>
parmetislib.h internally includes GKlib.h, which is not installed by
pkg-metis. However, there is a GKlib.h header in pkg-parmetis/headers,
though the headers/ directory is not searched by CMake. Perhaps an
'include_directories(headers)' statement should be added to line 26 of
pkg-parmetis/CMakeLists.txt.

Is PETSc using these CMakeLists.txt files? I can now build pkg-parmetis on
top of a pkg-metis install if I make the above change (and uncomment out
lines 9-13 of pkg-parmetis/CMakeLists.txt and actually search for MPI).

Jack
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20130624/fade4077/attachment.html>


More information about the petsc-dev mailing list