On Mon, Mar 14, 2011 at 17:00, Barry Smith <bsmith at mcs.anl.gov> wrote:

> Then basically almost all the headers belong in include/something because
> they can and sometimes are used by outsiders. For example access to the guts
> of any matrix class for implementation in heritence, access to the guts of
> the gmres data-structure to implement a modified gmres like fgmres, lgmres
> etc. pc_mg for sure
>
>   So how do we organize private? Same as the source tree?
> mat/impls/aij/seq    etc etc?  dump everything in one directory yuck?
>

I see a total of 70 implementation headers, not sure what fraction of those
should be "open". Mirroring the source tree makes it easy to find the
location of the "primary" user (*.c files) of a given header, but it also
forces that there always be a primary user. Perhaps it's reasonable for
things with no primary user to go directly into private/*.h instead of
private/pkg/**/*.h.

I don't have a strong preference either way.


>   I had resisted doing this but maybe it is the way to go.
>

I think it's the right thing if plugin developers/users and prefix installs
are to be first-class citizens.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20110314/affef305/attachment.html>

Reply via email to