<div class="gmail_quote">On Tue, Nov 15, 2011 at 22:50, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Yes, we'll need to make sure that the public PETSc include files don't require goofy preprocessing but I think that is possible, it is only the source code files (and maybe some private include files) that need the goofy preprocessing.</blockquote>
</div><br><div>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.</div>
<div><br></div><div><br></div><div>I wouldn't mind something like</div><div><br></div><div>#include <parmetis.h>  /*R CFLAGS:PETSC_PARMETIS_FLAGS INCLUDES:PETSC_PARMETIS_INCLUDES LIBS:PETSC_PARMETIS_LIBS R*/</div>
<div><br></div><div>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.</div>