85 lines
2.2 KiB
C
85 lines
2.2 KiB
C
#ifndef _ZONEINFO_COMPILER_H
|
|
#define _ZONEINFO_COMPILER_H
|
|
|
|
#include <exec/types.h>
|
|
#include <exec/memory.h>
|
|
|
|
#if __STDC_VERSION__ < 199901
|
|
# define true 1
|
|
# define false 0
|
|
# define bool int
|
|
#else
|
|
# include <stdbool.h>
|
|
#endif
|
|
|
|
//#include <stdint.h>
|
|
typedef unsigned long long int uint64_t;
|
|
|
|
#include <stddef.h>
|
|
//typedef long unsigned int size_t;
|
|
|
|
#include <sys/types.h>
|
|
//typedef unsigned long time_t;
|
|
#define TIME_MAX ULONG_MAX
|
|
|
|
typedef struct state *timezone_t;
|
|
|
|
#include <libraries/locale.h>
|
|
typedef struct Locale *locale_t;
|
|
|
|
#ifndef __LONG_LONG_MAX__
|
|
#define __LONG_LONG_MAX__ 0x7fffffffffffffffLL
|
|
#endif
|
|
|
|
// Address is neither aligned to a word or long word boundary.
|
|
#define IS_UNALIGNED(a) ((((unsigned long)(a)) & 1) != 0)
|
|
|
|
// Address is aligned to a word boundary, but not to a long word boundary.
|
|
#define IS_SHORT_ALIGNED(a) ((((unsigned long)(a)) & 3) == 2)
|
|
|
|
// Address is aligned to a long word boundary. For an 68030 and beyond the
|
|
// alignment does not matter.
|
|
#if defined(M68020)
|
|
# define IS_LONG_ALIGNED(a) (1)
|
|
#else
|
|
# define IS_LONG_ALIGNED(a) ((((unsigned long)(a)) & 3) == 0)
|
|
#endif
|
|
|
|
#define FILENAME_MAX 1024
|
|
#define ENVSIZE 256
|
|
|
|
#define __NOLIBBASE__
|
|
#define __NOGLOBALIFACE__
|
|
#define __USE_INLINE__
|
|
|
|
#define DOSBase __DOSBase
|
|
#define MathIeeeDoubBasBase __MathIeeeDoubBasBase
|
|
#define UtilityBase __UtilityBase
|
|
|
|
#include "inline/dos.h"
|
|
#include "inline/alib.h"
|
|
#include "inline/exec.h"
|
|
#include "inline/timer.h"
|
|
#include "inline/locale.h"
|
|
|
|
#define DOSLIB_NAME "dos.library"
|
|
#define MATHLIB_NAME "mathieeedoubbas.library"
|
|
#define UTILLIB_NAME "utility.library"
|
|
#define LOCALELIB_NAME "locale.library"
|
|
#define TIMER_NAME "timer.device"
|
|
#define LIB_VERSION 37L
|
|
|
|
#define TZVARIABLE "timezone.prefs"
|
|
#define TZDIR "ZONEINFO:"
|
|
#define TZDEFAULT "localtime"
|
|
#define TZDEFRULES "posixrules"
|
|
|
|
extern struct ExecBase* SysBase;
|
|
extern struct Library* DOSBase;
|
|
extern struct Library* UtilityBase;
|
|
extern struct Library* MathIeeeDoubBasBase;
|
|
extern struct Library* LocaleBase;
|
|
extern struct SignalSemaphore* TimeSemaphore;
|
|
|
|
#endif
|