diff options
Diffstat (limited to 'log.h')
-rw-r--r-- | log.h | 17 |
1 files changed, 9 insertions, 8 deletions
@@ -8,14 +8,15 @@ #ifndef LOG_H #define LOG_H -#ifdef WIN32 -#define __FILENAME__ (strrchr(__FILE__, '\\') ? strrchr(__FILE__, '\\') + 1 : __FILE__) -#else -#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__) -#endif +#define __FILENAME__ \ + (__builtin_strrchr(__FILE__, '/') \ + ? (__builtin_strrchr(__FILE__, '/') + 1) \ + : (__builtin_strrchr(__FILE__, '\\') \ + ? __builtin_strrchr(__FILE__, '\\') + 1 \ + : __FILE__)) -#include <stdio.h> #include <stdarg.h> +#include <stdio.h> #define LOG_VERSION "0.1.0" @@ -25,8 +26,8 @@ enum { LOG_TRACE, LOG_DEBUG, LOG_INFO, LOG_WARN, LOG_ERROR, LOG_FATAL }; #define log_trace(...) log_log(LOG_TRACE, __FILENAME__, __LINE__, __VA_ARGS__) #define log_debug(...) log_log(LOG_DEBUG, __FILENAME__, __LINE__, __VA_ARGS__) -#define log_info(...) log_log(LOG_INFO, __FILENAME__, __LINE__, __VA_ARGS__) -#define log_warn(...) log_log(LOG_WARN, __FILENAME__, __LINE__, __VA_ARGS__) +#define log_info(...) log_log(LOG_INFO, __FILENAME__, __LINE__, __VA_ARGS__) +#define log_warn(...) log_log(LOG_WARN, __FILENAME__, __LINE__, __VA_ARGS__) #define log_error(...) log_log(LOG_ERROR, __FILENAME__, __LINE__, __VA_ARGS__) #define log_fatal(...) log_log(LOG_FATAL, __FILENAME__, __LINE__, __VA_ARGS__) |