From a14a8f6856178323a405e8a3d3e877363d387ae0 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Mon, 27 Sep 2010 02:40:26 -0400 Subject: mtd-utils: common.h: clean up PROGRAM_NAME usage Make PROGRAM_NAME required in order to include common.h so we can rely on it existing. Further, stop embedding PROGRAM_NAME in every error message so that we can save string space with it being declare only once. Signed-off-by: Mike Frysinger Signed-off-by: Artem Bityutskiy --- include/common.h | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) (limited to 'include/common.h') diff --git a/include/common.h b/include/common.h index 11b0cf6..dce067b 100644 --- a/include/common.h +++ b/include/common.h @@ -24,10 +24,9 @@ #include #include -/* - * Note, the user is supposed to define its PROGRAM_NAME before including this - * header. - */ +#ifndef PROGRAM_NAME +# error "You must define PROGRAM_NAME before including this header" +#endif #ifdef __cplusplus extern "C" { @@ -43,27 +42,27 @@ extern "C" { printf(fmt, ##__VA_ARGS__); \ } while(0) #define verbose(verbose, fmt, ...) \ - bareverbose(verbose, PROGRAM_NAME ": " fmt "\n", ##__VA_ARGS__) + bareverbose(verbose, "%s: " fmt "\n", PROGRAM_NAME, ##__VA_ARGS__) /* Normal messages */ -#define normsg(fmt, ...) do { \ - printf(PROGRAM_NAME ": " fmt "\n", ##__VA_ARGS__); \ +#define normsg_cont(fmt, ...) do { \ + printf("%s: " fmt, PROGRAM_NAME, ##__VA_ARGS__); \ } while(0) -#define normsg_cont(fmt, ...) do { \ - printf(PROGRAM_NAME ": " fmt, ##__VA_ARGS__); \ +#define normsg(fmt, ...) do { \ + normsg_cont(fmt "\n", ##__VA_ARGS__); \ } while(0) /* Error messages */ #define errmsg(fmt, ...) ({ \ - fprintf(stderr, PROGRAM_NAME ": error!: " fmt "\n", ##__VA_ARGS__); \ + fprintf(stderr, "%s: error!: " fmt "\n", PROGRAM_NAME, ##__VA_ARGS__); \ -1; \ }) /* System error messages */ #define sys_errmsg(fmt, ...) ({ \ int _err = errno; \ - size_t _i; \ - fprintf(stderr, PROGRAM_NAME ": error!: " fmt "\n", ##__VA_ARGS__); \ + size_t _i; \ + errmsg(fmt, ##__VA_ARGS__); \ for (_i = 0; _i < sizeof(PROGRAM_NAME) + 1; _i++) \ fprintf(stderr, " "); \ fprintf(stderr, "error %d (%s)\n", _err, strerror(_err)); \ @@ -72,7 +71,7 @@ extern "C" { /* Warnings */ #define warnmsg(fmt, ...) do { \ - fprintf(stderr, PROGRAM_NAME ": warning!: " fmt "\n", ##__VA_ARGS__); \ + fprintf(stderr, "%s: warning!: " fmt "\n", PROGRAM_NAME, ##__VA_ARGS__); \ } while(0) static inline int is_power_of_2(unsigned long long n) -- cgit v1.2.3