/*
 * This is the base include file.  It MUST be included everywhere because
 * it includes the configuration and version information.
 *
 * $Date: $
 * $Source: $
 * $Revision: $
 * $State: $
 *
 * $Log: $
 */

#ifndef _EMU_DEFS_H
#define _EMU_DEFS_H

/* Include configuration info */
#include "config.h"
#include "extern.h"

/* Include standard headers */
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/* Include basic types */
#include "emulator/types.h"
#include "arch/types.h"

#define inline __inline__

#define BIT(x)  	(1<<x)

#if __GNUC__ >= 2
# define FORMAT(T,A,B)  __attribute__((format(T,A,B)))
#else
# define FORMAT(T,A,B)
#endif

#if __GNUC__ >= 2
# define NORETURN	__attribute__((noreturn))
#else
# define NORETURN
#endif

#endif /* _EMU_DEFS_H */

