petsc-dev directory structure questions

Satish Balay balay at mcs.anl.gov
Fri Dec 14 13:38:53 CST 2007


On Fri, 14 Dec 2007, Barry Smith wrote:

> 
> On Dec 14, 2007, at 12:05 PM, Satish Balay wrote:
> 
> > On further thought, I'm ok with merging conf and config - provided
> > 'config' [which would be the new merged name for conf]
> 
>   Why config instead of conf?

I picked 'config' just so that './config/configure.py' user interface
is preserved.

> > would not have
> > any of the old $PETSC_DIR/python stuff. [i,e if it goes somewere into
> > $PETSC_DIR/src/foobar]
> 
>   Why should it go somewhere else; it manages all the configuration
> so it should be with the configuration stuff.

There is a difference between pythonmodules [i.e old PETSC_DIR/python]
and python-usercode [i.e configure.py]. And I certainly don't like
dumping all 3 [petscconf, configure.py & python-modules] in the same
location.

Ideally they should be in 3 different locations.  But I'm buying the
argument that there is a weak relation between petscconf and
configure.py so its not terrible to have these two together. [There is
a stronger relation between pythonmodules & configure.py]. But having
all 3 in config is just not right. I can't see a way to explain why
that would be a consistant design. [and if we can put any thing
anywhere - jut because its convinent - we could probably throw away
lot more things].

>   src traditional means code that gets compiled up and put in a
> library or executable: the old PETSC_DIR/python stuff definitely
> does not fit in that category.

Not really - src is source for anything. For eg: we have
src/docs/website src/docs/manual which are sources for other
derivative stuff [aka manual.pdf, http://www.mcs.anl.gov/petsc]

If we stick to your argument - then we'll have to find new places for
this [i.e go back to PETSC_DIR/src where sources & generated docs were
dumped in the same location with too much confusion about website?]

> > We currently have generated files anyway at
> > PETSC_ARCH/conf/[configure.py,petscconf,petscrules], so I guess
> > PETSC_DIR/config/[configure.py,linux-gnu.py,base,rules,..]  should be
> > equivalent.
> 
>  Having PETSC_DIR/config/variables,rules but
> PETSC_ARCH/conf/petscconf seems VERY wrong to me. Why is
> one directory config and the other one conf?

I guess I was implicitly indicating we should obsolete either 'conf'
or 'config'. And I sugested using config.

So PETSC_DIR/config & PETSC_ARCH/config would be the only new names.

Satish




More information about the petsc-dev mailing list