#ifndef _COMMON_H
#define _COMMON_H
#include <stdio.h>
#include <string.h>
#include <stdarg.h>
#include <libintl.h>
#include <stdlib.h>
#ifdef __cplusplus
extern "C" {
#endif
#define DEFAULT_DOMAIN "messages"
#define DEFAULT_DOMAIN_MO "messages.mo"
#define ERR_ERROR \
"ERROR: "
#define WARN_WARNING \
"WARNING: "
#define ERR_MALLOC \
"failed to allocate memory\n"
#define ERR_OPEN_FAILED \
"Cannot open file %s.\n"
#define ERR_READ_FAILED \
"Error in reading %s.\n"
#define DIAG_START_PROC \
"Processing file \"%s\"...\n"
struct flags {
char *idir;
char *ofile;
int fuzzy;
int verbose;
int strict;
int gnu_p;
int sun_p;
};
extern int parse_option(int *, char ***, struct flags *);
extern void error(char *, ...) __NORETURN;
extern void warning(char *, ...);
extern void diag(char *, ...);
extern void *Xmalloc(size_t);
extern void *Xcalloc(size_t, size_t);
extern void *Xrealloc(void *, size_t);
extern char *Xstrdup(const char *);
#ifdef __cplusplus
}
#endif
#endif