[petsc-dev] configure bug

Jed Brown jedbrown at mcs.anl.gov
Tue Nov 19 09:01:36 CST 2013

Barry Smith <bsmith at mcs.anl.gov> writes:
>> Simple, all warnings have been unconditionally ignored since before I
>> started working on PETSc.  We recently decided to switch to a blacklist
>> model so this will go away once we add this warning to the blacklist.
>    I cannot find the line of code that causes them to be
>    unconditionally ignored. Is it self.argDB['ignoreWarnings’] and
>    where is it set?

On petsc-maint last week (Message-ID: <871u2j65bi.fsf at jedbrown.org>), I

   In my opinion, this is wrong:


       help.addArgument('Framework', '-ignoreCompileOutput=<bool>', nargs.ArgBool(None, 1, 'Ignore compiler output'))

     def filterCompileOutput(self, output):
       if self.argDB['ignoreCompileOutput']:
         output = ''
       elif output:
         lines = output.splitlines()
         if self.argDB['ignoreWarnings']:
           # EXCEPT warnings that those bastards say we want
           extraLines = filter(lambda s: s.find('implicit declaration of function') >= 0, lines)
       ...... lots more stuff filter statements that are never executed

   We discussed it back in March and concluded that we needed to switch
   From a whitelist model (which was untenable and thus completely
   disabled) to a blacklist model that could hopefully actually be used.


It was introduced here:

commit 577260509c86b8c0284af12a6ddbb8bd44f21f15
Author: Matthew Knepley <knepley at mcs.anl.gov>
Date:   Thu Jan 23 11:45:06 2003 -0600

    knepley at khan.mcs.anl.gov|ChangeSet|20030123174506|60126
      1.411 03/01/23 11:45:06 knepley at khan.mcs.anl.gov +3 -0
      Configure fixes
       - Fixed output filtering
       - Fixed help
        1.17 03/01/23 11:45:05 knepley at khan.mcs.anl.gov +53 -27
        Now include an order number along with the comment in the help entries
         - This allows me to output the entries in the order they were specified
        Added default filterCompileOutput() and filterLinkOutput()
        Added --ignoreCompileOutput and --ignoreLinkOutput flags
        1.12 03/01/23 11:45:05 knepley at khan.mcs.anl.gov +1 -1
        New return type for outputLink()
        1.17 03/01/23 11:45:05 knepley at khan.mcs.anl.gov +19 -20
        Fixed command output filtering
         - Filtering should only be applied when checking for success, which
           makes sure all output is written to the log
         - Default filtering functions are found in framework
         - The outputCompile/Link() methods now return a tuple with the output
           and return code
    Hg-commit: 21d1fe720614ace980dec9fe92b74f6c89790af7

 config/base.py      | 39 +++++++++++-----------
 config/compilers.py |  2 +-
 config/framework.py | 76 +++++++++++++++++++++++++++++--------------
 3 files changed, 71 insertions(+), 46 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20131119/07f87477/attachment.sig>

More information about the petsc-dev mailing list