[petsc-dev] What is this for?

Sean Farley sean at mcs.anl.gov
Wed Nov 16 00:47:06 CST 2011


>
> I still don't like this. I think modifying (or copying) source files is
> bad, not least because of interaction with the debugger, compilation
> errors, and other builds with different configurations.
>

>From what Barry and I talked about earlier today, he doesn't mean copying
or modify source files, but rather, having a tool that builds a (partial?)
AST that would parse / gather / (clang?) this kind of information
automatically.

I wouldn't mind something like
>
> #include <parmetis.h>  /*R CFLAGS:PETSC_PARMETIS_FLAGS
> INCLUDES:PETSC_PARMETIS_INCLUDES LIBS:PETSC_PARMETIS_LIBS R*/
>
> that would inform the build system that PETSC_PARMETIS_INCLUDES and flags
> are required to build that file and that the libs are required to link. The
> "normal" user can read the file and add that to their build system manually.
>

So, this is basically what I think Barry meant ... except the whole /*R
<flags> R*/ part. Modern compilers ("compilers not designed 40 years ago" -
Barry Smith) should be able to give access to things like BuildSystem to
build this structure automatically without human interaction.

I, for one, welcome our new Compiler Overlords.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20111116/6311230c/attachment.html>


More information about the petsc-dev mailing list