[petsc-dev] configure issues

Jed Brown jed at 59A2.org
Wed Feb 9 05:49:43 CST 2011


On Wed, Feb 9, 2011 at 12:33, Matthew Knepley <knepley at gmail.com> wrote:

> If you refer to the first part of your comment above, it suggested
> generating the correct code,


So every function in PETSc that currently does

#if something
...
#else
...
#endif

would be replaced by generated headers and source files that have only the
chosen path. I think this will make it far more confusing to find out what
paths are possible, to make edits safely, and to locate definitions. I do
not know of any successful project that generates code for something like
this.

Barry was not suggesting any new use of the preprocessor, just renaming
existing macros to make navigation easier. I think it's fine to keep the
existing names and instead write a snippet of elisp to make navigation
easier. Your response that all use of the preprocessor should be replaced by
generated code (or something) does not address the problem at all, and, if
anything, makes it worse because configure would become more complicated.

For what it's worth, despite Python being "better" in all the ways you
mention, I don't know anybody who finds it easier/safer/faster to edit
BuildSystem code than to edit PETSc C source. This is less a statement about
the language and more a statement about organization, but I would be very
cautious about moving large amounts of complexity from src/*.c to
config/*.py.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20110209/804c2320/attachment.html>


More information about the petsc-dev mailing list