Mercurial > hg > jgplsrc
view js.h @ 0:e0bbaa717f41 draft default tip
lol J
author | Jordi Gutiérrez Hermoso <jordigh@octave.org> |
---|---|
date | Mon, 25 Nov 2013 11:56:30 -0500 |
parents | |
children |
line wrap: on
line source
/* Copyright 1990-2011, Jsoftware Inc. All rights reserved. */ /* License in license.txt. */ /* */ /* SYS_ and friends */ #ifndef SYS /* only include once (dtoa.c) */ /* Inclusion of a system herein does not necessarily mean that the source */ /* compiles or works under that system. */ #define SYS_AMIGA 1L /* DICE */ #define SYS_ARCHIMEDES 2L #define SYS_ATARIST 4L /* GCC */ #define SYS_ATT3B1 8L /* System V C */ #define SYS_DEC5500 16L /* GCC */ #define SYS_IBMRS6000 32L /* AIX XL C */ #define SYS_MACINTOSH 64L /* Think C */ #define SYS_MIPS 128L /* GCC */ #define SYS_NEXT 256L /* GCC */ #define SYS_OS2 512L #define SYS_PC 1024L /* Turbo C */ #define SYS_PCWIN 2048L /* Watcom C 386 */ #define SYS_PC386 4096L /* Watcom C 386 */ #define SYS_SGI 8192L /* GCC */ #define SYS_SUN3 16384L /* GCC */ #define SYS_SUN4 32768L /* GCC */ #define SYS_VAX 65536L /* GCC */ #define SYS_HPUX 131072L /* C89 */ #define SYS_LINUX 262144L /* GCC */ #define SYS_FREEBSD 524288L /* x86 only */ #define SYS_NETBSD 1048576L /* GCC */ #define SYS_SUNSOL2 2097152L /* GCC */ #define SYS_MACOSX 4194304L /* GCC (CC) */ #define SY_64 0 /* 64-bit systems */ #define SY_WIN32 0 /* any windows intel version */ #define SY_WINCE 0 /* any windows ce versions */ #define SY_LINUX 0 /* any linux intel version */ #define SY_MAC 0 /* any macosx intel or powerpc version */ #define SY_MACPPC 0 /* macosx powerpc */ #define SY_GETTOD 0 /* gettimeofday on unix */ #define SYS_DOS (SYS_PC + SYS_PC386 + SYS_PCWIN) #define SYS_UNIX (SYS_ATT3B1 + SYS_DEC5500 + SYS_IBMRS6000 + \ SYS_MIPS + SYS_NEXT + SYS_SGI + SYS_SUN3 + \ SYS_SUN4 + SYS_VAX + SYS_LINUX + SYS_MACOSX + \ SYS_FREEBSD + SYS_NETBSD + SYS_SUNSOL2 + SYS_HPUX) #define SYS_ANSILIB (SYS_AMIGA + SYS_ARCHIMEDES + SYS_DOS + \ SYS_MACINTOSH + SYS_OS2 + SYS_UNIX) #define SYS_SESM (SYS_ARCHIMEDES + SYS_DOS + SYS_MACINTOSH + \ SYS_OS2 + SYS_UNIX) #define SYS_LILENDIAN (SYS_ARCHIMEDES + SYS_DEC5500 + SYS_DOS + \ SYS_OS2 + SYS_LINUX + SYS_FREEBSD + \ SYS_NETBSD) #if defined(__FreeBSD__) #define SYS SYS_FREEBSD #endif #if defined(__NetBSD__) #define SYS SYS_NETBSD #endif #if defined(sparc) && ! defined(__svr4__) #define SYS SYS_SUN4 #endif #if defined(sparc) && defined(__svr4__) #define SYS SYS_SUNSOL2 #endif #if defined(__sgi__) #define SYS SYS_SGI #endif #if defined (_AIX) #define SYS SYS_IBMRS6000 #endif #ifdef __linux__ #define SYS SYS_LINUX #undef SY_LINUX #define SY_LINUX 1 #endif #if defined _PA_RISC1_1 #define SYS SYS_HPUX #endif #ifdef __MACH__ #ifdef __ppc__ #ifdef __GNUC__ #define SYS SYS_MACOSX // powerpc #undef SY_MAC #define SY_MAC 1 #undef SY_MACPPC #def SY_MACPPC 1 #endif #endif #endif #ifdef __MACH__ #ifndef __ppc__ #ifdef __GNUC__ #define SYS SYS_MACOSX // intel #undef SY_MAC #define SY_MAC 1 #undef SYS_LILENDIAN #define SYS_LILENDIAN SYS_MACOSX #endif #endif #endif #ifdef _WIN32 #define SYS SYS_PCWIN #undef SY_WIN32 #define SY_WIN32 1 #endif #if SYS & SYS_UNIX #undef SY_GETTOD #define SY_GETTOD 1 #endif #ifdef UNDER_CE #undef SY_WINCE #define SY_WINCE 1 #endif #define SY_ALIGN (!(SY_WIN32 || SYS&SYS_LINUX) || SY_WINCE) /* SY_ALIGN should be 1 for compilers requiring strict alignment */ /* e.g. if (I*)av is not allowed for arbitrary av of type C* */ /* Windows CE target autoconfiguration: */ #if SY_WINCE #ifdef SH3 #define SY_WINCE_SH 1 #else #define SY_WINCE_SH 0 #endif #ifdef MIPS #define SY_WINCE_MIPS 1 #else #define SY_WINCE_MIPS 0 #endif #ifdef ARM #define SY_WINCE_ARM 1 #else #define SY_WINCE_ARM 0 #endif #endif /* _WIN64 defined by VC++ and _UNIX64 defined in makefile */ #if defined(_WIN64) || defined(_UNIX64) #undef SY_64 #define SY_64 1 #endif #ifndef SYS /* must be defined */ error: "SYS must be defined" #endif #if 1!=SY_WIN32+SY_LINUX+SY_MAC error: "one and only one of SY_WIN32, SY_LINUX, SY_MAC must be 1" #endif #endif /* only include once */