(root)/
make-4.4/
src/
debug.h
       1  /* Debugging macros and interface.
       2  Copyright (C) 1999-2022 Free Software Foundation, Inc.
       3  This file is part of GNU Make.
       4  
       5  GNU Make is free software; you can redistribute it and/or modify it under the
       6  terms of the GNU General Public License as published by the Free Software
       7  Foundation; either version 3 of the License, or (at your option) any later
       8  version.
       9  
      10  GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY
      11  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
      12  A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
      13  
      14  You should have received a copy of the GNU General Public License along with
      15  this program.  If not, see <https://www.gnu.org/licenses/>.  */
      16  
      17  #define DB_NONE         (0x000)
      18  #define DB_BASIC        (0x001)
      19  #define DB_VERBOSE      (0x002)
      20  #define DB_JOBS         (0x004)
      21  #define DB_IMPLICIT     (0x008)
      22  #define DB_PRINT        (0x010)
      23  #define DB_WHY          (0x020)
      24  #define DB_MAKEFILES    (0x100)
      25  
      26  #define DB_ALL          (0xfff)
      27  
      28  extern int db_level;
      29  
      30  #define ISDB(_l)    ((_l)&db_level)
      31  
      32  /* When adding macros to this list be sure to update the value of
      33     XGETTEXT_OPTIONS in the po/Makevars file.  */
      34  #define DBS(_l,_x)  do{ if(ISDB(_l)) {print_spaces (depth); \
      35                                        printf _x; fflush (stdout);} }while(0)
      36  
      37  #define DBF(_l,_x)  do{ if(ISDB(_l)) {print_spaces (depth); \
      38                                        printf (_x, file->name); \
      39                                        fflush (stdout);} }while(0)
      40  
      41  #define DB(_l,_x)   do{ if(ISDB(_l)) {printf _x; fflush (stdout);} }while(0)