X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=share%2Fusterr.h;h=a96a36f2525644456a44608dcf1529f807cfffa1;hb=2028e7fd97170e430b55b8c0e1a6ca1edca7680c;hp=9c4be7ee7aefff3fb58abb851c4f7e07401845b8;hpb=5de74e51f06139ba97ad5f6291417768ba3b82ca;p=ust.git diff --git a/share/usterr.h b/share/usterr.h index 9c4be7e..a96a36f 100644 --- a/share/usterr.h +++ b/share/usterr.h @@ -1,15 +1,26 @@ #ifndef USTERR_H #define USTERR_H -//#define DEBUG +#ifndef UST_COMPONENT +//#error UST_COMPONENT is undefined +#define UST_COMPONENT libust +#endif + +/* To stringify the expansion of a define */ +#define XSTR(d) STR(d) +#define STR(s) #s + +#define UST_STR_COMPONENT XSTR(UST_COMPONENT) + +#define DEBUG #ifdef DEBUG -# define DBG(fmt, args...) do { fprintf(stderr, fmt "\n", ## args); fflush(stderr); } while(0) +# define DBG(fmt, args...) do { fprintf(stderr, UST_STR_COMPONENT ": " fmt "(" __FILE__ ":" XSTR(__LINE__) ")\n", ## args); fflush(stderr); } while(0) #else # define DBG(fmt, args...) do {} while(0) #endif -#define WARN(fmt, args...) fprintf(stderr, "libust: WARNING: " fmt "\n", ## args); fflush(stderr) -#define ERR(fmt, args...) fprintf(stderr, "libust: ERROR: " fmt "\n", ## args); fflush(stderr) -#define BUG(fmt, args...) fprintf(stderr, "libust: BUG: " fmt "\n", ## args); fflush(stderr) +#define WARN(fmt, args...) fprintf(stderr, UST_STR_COMPONENT ": Warning: " fmt "\n", ## args); fflush(stderr) +#define ERR(fmt, args...) fprintf(stderr, UST_STR_COMPONENT ": Error: " fmt "\n", ## args); fflush(stderr) +#define BUG(fmt, args...) fprintf(stderr, UST_STR_COMPONENT ": BUG: " fmt "\n", ## args); fflush(stderr) #define PERROR(call) perror("ust: ERROR: " call) #define BUG_ON(condition) do { if (unlikely(condition)) ERR("condition not respected (BUG)"); } while(0)