Chromium Code Reviews| Index: third_party/crazy_linker/crazy_linker/src/crazy_linker_debug.h |
| diff --git a/third_party/crazy_linker/crazy_linker/src/crazy_linker_debug.h b/third_party/crazy_linker/crazy_linker/src/crazy_linker_debug.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..2ad0b61ebac5eee85eefa2620e7121feef3dc260 |
| --- /dev/null |
| +++ b/third_party/crazy_linker/crazy_linker/src/crazy_linker_debug.h |
| @@ -0,0 +1,41 @@ |
| +// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CRAZY_LINKER_DEBUG_H |
| +#define CRAZY_LINKER_DEBUG_H |
| + |
| +// Set CRAZY_DEBUG on the command-line to 1 to enable debugging support. |
| +// This really means adding traces that will be sent to both stderr |
| +// and the logcat during execution. |
| +#ifndef CRAZY_DEBUG |
| +#define CRAZY_DEBUG 0 |
| +#endif |
| + |
| +namespace crazy { |
| + |
| +#if CRAZY_DEBUG |
| + |
| +void Log(const char* fmt, ...); |
| +void LogErrno(const char* fmt, ...); |
| + |
| +#define LOG(...) ::crazy::Log(__VA_ARGS__) |
| +#define LOG_ERRNO(...) ::crazy::LogErrno(__VA_ARGS__) |
|
bulach
2013/09/09 16:14:15
maybe CRAZY_LOG to avoid collision with the many o
digit1
2013/09/10 09:23:30
what collisions? This is compiled as a standalone
|
| + |
| +#else |
| + |
| +#define LOG(...) ((void)0) |
| +#define LOG_ERRNO(...) ((void)0) |
| + |
| +#endif |
| + |
| +// Conditional logging. |
| +#define LOG_IF(cond, ...) \ |
| + do { if ((cond)) LOG(__VA_ARGS__); } while (0) |
| + |
| +#define LOG_ERRNO_IF(cond, ...) \ |
| + do { if ((cond)) LOG_ERRNO(__VA_ARGS__); } while (0) |
| + |
| +} // namespace crazy |
| + |
| +#endif // CRAZY_LINKER_DEBUG_H |