[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: petsc-dev directory structure questions




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?

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.

   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.



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?

   Barry



With this, the curent user interface of ./config/configure.py
./config/linux-gnu.py would be unchanged.

Satish

On Fri, 14 Dec 2007, Satish Balay wrote:

I guess my thoughts in the previous e-mail were all over the place -
so here is an attempt to get something consistant out.


<Barry>

2) putting the ons of sample configure.py files for different systems
into a subdirectory called samples

<Richard>
A much more descriptive name for the 'config' directory would be
something like 'BuildScripts'.

<Lisandro>
* I'm on Richard's side. I believe all the build scripts in 'config'
should be placed in other location, let say 'maint/BuildScripts/'.

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

One issue here is - when you refer to scripts in config - are you
refering to things like just 'linux-gnu.py' or both configure.py &
linux-gnu.py.

** In the current design _both_ scripts are equivalent [wrt user
invocation]. Hence in the same location. **

<option1>
So the current porposal of PETSC_DIR/BuildScripts & PETSC_DIR/config
is _exaclty_ the same organization as what we had before [with
PETSC_DIR/config & PETSC_DIR/python], with dirs being renamed.
PETSC_DIR/python could have aswell be moved to PETSC_DIR/src/foobar
[and it would still be consistant to me].

Issue: Woud user now invoke ./BuildScripts/configure.py?

<option2>
However if the intent is to splitup configure.py & linux-gnu.py, the
organization avaliable is: PETSC_DIR/configure.py, PETSC_DIR/config,
and PETSC_DIR/BuildScripts.

*****
With the above two options , Barrys primary concern with eliminating
one of 'conf' and 'config' is not resolved. [only better renaming is
done, with a cost of different ueser interface with ./configure.py and
./BuildScripts/linux-gnu.py]
******


<option2A>
Now move PETSC_DIR/config to PETSC_DIR/src/config-foobar. This removes
one dir from PETSC_DIR [however BuildScripts & conf, configure.py
still remain]


<options2B>
Also move PETSC_DIR/BuildScripts to PETSC_DIR/maint/BuildScripts.
However with this approach [as we don't distribute 'maint' to users,
this would be loss in usr functionality.

We are attempting all of this reorganization just because the name
'conf' is too close to 'config'. [And I fear we might break more than
what we are fixing]

Satish