Home | History | Annotate | Download | only in make-3.81
      1 /* Debugging macros and interface.
      2 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software
      3 Foundation, Inc.
      4 This file is part of GNU Make.
      5 
      6 GNU Make is free software; you can redistribute it and/or modify it under the
      7 terms of the GNU General Public License as published by the Free Software
      8 Foundation; either version 2, or (at your option) any later 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 GNU Make; see the file COPYING.  If not, write to the Free Software
     16 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.  */
     17 
     18 #define DB_NONE         (0x000)
     19 #define DB_BASIC        (0x001)
     20 #define DB_VERBOSE      (0x002)
     21 #define DB_JOBS         (0x004)
     22 #define DB_IMPLICIT     (0x008)
     23 #define DB_MAKEFILES    (0x100)
     24 
     25 #define DB_ALL          (0xfff)
     26 
     27 extern int db_level;
     28 
     29 #define ISDB(_l)    ((_l)&db_level)
     30 
     31 #define DBS(_l,_x)  do{ if(ISDB(_l)) {print_spaces (depth); \
     32                                       printf _x; fflush (stdout);} }while(0)
     33 
     34 #define DBF(_l,_x)  do{ if(ISDB(_l)) {print_spaces (depth); \
     35                                       printf (_x, file->name); \
     36                                       fflush (stdout);} }while(0)
     37 
     38 #define DB(_l,_x)   do{ if(ISDB(_l)) {printf _x; fflush (stdout);} }while(0)
     39