view common/logging.h @ 289:9ad00a3255f4

Change cinst from stdin input to use arguments. As we have to execute this process on Windows over the shell a stdin / stdout communication is not really possible without some major hacks. So you now have to supply an instructions file and the path to the certificatelist as arguments when this process is called
author Andre Heinecke <aheinecke@intevation.de>
date Wed, 02 Apr 2014 13:52:02 +0000
parents b033b16dd290
children b1059360a0c7
line wrap: on
line source
#ifndef COMMON_LOGGING_H
#define COMMON_LOGGING_H

#ifdef __cplusplus
extern "C" {
#endif

/*
 * @file
 * @brief Logging and debugging functions
 */

#ifdef WIN32

#include <windows.h>

/** @brief Gets the localized error message for the last error
 * returned by GetLastError
 *
 * @returns utf8 error message that needs to be freed by the caller.
 **/

char *getLastErrorMsg();

#endif

/**
 * @def DEBUGOUTPUT
 * @brief If defined code for extra debugging output will be generated.
 *
 * Will be defined if current build is not an RELEASE_BUILD.
 */
#ifndef RELEASE_BUILD
#define DEBUGOUTPUT
#endif

/**
 * @def DEBUGPREFIX
 * @brief A string prepended to debug output.
 *
 * Should be defined to indicate which module created the output.
 */
#ifndef DEBUGPREFIX
#define DEBUGPREFIX ""
#endif

/**
 * @def DEBUGPRINTF(fmt, ...)
 * @brief Debug printf
 *
 * Prints to stderr if DEBUGOUTPUT is defined.
 */
#ifdef DEBUGOUTPUT
#define DEBUGPRINTF(fmt, ...) fprintf(stderr, DEBUGPREFIX "DEBUG: " fmt, ##__VA_ARGS__);
#else
#define DEBUGPRINTF(fmt, ...)
#endif

/**
 * @def DEBUGMSG(msg)
 * @brief Prints a static debug message
 *
 * If DEBUGOUTPUT is defined this. Prints a debug message
 * to stdout on Unix systems. On Windows OutputDebugString is used.
 */
#ifdef DEBUGOUTPUT
# ifdef WIN32
#  define DEBUGMSG(msg) OutputDebugString (msg);
# else
#  define DEBUGMSG(msg) printf (DEBUGPREFIX "DEBUG: " msg "\n");
# endif
#else
# define DEBUGPRINTF(fmt, ...)
#endif


/**
 * @def ERRORPRINTF(fmt, ...)
 * @brief Debug printf
 *
 * Prints an error to stderr
 */
#define ERRORPRINTF(fmt, ...) fprintf(stderr, DEBUGPREFIX "ERROR: " fmt, ##__VA_ARGS__);



#ifdef __cplusplus
}
#endif

#endif /* COMMON_LOGGING_H */

http://wald.intevation.org/projects/trustbridge/