*** empty log message ***
This commit is contained in:
parent
8666a05126
commit
e39140359a
@ -1,22 +1,22 @@
|
||||
LIBRARY "xpawk.dll"
|
||||
LIBRARY "sseawk.dll"
|
||||
|
||||
EXPORTS
|
||||
xp_awk_open
|
||||
xp_awk_close
|
||||
sse_awk_open
|
||||
sse_awk_close
|
||||
|
||||
xp_awk_geterrnum
|
||||
xp_awk_geterrstr
|
||||
sse_awk_geterrnum
|
||||
sse_awk_geterrstr
|
||||
|
||||
xp_awk_clear
|
||||
xp_awk_setparseopt
|
||||
xp_awk_setrunopt
|
||||
sse_awk_clear
|
||||
sse_awk_setparseopt
|
||||
sse_awk_setrunopt
|
||||
|
||||
xp_awk_attsrc
|
||||
xp_awk_detsrc
|
||||
sse_awk_attsrc
|
||||
sse_awk_detsrc
|
||||
|
||||
xp_awk_parse
|
||||
xp_awk_run
|
||||
sse_awk_parse
|
||||
sse_awk_run
|
||||
|
||||
xp_awk_printf
|
||||
xp_awk_strcmp
|
||||
sse_awk_printf
|
||||
sse_awk_strcmp
|
||||
|
||||
|
@ -3,7 +3,7 @@ objects = awk.obj,err.obj,extio.obj,func.obj,map.obj,misc.obj,parse.obj,rex.obj,
|
||||
CFLAGS = /pointer_size=long /define=XP_AWK_STAND_ALONE
|
||||
LIBRFLAGS =
|
||||
|
||||
xpawk.olb : $(objects)
|
||||
sseawk.olb : $(objects)
|
||||
$(LIBR)/create $(MMS$TARGET)
|
||||
$(LIBR)/replace $(LIBRFLAGS) $(MMS$TARGET) $(objects)
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: jni.c,v 1.12 2006-10-22 11:34:53 bacon Exp $
|
||||
* $Id: jni.c,v 1.13 2006-10-22 11:40:51 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <sse/awk/jni.h>
|
||||
@ -10,7 +10,7 @@
|
||||
#include <wchar.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define EXCEPTION_AWK "ssekit/ssej/awk/AwkException"
|
||||
#define EXCEPTION_AWK "sse/awk/AwkException"
|
||||
#define FIELD_AWK "__awk"
|
||||
|
||||
enum
|
||||
@ -60,7 +60,7 @@ static void __awk_free (void* ptr, void* custom_data)
|
||||
free (ptr);
|
||||
}
|
||||
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_open (JNIEnv* env, jobject obj)
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_open (JNIEnv* env, jobject obj)
|
||||
{
|
||||
jclass class;
|
||||
jfieldID fid;
|
||||
@ -125,7 +125,7 @@ JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_open (JNIEnv* env, jobject obj)
|
||||
printf ("__awk(native) done => %u, 0x%X\n", awk, awk);
|
||||
}
|
||||
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_close (JNIEnv* env, jobject obj)
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_close (JNIEnv* env, jobject obj)
|
||||
{
|
||||
jclass class;
|
||||
jfieldID fid;
|
||||
@ -141,7 +141,7 @@ JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_close (JNIEnv* env, jobject obj
|
||||
printf ("close (native) done\n");
|
||||
}
|
||||
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_parse (JNIEnv* env, jobject obj)
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_parse (JNIEnv* env, jobject obj)
|
||||
{
|
||||
jclass class;
|
||||
jfieldID fid;
|
||||
@ -176,7 +176,7 @@ printf ("parse error -> line [%d] %S\n", sse_awk_getsrcline(awk), sse_awk_geterr
|
||||
}
|
||||
}
|
||||
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_run (JNIEnv* env, jobject obj)
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_run (JNIEnv* env, jobject obj)
|
||||
{
|
||||
jclass class;
|
||||
jfieldID fid;
|
||||
@ -211,14 +211,14 @@ JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_run (JNIEnv* env, jobject obj)
|
||||
}
|
||||
}
|
||||
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_set_1extio (
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_set_1extio (
|
||||
JNIEnv* env, jobject obj, jlong extio, jobject handle)
|
||||
{
|
||||
sse_awk_extio_t* epa = (sse_awk_extio_t*)extio;
|
||||
epa->handle = (void*)handle;
|
||||
}
|
||||
|
||||
JNIESSEORT jobject JNICALL Java_ssekit_ssej_awk_Awk_get_1extio (
|
||||
JNIESSEORT jobject JNICALL Java_sse_awk_Awk_get_1extio (
|
||||
JNIEnv* env, jobject obj, jlong extio)
|
||||
{
|
||||
sse_awk_extio_t* epa = (sse_awk_extio_t*)extio;
|
||||
|
@ -1,10 +1,10 @@
|
||||
LIBRARY "xpawk.dll"
|
||||
LIBRARY "sseawk.dll"
|
||||
|
||||
EXPORTS
|
||||
Java_xpkit_xpj_awk_Awk_open
|
||||
Java_xpkit_xpj_awk_Awk_close
|
||||
Java_xpkit_xpj_awk_Awk_parse
|
||||
Java_xpkit_xpj_awk_Awk_run
|
||||
Java_xpkit_xpj_awk_Awk_get_1extio
|
||||
Java_xpkit_xpj_awk_Awk_set_1extio
|
||||
Java_sse_awk_Awk_open
|
||||
Java_sse_awk_Awk_close
|
||||
Java_sse_awk_Awk_parse
|
||||
Java_sse_awk_Awk_run
|
||||
Java_sse_awk_Awk_get_1extio
|
||||
Java_sse_awk_Awk_set_1extio
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: jni.h,v 1.4 2006-10-22 11:34:53 bacon Exp $
|
||||
* $Id: jni.h,v 1.5 2006-10-22 11:40:51 bacon Exp $
|
||||
*/
|
||||
|
||||
#ifndef _SSE_AWK_JNI_H_
|
||||
@ -11,10 +11,10 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_open (JNIEnv*, jobject);
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_close (JNIEnv*, jobject);
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_parse (JNIEnv*, jobject);
|
||||
JNIESSEORT void JNICALL Java_ssekit_ssej_awk_Awk_run (JNIEnv*, jobject);
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_open (JNIEnv*, jobject);
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_close (JNIEnv*, jobject);
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_parse (JNIEnv*, jobject);
|
||||
JNIESSEORT void JNICALL Java_sse_awk_Awk_run (JNIEnv*, jobject);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c \
|
||||
run.c rec.c val.c func.c misc.c extio.c rex.c
|
||||
OBJS = $(SRCS:.c=.obj)
|
||||
OUT = xpawk.lib
|
||||
OUT = sseawk.lib
|
||||
|
||||
CC = bcc32
|
||||
CFLAGS = -O2 -WM -w -w-inl -w-sig -w-spa -w-hid -RT- -I../.. -DXP_AWK_STAND_ALONE -DXP_CHAR_IS_WCHAR
|
||||
CFLAGS = -O2 -WM -w -w-inl -w-sig -w-spa -w-hid -RT- -I../..
|
||||
|
||||
all: $(OBJS)
|
||||
tlib $(OUT) @&&!
|
||||
|
@ -2,7 +2,7 @@ SRCS = \
|
||||
awk.c err.c tree.c str.c tab.c map.c parse.c \
|
||||
run.c rec.c val.c func.c misc.c extio.c rex.c
|
||||
OBJS = $(SRCS:.c=.obj)
|
||||
OUT = xpawk
|
||||
OUT = sseawk
|
||||
|
||||
JAVA_INC = \
|
||||
/I"C:\Program Files\IBM\Java141\Include" \
|
||||
|
@ -1,10 +1,10 @@
|
||||
SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c \
|
||||
run.c rec.c val.c func.c misc.c extio.c rex.c
|
||||
OBJS = $(SRCS:.c=.o)
|
||||
OUT = libxpawk.a
|
||||
OUT = libsseawk.a
|
||||
|
||||
CC = cc
|
||||
CFLAGS = -Wall -I../.. -DXP_AWK_STAND_ALONE
|
||||
CFLAGS = -Wall -I../..
|
||||
|
||||
all: $(OBJS)
|
||||
ar cr $(OUT) $(OBJS)
|
||||
|
@ -1,7 +1,7 @@
|
||||
SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c \
|
||||
run.c rec.c val.c func.c misc.c extio.c rex.c
|
||||
OBJS = $(SRCS:.c=.o)
|
||||
OUT = libxpawk.a
|
||||
OUT = libsseawk.a
|
||||
|
||||
CC = @CC@
|
||||
RANLIB = @RANLIB@
|
||||
|
@ -1,9 +1,9 @@
|
||||
SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c run.c rec.c val.c misc.c
|
||||
OBJS = awk.obj err.obj tree.obj str.obj tab.obj map.obj parse.obj run.obj rec.obj val.obj misc.obj
|
||||
OUT = xpawk.lib
|
||||
OUT = sseawk.lib
|
||||
|
||||
CC = lcc
|
||||
CFLAGS = -I../.. -A -ansic -libcdll -DXP_AWK_STAND_ALONE
|
||||
CFLAGS = -I../.. -A -ansic -libcdll
|
||||
LDFLAGS =
|
||||
LIBS =
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c \
|
||||
run.c rec.c val.c func.c misc.c extio.c
|
||||
OBJS = $(SRCS:.c=.o)
|
||||
OUT = libxpawk.a
|
||||
OUT = libsseawk.a
|
||||
|
||||
CC = cc
|
||||
CFLAGS = -Xc -a ansi -w3 -O2 -I../.. -DXP_AWK_STAND_ALONE
|
||||
CFLAGS = -Xc -a ansi -w3 -O2 -I../..
|
||||
|
||||
all: $(OBJS)
|
||||
ar cr $(OUT) $(OBJS)
|
||||
|
@ -2,11 +2,11 @@ SRCS = \
|
||||
awk.c err.c tree.c str.c tab.c map.c parse.c \
|
||||
run.c rec.c val.c func.c misc.c extio.c rex.c
|
||||
OBJS = $(SRCS:.c=.o)
|
||||
OUT = libxpawk.a
|
||||
OUT = libsseawk.a
|
||||
|
||||
CC = gcc
|
||||
#CFLAGS = -m64 -O2 -Wall -std=c89 -pedantic -I../.. -DXP_AWK_STAND_ALONE
|
||||
CFLAGS = -m64 -O2 -Wall -I../.. -DXP_AWK_STAND_ALONE
|
||||
#CFLAGS = -m64 -O2 -Wall -std=c89 -pedantic -I../..
|
||||
CFLAGS = -m64 -O2 -Wall -I../..
|
||||
|
||||
all: $(OBJS)
|
||||
ar cr $(OUT) $(OBJS)
|
||||
|
@ -6,11 +6,11 @@ SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c \
|
||||
run.c rec.c val.c misc.c extio.c rex.c
|
||||
OBJS = awk.obj err.obj tree.obj str.obj tab.obj map.obj parse.obj \
|
||||
run.obj rec.obj val.obj misc.obj extio.obj rex.obj
|
||||
OUT = xpawk.lib
|
||||
OUT = sseawk.lib
|
||||
|
||||
CC = tcc
|
||||
AR = tlib
|
||||
CFLAGS = -1 -O -mh -w -f87 -G -I..\.. -Ddos -DXP_AWK_STAND_ALONE
|
||||
CFLAGS = -1 -O -mh -w -f87 -G -I..\.. -Ddos
|
||||
|
||||
all: $(OBJS)
|
||||
-del $(OUT)
|
||||
|
@ -1,31 +1,31 @@
|
||||
/*
|
||||
* $Id: conf_dos.h,v 1.5 2006-05-06 16:05:12 bacon Exp $
|
||||
* $Id: conf_dos.h,v 1.6 2006-10-22 11:46:18 bacon Exp $
|
||||
*/
|
||||
|
||||
#if !defined(__LARGE__) && !defined(__HUGE__)
|
||||
#error this library supports the large and the huge memory models only
|
||||
#endif
|
||||
|
||||
#define XP_ENDIAN_LITTLE
|
||||
#define SSE_ENDIAN_LITTLE
|
||||
|
||||
#define XP_SIZEOF_CHAR 1
|
||||
#define XP_SIZEOF_SHORT 2
|
||||
#define XP_SIZEOF_INT 2
|
||||
#define XP_SIZEOF_LONG 4
|
||||
#define XP_SIZEOF_LONG_LONG 0
|
||||
#define SSE_SIZEOF_CHAR 1
|
||||
#define SSE_SIZEOF_SHORT 2
|
||||
#define SSE_SIZEOF_INT 2
|
||||
#define SSE_SIZEOF_LONG 4
|
||||
#define SSE_SIZEOF_LONG_LONG 0
|
||||
|
||||
#define XP_SIZEOF___INT8 0
|
||||
#define XP_SIZEOF___INT16 0
|
||||
#define XP_SIZEOF___INT32 0
|
||||
#define XP_SIZEOF___INT64 0
|
||||
#define XP_SIZEOF___INT96 0
|
||||
#define XP_SIZEOF___INT128 0
|
||||
#define SSE_SIZEOF___INT8 0
|
||||
#define SSE_SIZEOF___INT16 0
|
||||
#define SSE_SIZEOF___INT32 0
|
||||
#define SSE_SIZEOF___INT64 0
|
||||
#define SSE_SIZEOF___INT96 0
|
||||
#define SSE_SIZEOF___INT128 0
|
||||
|
||||
#define XP_SIZEOF_VOID_P 4
|
||||
#define SSE_SIZEOF_VOID_P 4
|
||||
|
||||
#define XP_SIZEOF_FLOAT 4
|
||||
#define XP_SIZEOF_DOUBLE 8
|
||||
#define XP_SIZEOF_LONG_DOUBLE 10 /* turbo c 2.01 */
|
||||
#define XP_SIZEOF_WCHAR_T 0
|
||||
#define SSE_SIZEOF_FLOAT 4
|
||||
#define SSE_SIZEOF_DOUBLE 8
|
||||
#define SSE_SIZEOF_LONG_DOUBLE 10 /* turbo c 2.01 */
|
||||
#define SSE_SIZEOF_WCHAR_T 0
|
||||
|
||||
#define XP_CHAR_IS_MCHAR
|
||||
#define SSE_CHAR_IS_MCHAR
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: conf_msw.h,v 1.3 2006-05-06 16:05:12 bacon Exp $
|
||||
* $Id: conf_msw.h,v 1.4 2006-10-22 11:46:18 bacon Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -17,34 +17,34 @@ _M_IX86 x86 platform
|
||||
_M_X64 x64 platform
|
||||
*/
|
||||
|
||||
#define XP_ENDIAN_LITTLE
|
||||
#define SSE_ENDIAN_LITTLE
|
||||
|
||||
#define XP_SIZEOF_CHAR 1
|
||||
#define XP_SIZEOF_SHORT 2
|
||||
#define XP_SIZEOF_INT 4
|
||||
#define SSE_SIZEOF_CHAR 1
|
||||
#define SSE_SIZEOF_SHORT 2
|
||||
#define SSE_SIZEOF_INT 4
|
||||
|
||||
#ifdef _WIN64
|
||||
#define XP_SIZEOF_LONG 8
|
||||
#define SSE_SIZEOF_LONG 8
|
||||
#else
|
||||
#define XP_SIZEOF_LONG 4
|
||||
#define SSE_SIZEOF_LONG 4
|
||||
#endif
|
||||
|
||||
#define XP_SIZEOF_LONG_LONG 0
|
||||
#define SSE_SIZEOF_LONG_LONG 0
|
||||
|
||||
#define XP_SIZEOF___INT8 1
|
||||
#define XP_SIZEOF___INT16 2
|
||||
#define XP_SIZEOF___INT32 4
|
||||
#define XP_SIZEOF___INT64 8
|
||||
#define XP_SIZEOF___INT96 0
|
||||
#define XP_SIZEOF___INT128 0
|
||||
#define SSE_SIZEOF___INT8 1
|
||||
#define SSE_SIZEOF___INT16 2
|
||||
#define SSE_SIZEOF___INT32 4
|
||||
#define SSE_SIZEOF___INT64 8
|
||||
#define SSE_SIZEOF___INT96 0
|
||||
#define SSE_SIZEOF___INT128 0
|
||||
|
||||
#ifdef _WIN64
|
||||
#define XP_SIZEOF_VOID_P 8
|
||||
#define SSE_SIZEOF_VOID_P 8
|
||||
#else
|
||||
#define XP_SIZEOF_VOID_P 4
|
||||
#define SSE_SIZEOF_VOID_P 4
|
||||
#endif
|
||||
|
||||
#define XP_SIZEOF_FLOAT 4
|
||||
#define XP_SIZEOF_DOUBLE 8
|
||||
#define XP_SIZEOF_LONG_DOUBLE 16
|
||||
#define XP_SIZEOF_WCHAR_T 2
|
||||
#define SSE_SIZEOF_FLOAT 4
|
||||
#define SSE_SIZEOF_DOUBLE 8
|
||||
#define SSE_SIZEOF_LONG_DOUBLE 16
|
||||
#define SSE_SIZEOF_WCHAR_T 2
|
||||
|
@ -1,71 +1,71 @@
|
||||
/*
|
||||
* $Id: conf_vms.h,v 1.5 2006-05-06 16:05:12 bacon Exp $
|
||||
* $Id: conf_vms.h,v 1.6 2006-10-22 11:46:18 bacon Exp $
|
||||
*/
|
||||
|
||||
/* TODO: please complete the itanium portion */
|
||||
|
||||
/* both vax and alpha are in the little endian. */
|
||||
#define XP_ENDIAN_LITTLE
|
||||
#define SSE_ENDIAN_LITTLE
|
||||
|
||||
#define XP_SIZEOF_CHAR 1
|
||||
#define XP_SIZEOF_SHORT 2
|
||||
#define XP_SIZEOF_INT 4
|
||||
#define XP_SIZEOF_LONG 4
|
||||
#define SSE_SIZEOF_CHAR 1
|
||||
#define SSE_SIZEOF_SHORT 2
|
||||
#define SSE_SIZEOF_INT 4
|
||||
#define SSE_SIZEOF_LONG 4
|
||||
|
||||
#if defined(vax) || defined(__vax)
|
||||
#define XP_SIZEOF_LONG_LONG 0
|
||||
#define SSE_SIZEOF_LONG_LONG 0
|
||||
#elif defined(alpha) || defined(__alpha)
|
||||
#define XP_SIZEOF_LONG_LONG 8
|
||||
#define SSE_SIZEOF_LONG_LONG 8
|
||||
#elif defined(itanium) || defined(__itanium)
|
||||
#define XP_SIZEOF_LONG_LONG 8
|
||||
#define SSE_SIZEOF_LONG_LONG 8
|
||||
#else
|
||||
#define XP_SIZEOF_LONG_LONG 0
|
||||
#define SSE_SIZEOF_LONG_LONG 0
|
||||
#endif
|
||||
|
||||
#define XP_SIZEOF___INT8 1
|
||||
#define XP_SIZEOF___INT16 2
|
||||
#define XP_SIZEOF___INT32 4
|
||||
#define SSE_SIZEOF___INT8 1
|
||||
#define SSE_SIZEOF___INT16 2
|
||||
#define SSE_SIZEOF___INT32 4
|
||||
|
||||
#if defined(vax) || defined(__vax)
|
||||
#define XP_SIZEOF___INT64 0
|
||||
#define SSE_SIZEOF___INT64 0
|
||||
#elif defined(alpha) || defined(__alpha)
|
||||
#define XP_SIZEOF___INT64 8
|
||||
#define SSE_SIZEOF___INT64 8
|
||||
#elif defined(itanium) || defined(__itanium)
|
||||
#define XP_SIZEOF___INT64 8
|
||||
#define SSE_SIZEOF___INT64 8
|
||||
#else
|
||||
#define XP_SIZEOF___INT64 0
|
||||
#define SSE_SIZEOF___INT64 0
|
||||
#endif
|
||||
|
||||
#define XP_SIZEOF___INT96 0
|
||||
#define XP_SIZEOF___INT128 0
|
||||
#define SSE_SIZEOF___INT96 0
|
||||
#define SSE_SIZEOF___INT128 0
|
||||
|
||||
#if defined(vax) || defined(__vax)
|
||||
#define XP_SIZEOF_VOID_P 4
|
||||
#define SSE_SIZEOF_VOID_P 4
|
||||
#elif defined(alpha) || defined(__alpha)
|
||||
/*#pragma pointer_size 32
|
||||
#define XP_SIZEOF_VOID_P 4*/
|
||||
#define SSE_SIZEOF_VOID_P 4*/
|
||||
#pragma pointer_size 64
|
||||
#define XP_SIZEOF_VOID_P 8
|
||||
#define SSE_SIZEOF_VOID_P 8
|
||||
#elif defined(itanium) || defined(__itanium)
|
||||
/*#pragma pointer_size 32
|
||||
#define XP_SIZEOF_VOID_P 4*/
|
||||
#define SSE_SIZEOF_VOID_P 4*/
|
||||
#pragma pointer_size 64
|
||||
#define XP_SIZEOF_VOID_P 8
|
||||
#define SSE_SIZEOF_VOID_P 8
|
||||
#else
|
||||
#define XP_SIZEOF_VOID_P 0
|
||||
#define SSE_SIZEOF_VOID_P 0
|
||||
#endif
|
||||
|
||||
#define XP_SIZEOF_FLOAT 4
|
||||
#define XP_SIZEOF_DOUBLE 8
|
||||
#define SSE_SIZEOF_FLOAT 4
|
||||
#define SSE_SIZEOF_DOUBLE 8
|
||||
|
||||
#if defined(vax) || defined(__vax)
|
||||
#define XP_SIZEOF_LONG_DOUBLE 8
|
||||
#define SSE_SIZEOF_LONG_DOUBLE 8
|
||||
#elif defined(alpha) || defined(__alpha)
|
||||
#define XP_SIZEOF_LONG_DOUBLE 16
|
||||
#define SSE_SIZEOF_LONG_DOUBLE 16
|
||||
#elif defined(itanium) || defined(__itanium)
|
||||
#define XP_SIZEOF_LONG_DOUBLE 16
|
||||
#define SSE_SIZEOF_LONG_DOUBLE 16
|
||||
#else
|
||||
#define XP_SIZEOF_LONG_DOUBLE 0
|
||||
#define SSE_SIZEOF_LONG_DOUBLE 0
|
||||
#endif
|
||||
|
||||
#define XP_SIZEOF_WCHAR_T 4
|
||||
#define SSE_SIZEOF_WCHAR_T 4
|
||||
|
@ -1,78 +1,78 @@
|
||||
/* Big Endian */
|
||||
#undef XP_ENDIAN_BIG
|
||||
#undef SSE_ENDIAN_BIG
|
||||
|
||||
/* Little Endian */
|
||||
#undef XP_ENDIAN_LITTLE
|
||||
#undef SSE_ENDIAN_LITTLE
|
||||
|
||||
/* Unknown Endian */
|
||||
#undef XP_ENDIAN_UNKNOWN
|
||||
#undef SSE_ENDIAN_UNKNOWN
|
||||
|
||||
/* long long */
|
||||
#undef XP_HAVE_LONG_LONG
|
||||
#undef SSE_HAVE_LONG_LONG
|
||||
|
||||
/* long double */
|
||||
#undef XP_HAVE_LONG_DOUBLE
|
||||
#undef SSE_HAVE_LONG_DOUBLE
|
||||
|
||||
/* data type size */
|
||||
#define XP_SIZEOF_CHAR 0
|
||||
#define XP_SIZEOF_SHORT 0
|
||||
#define XP_SIZEOF_INT 0
|
||||
#define XP_SIZEOF_LONG 0
|
||||
#define XP_SIZEOF_LONG_LONG 0
|
||||
#define XP_SIZEOF___INT8 0
|
||||
#define XP_SIZEOF___INT16 0
|
||||
#define XP_SIZEOF___INT32 0
|
||||
#define XP_SIZEOF___INT64 0
|
||||
#define XP_SIZEOF___INT128 0
|
||||
#define XP_SIZEOF_VOID_P 0
|
||||
#define XP_SIZEOF_FLOAT 0
|
||||
#define XP_SIZEOF_DOUBLE 0
|
||||
#define XP_SIZEOF_LONG_DOUBLE 0
|
||||
#define XP_SIZEOF_PID_T 0
|
||||
#define XP_SIZEOF_WCHAR_T 0
|
||||
#define SSE_SIZEOF_CHAR 0
|
||||
#define SSE_SIZEOF_SHORT 0
|
||||
#define SSE_SIZEOF_INT 0
|
||||
#define SSE_SIZEOF_LONG 0
|
||||
#define SSE_SIZEOF_LONG_LONG 0
|
||||
#define SSE_SIZEOF___INT8 0
|
||||
#define SSE_SIZEOF___INT16 0
|
||||
#define SSE_SIZEOF___INT32 0
|
||||
#define SSE_SIZEOF___INT64 0
|
||||
#define SSE_SIZEOF___INT128 0
|
||||
#define SSE_SIZEOF_VOID_P 0
|
||||
#define SSE_SIZEOF_FLOAT 0
|
||||
#define SSE_SIZEOF_DOUBLE 0
|
||||
#define SSE_SIZEOF_LONG_DOUBLE 0
|
||||
#define SSE_SIZEOF_PID_T 0
|
||||
#define SSE_SIZEOF_WCHAR_T 0
|
||||
|
||||
/* fcntl.h */
|
||||
#undef XP_HAVE_FCNTL_H
|
||||
#undef SSE_HAVE_FCNTL_H
|
||||
|
||||
/* limits.h */
|
||||
#undef XP_HAVE_LIMITS_H
|
||||
#undef SSE_HAVE_LIMITS_H
|
||||
|
||||
/* stdarg.h */
|
||||
#undef XP_HAVE_STDARG_H
|
||||
#undef SSE_HAVE_STDARG_H
|
||||
|
||||
/* stddef.h */
|
||||
#undef XP_HAVE_STDDEF_H
|
||||
#undef SSE_HAVE_STDDEF_H
|
||||
|
||||
/* unistd.h */
|
||||
#undef XP_HAVE_UNISTD_H
|
||||
#undef SSE_HAVE_UNISTD_H
|
||||
|
||||
/* wchar.h */
|
||||
#undef XP_HAVE_WCHAR_H
|
||||
#undef SSE_HAVE_WCHAR_H
|
||||
|
||||
/* poll.h */
|
||||
#undef XP_HAVE_POLL_H
|
||||
#undef SSE_HAVE_POLL_H
|
||||
|
||||
/* sys/poll.h */
|
||||
#undef XP_HAVE_SYS_EPOLL_H
|
||||
#undef SSE_HAVE_SYS_EPOLL_H
|
||||
|
||||
/* pthread.h */
|
||||
#undef XP_HAVE_PTHREAD_H
|
||||
#undef SSE_HAVE_PTHREAD_H
|
||||
|
||||
/* sys/sysinfo.h */
|
||||
#undef XP_HAVE_SYS_SYSINFO_H
|
||||
#undef SSE_HAVE_SYS_SYSINFO_H
|
||||
|
||||
/* sys/sysinfo.mem_unit */
|
||||
#undef XP_HAVE_SYS_SYSINFO_MEM_UNIT
|
||||
#undef SSE_HAVE_SYS_SYSINFO_MEM_UNIT
|
||||
|
||||
/* in6.scope_id */
|
||||
#undef XP_HAVE_IN6_SCOPE_ID
|
||||
#undef SSE_HAVE_IN6_SCOPE_ID
|
||||
|
||||
/* sockaddr_storage.ss_family */
|
||||
#undef XP_HAVE_SS_FAMILY
|
||||
#undef SSE_HAVE_SS_FAMILY
|
||||
|
||||
/* char is wchar */
|
||||
#undef XP_CHAR_IS_WCHAR
|
||||
#undef SSE_CHAR_IS_WCHAR
|
||||
|
||||
/* char is mchar */
|
||||
#undef XP_CHAR_IS_MCHAR
|
||||
#undef SSE_CHAR_IS_MCHAR
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
AC_PREREQ(2.53)
|
||||
AC_INIT([xpkit], [deb-0.1.0])
|
||||
AC_REVISION([$Revision: 1.65 $])
|
||||
AC_REVISION([$Revision: 1.66 $])
|
||||
AC_CONFIG_HEADER([xp/config.h])
|
||||
|
||||
# Checks for programs.
|
||||
@ -123,20 +123,5 @@ then
|
||||
[CFLAGS="$CFLAGS -D_REENTRANT -D_THREAD_SAFE"]
|
||||
fi
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
Makefile xp/Makefile xpp/Makefile
|
||||
xp/bas/Makefile xp/sys/Makefile
|
||||
xp/net/Makefile xp/utl/Makefile
|
||||
xp/stx/Makefile xp/awk/Makefile
|
||||
xp/lsp/Makefile xp/lnx/Makefile
|
||||
xp/test/bas/Makefile xp/test/sys/Makefile
|
||||
xp/test/net/Makefile xp/test/utl/Makefile
|
||||
xp/test/stx/Makefile xp/test/awk/Makefile
|
||||
xp/test/lsp/Makefile xp/test/lnx/Makefile
|
||||
xpp/bas/Makefile xpp/net/Makefile xpp/sys/Makefile
|
||||
xpp/utl/Makefile xpp/xli/Makefile
|
||||
xpp/test/bas/Makefile xpp/test/net/Makefile
|
||||
xpp/test/sys/Makefile xpp/test/utl/Makefile xpp/test/xli/Makefile
|
||||
xpo/bas/Makefile xpo/net/Makefile
|
||||
xpo/test/bas/Makefile xpo/test/net/Makefile])
|
||||
AC_CONFIG_FILES([makefile awk/makefile])
|
||||
AC_OUTPUT
|
||||
|
140
ase/macros.h
140
ase/macros.h
@ -1,118 +1,118 @@
|
||||
/*
|
||||
* $Id: macros.h,v 1.35 2006-07-17 04:17:39 bacon Exp $
|
||||
* $Id: macros.h,v 1.36 2006-10-22 11:44:46 bacon Exp $
|
||||
*/
|
||||
|
||||
#ifndef _XP_MACROS_H_
|
||||
#define _XP_MACROS_H_
|
||||
#ifndef _SSE_MACROS_H_
|
||||
#define _SSE_MACROS_H_
|
||||
|
||||
#include <xp/types.h>
|
||||
#include <sse/types.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
/*#define XP_NULL ((xp_uint_t)0)*/
|
||||
#define XP_NULL (0)
|
||||
/*#define SSE_NULL ((sse_uint_t)0)*/
|
||||
#define SSE_NULL (0)
|
||||
#else
|
||||
#define XP_NULL ((void*)0)
|
||||
#define SSE_NULL ((void*)0)
|
||||
#endif
|
||||
|
||||
#define XP_CHAR_EOF ((xp_cint_t)-1)
|
||||
#define SSE_CHAR_EOF ((sse_cint_t)-1)
|
||||
|
||||
#define xp_sizeof(n) (sizeof(n))
|
||||
#define xp_countof(n) (sizeof(n) / sizeof(n[0]))
|
||||
#define xp_offsetof(type,member) ((xp_size_t)&((type*)0)->member)
|
||||
#define sse_sizeof(n) (sizeof(n))
|
||||
#define sse_countof(n) (sizeof(n) / sizeof(n[0]))
|
||||
#define sse_offsetof(type,member) ((sse_size_t)&((type*)0)->member)
|
||||
|
||||
#if defined(_WIN32) && defined(XP_CHAR_IS_WCHAR) && !defined(__LCC__)
|
||||
#define xp_main wmain
|
||||
#elif defined(XP_CHAR_IS_MCHAR)
|
||||
#define xp_main main
|
||||
#if defined(_WIN32) && defined(SSE_CHAR_IS_WCHAR) && !defined(__LCC__)
|
||||
#define sse_main wmain
|
||||
#elif defined(SSE_CHAR_IS_MCHAR)
|
||||
#define sse_main main
|
||||
#endif
|
||||
|
||||
#define XP_TYPE_IS_SIGNED(type) (((type)0) > ((type)-1))
|
||||
#define XP_TYPE_IS_UNSIGNED(type) (((type)0) < ((type)-1))
|
||||
#define XP_TYPE_MAX(type) \
|
||||
((XP_TYPE_IS_SIGNED(type)? (type)~((type)1 << (xp_sizeof(type) * 8 - 1)): (type)(~(type)0)))
|
||||
#define XP_TYPE_MIN(type) \
|
||||
((XP_TYPE_IS_SIGNED(type)? (type)((type)1 << (xp_sizeof(type) * 8 - 1)): (type)0))
|
||||
#define SSE_TYPE_IS_SIGNED(type) (((type)0) > ((type)-1))
|
||||
#define SSE_TYPE_IS_UNSIGNED(type) (((type)0) < ((type)-1))
|
||||
#define SSE_TYPE_MAX(type) \
|
||||
((SSE_TYPE_IS_SIGNED(type)? (type)~((type)1 << (sse_sizeof(type) * 8 - 1)): (type)(~(type)0)))
|
||||
#define SSE_TYPE_MIN(type) \
|
||||
((SSE_TYPE_IS_SIGNED(type)? (type)((type)1 << (sse_sizeof(type) * 8 - 1)): (type)0))
|
||||
|
||||
#define XP_NUM_IS_POWOF2(x) (((x) & ((x) - 1)) == 0)
|
||||
#define XP_SWAP(x,y,original_type,casting_type) \
|
||||
#define SSE_NUM_IS_POWOF2(x) (((x) & ((x) - 1)) == 0)
|
||||
#define SSE_SWAP(x,y,original_type,casting_type) \
|
||||
do { \
|
||||
x = (original_type)((casting_type)(x) ^ (casting_type)(y)); \
|
||||
y = (original_type)((casting_type)(y) ^ (casting_type)(x)); \
|
||||
x = (original_type)((casting_type)(x) ^ (casting_type)(y)); \
|
||||
} while (0)
|
||||
#define XP_ABS(x) ((x) < 0? -(x): (x))
|
||||
#define SSE_ABS(x) ((x) < 0? -(x): (x))
|
||||
|
||||
#define XP_LOOP_CONTINUE(id) goto __loop_ ## id ## _begin__;
|
||||
#define XP_LOOP_BREAK(id) goto __loop_ ## id ## _end__;
|
||||
#define XP_LOOP_BEGIN(id) __loop_ ## id ## _begin__: {
|
||||
#define XP_LOOP_END(id) XP_LOOP_CONTINUE(id) } __loop_ ## id ## _end__:;
|
||||
#define SSE_LOOP_CONTINUE(id) goto __loop_ ## id ## _begin__;
|
||||
#define SSE_LOOP_BREAK(id) goto __loop_ ## id ## _end__;
|
||||
#define SSE_LOOP_BEGIN(id) __loop_ ## id ## _begin__: {
|
||||
#define SSE_LOOP_END(id) SSE_LOOP_CONTINUE(id) } __loop_ ## id ## _end__:;
|
||||
|
||||
#define XP_REPEAT(n,blk) \
|
||||
#define SSE_REPEAT(n,blk) \
|
||||
do { \
|
||||
xp_size_t __xp_repeat_x1 = (xp_size_t)(n); \
|
||||
xp_size_t __xp_repeat_x2 = __xp_repeat_x1 >> 4; \
|
||||
__xp_repeat_x1 &= 15; \
|
||||
while (__xp_repeat_x1-- > 0) { blk; } \
|
||||
while (__xp_repeat_x2-- > 0) { \
|
||||
sse_size_t __sse_repeat_x1 = (sse_size_t)(n); \
|
||||
sse_size_t __sse_repeat_x2 = __sse_repeat_x1 >> 4; \
|
||||
__sse_repeat_x1 &= 15; \
|
||||
while (__sse_repeat_x1-- > 0) { blk; } \
|
||||
while (__sse_repeat_x2-- > 0) { \
|
||||
blk; blk; blk; blk; blk; blk; blk; blk; \
|
||||
blk; blk; blk; blk; blk; blk; blk; blk; \
|
||||
} \
|
||||
} while (0);
|
||||
|
||||
/* obsolete */
|
||||
#define XP_MQUOTE_I(val) #val
|
||||
#define XP_MQUOTE(val) XP_MQUOTE_I(val)
|
||||
#define XP_MCHAR(ch) ((xp_mchar_t)ch)
|
||||
#define XP_MTEXT(txt) ((const xp_mchar_t*)txt)
|
||||
#define SSE_MQUOTE_I(val) #val
|
||||
#define SSE_MQUOTE(val) SSE_MQUOTE_I(val)
|
||||
#define SSE_MCHAR(ch) ((sse_mchar_t)ch)
|
||||
#define SSE_MTEXT(txt) ((const sse_mchar_t*)txt)
|
||||
|
||||
/* new short form */
|
||||
#define XP_MQ_I(val) #val
|
||||
#define XP_MQ(val) XP_MQ_I(val)
|
||||
#define XP_MC(ch) ((xp_mchar_t)ch)
|
||||
#define XP_MS(str) ((const xp_mchar_t*)str)
|
||||
#define XP_MT(txt) (txt)
|
||||
#define SSE_MQ_I(val) #val
|
||||
#define SSE_MQ(val) SSE_MQ_I(val)
|
||||
#define SSE_MC(ch) ((sse_mchar_t)ch)
|
||||
#define SSE_MS(str) ((const sse_mchar_t*)str)
|
||||
#define SSE_MT(txt) (txt)
|
||||
|
||||
/* TODO: if the compiler doesn't have the built-in wchar_t support
|
||||
* XP_WCHAR & XP_WTEXT must be defined differently.
|
||||
#define XP_WCHAR(ch) ((xp_wchar_t)ch)
|
||||
#define XP_WTEXT(txt) don't know yet... may have to call a function?
|
||||
* SSE_WCHAR & SSE_WTEXT must be defined differently.
|
||||
#define SSE_WCHAR(ch) ((sse_wchar_t)ch)
|
||||
#define SSE_WTEXT(txt) don't know yet... may have to call a function?
|
||||
*/
|
||||
|
||||
/* obsolete */
|
||||
#define XP_WQUOTE_I(val) (L###val)
|
||||
#define XP_WQUOTE(val) XP_WQUOTE_I(val)
|
||||
#define XP_WCHAR(ch) ((xp_wchar_t)L##ch)
|
||||
#define XP_WTEXT(txt) ((const xp_wchar_t*)L##txt)
|
||||
#define SSE_WQUOTE_I(val) (L###val)
|
||||
#define SSE_WQUOTE(val) SSE_WQUOTE_I(val)
|
||||
#define SSE_WCHAR(ch) ((sse_wchar_t)L##ch)
|
||||
#define SSE_WTEXT(txt) ((const sse_wchar_t*)L##txt)
|
||||
|
||||
/* new short form */
|
||||
#define XP_WQ_I(val) (L###val)
|
||||
#define XP_WQ(val) XP_WQ_I(val)
|
||||
#define XP_WC(ch) ((xp_wchar_t)L##ch)
|
||||
#define XP_WS(str) ((const xp_wchar_t*)L##str)
|
||||
#define XP_WT(txt) (L##txt)
|
||||
#define SSE_WQ_I(val) (L###val)
|
||||
#define SSE_WQ(val) SSE_WQ_I(val)
|
||||
#define SSE_WC(ch) ((sse_wchar_t)L##ch)
|
||||
#define SSE_WS(str) ((const sse_wchar_t*)L##str)
|
||||
#define SSE_WT(txt) (L##txt)
|
||||
|
||||
#if defined(XP_CHAR_IS_MCHAR)
|
||||
#if defined(SSE_CHAR_IS_MCHAR)
|
||||
/* obsolete */
|
||||
#define XP_CHAR(ch) XP_MCHAR(ch)
|
||||
#define XP_TEXT(txt) XP_MTEXT(txt)
|
||||
#define XP_QUOTE(val) XP_MQUOTE(val)
|
||||
#define SSE_CHAR(ch) SSE_MCHAR(ch)
|
||||
#define SSE_TEXT(txt) SSE_MTEXT(txt)
|
||||
#define SSE_QUOTE(val) SSE_MQUOTE(val)
|
||||
|
||||
/* new short form */
|
||||
#define XP_C(ch) XP_MC(ch)
|
||||
#define XP_S(str) XP_MS(str)
|
||||
#define XP_T(txt) XP_MT(txt)
|
||||
#define XP_Q(val) XP_MQ(val)
|
||||
#define SSE_C(ch) SSE_MC(ch)
|
||||
#define SSE_S(str) SSE_MS(str)
|
||||
#define SSE_T(txt) SSE_MT(txt)
|
||||
#define SSE_Q(val) SSE_MQ(val)
|
||||
#else
|
||||
/* obsolete */
|
||||
#define XP_CHAR(ch) XP_WCHAR(ch)
|
||||
#define XP_TEXT(txt) XP_WTEXT(txt)
|
||||
#define XP_QUOTE(val) XP_WQUOTE(val)
|
||||
#define SSE_CHAR(ch) SSE_WCHAR(ch)
|
||||
#define SSE_TEXT(txt) SSE_WTEXT(txt)
|
||||
#define SSE_QUOTE(val) SSE_WQUOTE(val)
|
||||
|
||||
/* new short form */
|
||||
#define XP_C(ch) XP_WC(ch)
|
||||
#define XP_S(str) XP_WS(str)
|
||||
#define XP_T(txt) XP_WT(txt)
|
||||
#define XP_Q(val) XP_WQ(val)
|
||||
#define SSE_C(ch) SSE_WC(ch)
|
||||
#define SSE_S(str) SSE_WS(str)
|
||||
#define SSE_T(txt) SSE_WT(txt)
|
||||
#define SSE_Q(val) SSE_WQ(val)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
SUBDIRS=bas sys net utl stx lsp
|
||||
SUBDIRS=awk
|
||||
|
||||
all:
|
||||
@for i in $(SUBDIRS); \
|
||||
|
316
ase/types.h
316
ase/types.h
@ -1,18 +1,18 @@
|
||||
/*
|
||||
* $Id: types.h,v 1.56 2006-09-27 14:14:29 bacon Exp $
|
||||
* $Id: types.h,v 1.57 2006-10-22 11:44:46 bacon Exp $
|
||||
*/
|
||||
|
||||
#ifndef _XP_TYPES_H_
|
||||
#define _XP_TYPES_H_
|
||||
#ifndef _SSE_TYPES_H_
|
||||
#define _SSE_TYPES_H_
|
||||
|
||||
#if defined(_WIN32)
|
||||
#include <xp/conf_msw.h>
|
||||
#include <sse/conf_msw.h>
|
||||
#elif defined(vms) || defined(__vms)
|
||||
#include <xp/conf_vms.h>
|
||||
#include <sse/conf_vms.h>
|
||||
#elif defined(dos) || defined(__dos)
|
||||
#include <xp/conf_dos.h>
|
||||
#include <sse/conf_dos.h>
|
||||
#else
|
||||
#include <xp/config.h>
|
||||
#include <sse/config.h>
|
||||
#endif
|
||||
|
||||
/*
|
||||
@ -28,241 +28,241 @@
|
||||
*
|
||||
* GROUP: State Types
|
||||
*
|
||||
* TYPE: xp_bool_t
|
||||
* TYPE: sse_bool_t
|
||||
* Boolean type
|
||||
*
|
||||
* TYPE: xp_tri_t
|
||||
* TYPE: sse_tri_t
|
||||
* Tri-State type
|
||||
*
|
||||
* GROUP: Integral Types
|
||||
*
|
||||
* TYPE: xp_byte_t
|
||||
* TYPE: sse_byte_t
|
||||
*
|
||||
* TYPE: xp_word_t
|
||||
* TYPE: sse_word_t
|
||||
*
|
||||
* TYPE: xp_int_t
|
||||
* TYPE: sse_int_t
|
||||
* Signed integer whose size equals the size of a pointer
|
||||
*
|
||||
* TYPE: xp_uint_t
|
||||
* TYPE: sse_uint_t
|
||||
* Unsigned integer whose size equals the size of a pointer
|
||||
*
|
||||
* TYPE: xp_long_t
|
||||
* TYPE: sse_long_t
|
||||
* The largest signed integer available
|
||||
*
|
||||
* TYPE: xp_ulong_t
|
||||
* TYPE: sse_ulong_t
|
||||
* The largest unsigned integer available
|
||||
*
|
||||
* TYPE: xp_size_t
|
||||
* TYPE: sse_size_t
|
||||
* Unsigned integer which can represent the size of the largest
|
||||
* in-memory data
|
||||
*
|
||||
* TYPE: xp_ssize_t
|
||||
* Signed version of xp_size_t
|
||||
* TYPE: sse_ssize_t
|
||||
* Signed version of sse_size_t
|
||||
*
|
||||
* TYPE: xp_int8_t
|
||||
* TYPE: sse_int8_t
|
||||
*
|
||||
* TYPE: xp_uint8_t
|
||||
* TYPE: sse_uint8_t
|
||||
*
|
||||
* TYPE: xp_int16_t
|
||||
* TYPE: sse_int16_t
|
||||
*
|
||||
* TYPE: xp_uint16_t
|
||||
* TYPE: sse_uint16_t
|
||||
*
|
||||
* TYPE: xp_int32_t
|
||||
* TYPE: sse_int32_t
|
||||
*
|
||||
* TYPE: xp_uint32_t
|
||||
* TYPE: sse_uint32_t
|
||||
*
|
||||
* TYPE: xp_int64_t
|
||||
* TYPE: sse_int64_t
|
||||
*
|
||||
* TYPE: xp_uint64_t
|
||||
* TYPE: sse_uint64_t
|
||||
*/
|
||||
|
||||
/* boolean type */
|
||||
typedef int xp_bool_t;
|
||||
#define xp_true (0 == 0)
|
||||
#define xp_false (0 != 0)
|
||||
typedef int sse_bool_t;
|
||||
#define sse_true (0 == 0)
|
||||
#define sse_false (0 != 0)
|
||||
|
||||
/* tri-state type */
|
||||
typedef int xp_tri_t;
|
||||
#define xp_alive 1
|
||||
#define xp_zombie 0
|
||||
#define xp_dead -1
|
||||
typedef int sse_tri_t;
|
||||
#define sse_alive 1
|
||||
#define sse_zombie 0
|
||||
#define sse_dead -1
|
||||
|
||||
/* integer that can hold a pointer */
|
||||
#if XP_SIZEOF_VOID_P == XP_SIZEOF_INT
|
||||
typedef int xp_int_t;
|
||||
typedef unsigned int xp_uint_t;
|
||||
#elif XP_SIZEOF_VOID_P == XP_SIZEOF_LONG
|
||||
typedef long xp_int_t;
|
||||
typedef unsigned long xp_uint_t;
|
||||
#elif XP_SIZEOF_VOID_P == XP_SIZEOF_LONG_LONG
|
||||
typedef long long xp_int_t;
|
||||
typedef unsigned long long xp_uint_t;
|
||||
#if SSE_SIZEOF_VOID_P == SSE_SIZEOF_INT
|
||||
typedef int sse_int_t;
|
||||
typedef unsigned int sse_uint_t;
|
||||
#elif SSE_SIZEOF_VOID_P == SSE_SIZEOF_LONG
|
||||
typedef long sse_int_t;
|
||||
typedef unsigned long sse_uint_t;
|
||||
#elif SSE_SIZEOF_VOID_P == SSE_SIZEOF_LONG_LONG
|
||||
typedef long long sse_int_t;
|
||||
typedef unsigned long long sse_uint_t;
|
||||
#else
|
||||
#error Unsupported pointer size
|
||||
#endif
|
||||
|
||||
|
||||
/* the largest integer supported by the system */
|
||||
#if XP_SIZEOF_LONG_LONG != 0
|
||||
typedef long long xp_long_t;
|
||||
typedef unsigned long long xp_ulong_t;
|
||||
#elif XP_SIZEOF___INT64 != 0
|
||||
typedef __int64 xp_long_t;
|
||||
typedef unsigned __int64 xp_ulong_t;
|
||||
#if SSE_SIZEOF_LONG_LONG != 0
|
||||
typedef long long sse_long_t;
|
||||
typedef unsigned long long sse_ulong_t;
|
||||
#elif SSE_SIZEOF___INT64 != 0
|
||||
typedef __int64 sse_long_t;
|
||||
typedef unsigned __int64 sse_ulong_t;
|
||||
#else
|
||||
typedef long xp_long_t;
|
||||
typedef unsigned long xp_ulong_t;
|
||||
typedef long sse_long_t;
|
||||
typedef unsigned long sse_ulong_t;
|
||||
#endif
|
||||
|
||||
/* integers of specific size */
|
||||
#if XP_SIZEOF_CHAR == 1
|
||||
typedef char xp_int8_t;
|
||||
typedef unsigned char xp_uint8_t;
|
||||
#elif XP_SIZEOF___INT8 == 1
|
||||
typedef __int8 xp_int8_t;
|
||||
typedef unsigned __int8 xp_uint8_t;
|
||||
#if SSE_SIZEOF_CHAR == 1
|
||||
typedef char sse_int8_t;
|
||||
typedef unsigned char sse_uint8_t;
|
||||
#elif SSE_SIZEOF___INT8 == 1
|
||||
typedef __int8 sse_int8_t;
|
||||
typedef unsigned __int8 sse_uint8_t;
|
||||
#endif
|
||||
|
||||
#if XP_SIZEOF_SHORT == 2
|
||||
typedef short xp_int16_t;
|
||||
typedef unsigned short xp_uint16_t;
|
||||
#elif XP_SIZEOF___INT16 == 2
|
||||
typedef __int16 xp_int16_t;
|
||||
typedef unsigned __int16 xp_uint16_t;
|
||||
#if SSE_SIZEOF_SHORT == 2
|
||||
typedef short sse_int16_t;
|
||||
typedef unsigned short sse_uint16_t;
|
||||
#elif SSE_SIZEOF___INT16 == 2
|
||||
typedef __int16 sse_int16_t;
|
||||
typedef unsigned __int16 sse_uint16_t;
|
||||
#endif
|
||||
|
||||
#if XP_SIZEOF_INT == 4
|
||||
typedef int xp_int32_t;
|
||||
typedef unsigned int xp_uint32_t;
|
||||
#elif XP_SIZEOF_LONG == 4
|
||||
typedef long xp_int32_t;
|
||||
typedef unsigned long xp_uint32_t;
|
||||
#elif XP_SIZEOF___INT32 == 4
|
||||
typedef __int32 xp_int32_t;
|
||||
typedef unsigned __int32 xp_uint32_t;
|
||||
#if SSE_SIZEOF_INT == 4
|
||||
typedef int sse_int32_t;
|
||||
typedef unsigned int sse_uint32_t;
|
||||
#elif SSE_SIZEOF_LONG == 4
|
||||
typedef long sse_int32_t;
|
||||
typedef unsigned long sse_uint32_t;
|
||||
#elif SSE_SIZEOF___INT32 == 4
|
||||
typedef __int32 sse_int32_t;
|
||||
typedef unsigned __int32 sse_uint32_t;
|
||||
#endif
|
||||
|
||||
#if XP_SIZEOF_INT == 8
|
||||
#define XP_HAVE_INT64_T
|
||||
#define XP_HAVE_UINT64_T
|
||||
typedef int xp_int64_t;
|
||||
typedef unsigned int xp_uint64_t;
|
||||
#elif XP_SIZEOF_LONG == 8
|
||||
#define XP_HAVE_INT64_T
|
||||
#define XP_HAVE_UINT64_T
|
||||
typedef long xp_int64_t;
|
||||
typedef unsigned long xp_uint64_t;
|
||||
#elif XP_SIZEOF_LONG_LONG == 8
|
||||
#define XP_HAVE_INT64_T
|
||||
#define XP_HAVE_UINT64_T
|
||||
typedef long long xp_int64_t;
|
||||
typedef unsigned long long xp_uint64_t;
|
||||
#elif XP_SIZEOF___INT64 == 8
|
||||
#define XP_HAVE_INT64_T
|
||||
#define XP_HAVE_UINT64_T
|
||||
typedef __int64 xp_int64_t;
|
||||
typedef unsigned __int64 xp_uint64_t;
|
||||
#if SSE_SIZEOF_INT == 8
|
||||
#define SSE_HAVE_INT64_T
|
||||
#define SSE_HAVE_UINT64_T
|
||||
typedef int sse_int64_t;
|
||||
typedef unsigned int sse_uint64_t;
|
||||
#elif SSE_SIZEOF_LONG == 8
|
||||
#define SSE_HAVE_INT64_T
|
||||
#define SSE_HAVE_UINT64_T
|
||||
typedef long sse_int64_t;
|
||||
typedef unsigned long sse_uint64_t;
|
||||
#elif SSE_SIZEOF_LONG_LONG == 8
|
||||
#define SSE_HAVE_INT64_T
|
||||
#define SSE_HAVE_UINT64_T
|
||||
typedef long long sse_int64_t;
|
||||
typedef unsigned long long sse_uint64_t;
|
||||
#elif SSE_SIZEOF___INT64 == 8
|
||||
#define SSE_HAVE_INT64_T
|
||||
#define SSE_HAVE_UINT64_T
|
||||
typedef __int64 sse_int64_t;
|
||||
typedef unsigned __int64 sse_uint64_t;
|
||||
#endif
|
||||
|
||||
#if XP_SIZEOF_INT == 16
|
||||
#define XP_HAVE_INT128_T
|
||||
#define XP_HAVE_UINT128_T
|
||||
typedef int xp_int128_t;
|
||||
typedef unsigned int xp_uint128_t;
|
||||
#elif XP_SIZEOF_LONG == 16
|
||||
#define XP_HAVE_INT128_T
|
||||
#define XP_HAVE_UINT128_T
|
||||
typedef long xp_int128_t;
|
||||
typedef unsigned long xp_uint128_t;
|
||||
#elif XP_SIZEOF_LONG_LONG == 16
|
||||
#define XP_HAVE_INT128_T
|
||||
#define XP_HAVE_UINT128_T
|
||||
typedef long long xp_int128_t;
|
||||
typedef unsigned long long xp_uint128_t;
|
||||
#elif XP_SIZEOF___INT128 == 16
|
||||
#define XP_HAVE_INT128_T
|
||||
#define XP_HAVE_UINT128_T
|
||||
typedef __int128 xp_int128_t;
|
||||
typedef unsigned __int128 xp_uint128_t;
|
||||
#if SSE_SIZEOF_INT == 16
|
||||
#define SSE_HAVE_INT128_T
|
||||
#define SSE_HAVE_UINT128_T
|
||||
typedef int sse_int128_t;
|
||||
typedef unsigned int sse_uint128_t;
|
||||
#elif SSE_SIZEOF_LONG == 16
|
||||
#define SSE_HAVE_INT128_T
|
||||
#define SSE_HAVE_UINT128_T
|
||||
typedef long sse_int128_t;
|
||||
typedef unsigned long sse_uint128_t;
|
||||
#elif SSE_SIZEOF_LONG_LONG == 16
|
||||
#define SSE_HAVE_INT128_T
|
||||
#define SSE_HAVE_UINT128_T
|
||||
typedef long long sse_int128_t;
|
||||
typedef unsigned long long sse_uint128_t;
|
||||
#elif SSE_SIZEOF___INT128 == 16
|
||||
#define SSE_HAVE_INT128_T
|
||||
#define SSE_HAVE_UINT128_T
|
||||
typedef __int128 sse_int128_t;
|
||||
typedef unsigned __int128 sse_uint128_t;
|
||||
#endif
|
||||
|
||||
/* miscellaneous integral types */
|
||||
typedef xp_uint8_t xp_byte_t;
|
||||
typedef xp_uint_t xp_size_t;
|
||||
typedef xp_int_t xp_ssize_t;
|
||||
typedef xp_uint_t xp_word_t;
|
||||
typedef sse_uint8_t sse_byte_t;
|
||||
typedef sse_uint_t sse_size_t;
|
||||
typedef sse_int_t sse_ssize_t;
|
||||
typedef sse_uint_t sse_word_t;
|
||||
|
||||
/* floating-point number */
|
||||
#if defined(__FreeBSD__)
|
||||
/* TODO: check if the support for long double is complete.
|
||||
* if so, use long double for xp_real_t */
|
||||
#define XP_SIZEOF_REAL XP_SIZEOF_DOUBLE
|
||||
typedef double xp_real_t;
|
||||
#elif XP_SIZEOF_LONG_DOUBLE > XP_SIZEOF_DOUBLE
|
||||
#define XP_SIZEOF_REAL XP_SIZEOF_LONG_DOUBLE
|
||||
typedef long double xp_real_t;
|
||||
* if so, use long double for sse_real_t */
|
||||
#define SSE_SIZEOF_REAL SSE_SIZEOF_DOUBLE
|
||||
typedef double sse_real_t;
|
||||
#elif SSE_SIZEOF_LONG_DOUBLE > SSE_SIZEOF_DOUBLE
|
||||
#define SSE_SIZEOF_REAL SSE_SIZEOF_LONG_DOUBLE
|
||||
typedef long double sse_real_t;
|
||||
#else
|
||||
#define XP_SIZEOF_REAL XP_SIZEOF_DOUBLE
|
||||
typedef double xp_real_t;
|
||||
#define SSE_SIZEOF_REAL SSE_SIZEOF_DOUBLE
|
||||
typedef double sse_real_t;
|
||||
#endif
|
||||
|
||||
/* character types */
|
||||
typedef char xp_mchar_t;
|
||||
typedef int xp_mcint_t;
|
||||
typedef char sse_mchar_t;
|
||||
typedef int sse_mcint_t;
|
||||
|
||||
#if defined(__cplusplus)
|
||||
/* C++ */
|
||||
typedef wchar_t xp_wchar_t;
|
||||
typedef wchar_t xp_wcint_t;
|
||||
typedef wchar_t sse_wchar_t;
|
||||
typedef wchar_t sse_wcint_t;
|
||||
|
||||
/* all the way down from here for C */
|
||||
#elif (XP_SIZEOF_WCHAR_T == 2) || (XP_SIZEOF_WCHAR_T == 0)
|
||||
typedef unsigned short xp_wchar_t;
|
||||
typedef unsigned short xp_wcint_t;
|
||||
#elif (XP_SIZEOF_WCHAR_T == 4)
|
||||
#elif (SSE_SIZEOF_WCHAR_T == 2) || (SSE_SIZEOF_WCHAR_T == 0)
|
||||
typedef unsigned short sse_wchar_t;
|
||||
typedef unsigned short sse_wcint_t;
|
||||
#elif (SSE_SIZEOF_WCHAR_T == 4)
|
||||
#if defined(vms) || defined(__vms)
|
||||
typedef unsigned int xp_wchar_t;
|
||||
typedef int xp_wcint_t;
|
||||
typedef unsigned int sse_wchar_t;
|
||||
typedef int sse_wcint_t;
|
||||
#elif defined(__FreeBSD__)
|
||||
typedef int xp_wchar_t;
|
||||
typedef int xp_wcint_t;
|
||||
typedef int sse_wchar_t;
|
||||
typedef int sse_wcint_t;
|
||||
#elif (defined(sun) || defined(__sun)) && defined(_LP64)
|
||||
typedef int xp_wchar_t;
|
||||
typedef int xp_wcint_t;
|
||||
#elif XP_SIZEOF_LONG == 4
|
||||
typedef long xp_wchar_t;
|
||||
typedef long xp_wcint_t;
|
||||
typedef int sse_wchar_t;
|
||||
typedef int sse_wcint_t;
|
||||
#elif SSE_SIZEOF_LONG == 4
|
||||
typedef long sse_wchar_t;
|
||||
typedef long sse_wcint_t;
|
||||
#else
|
||||
typedef int xp_wchar_t;
|
||||
typedef int xp_wcint_t;
|
||||
typedef int sse_wchar_t;
|
||||
typedef int sse_wcint_t;
|
||||
#endif
|
||||
#else
|
||||
#error unsupported size of wchar_t
|
||||
#endif
|
||||
|
||||
#if defined(_WIN32) && (defined(UNICODE)||defined(_UNICODE))
|
||||
#define XP_CHAR_IS_WCHAR
|
||||
typedef xp_wchar_t xp_char_t;
|
||||
typedef xp_wcint_t xp_cint_t;
|
||||
#define SSE_CHAR_IS_WCHAR
|
||||
typedef sse_wchar_t sse_char_t;
|
||||
typedef sse_wcint_t sse_cint_t;
|
||||
#else
|
||||
#if defined(XP_CHAR_IS_MCHAR)
|
||||
typedef xp_mchar_t xp_char_t;
|
||||
typedef xp_mcint_t xp_cint_t;
|
||||
#elif defined(XP_CHAR_IS_WCHAR)
|
||||
typedef xp_wchar_t xp_char_t;
|
||||
typedef xp_wcint_t xp_cint_t;
|
||||
#if defined(SSE_CHAR_IS_MCHAR)
|
||||
typedef sse_mchar_t sse_char_t;
|
||||
typedef sse_mcint_t sse_cint_t;
|
||||
#elif defined(SSE_CHAR_IS_WCHAR)
|
||||
typedef sse_wchar_t sse_char_t;
|
||||
typedef sse_wcint_t sse_cint_t;
|
||||
#elif defined(_MBCS)
|
||||
#define XP_CHAR_IS_MCHAR
|
||||
typedef xp_mchar_t xp_char_t;
|
||||
typedef xp_mcint_t xp_cint_t;
|
||||
#define SSE_CHAR_IS_MCHAR
|
||||
typedef sse_mchar_t sse_char_t;
|
||||
typedef sse_mcint_t sse_cint_t;
|
||||
#else
|
||||
#define XP_CHAR_IS_WCHAR
|
||||
typedef xp_wchar_t xp_char_t;
|
||||
typedef xp_wcint_t xp_cint_t;
|
||||
#define SSE_CHAR_IS_WCHAR
|
||||
typedef sse_wchar_t sse_char_t;
|
||||
typedef sse_wcint_t sse_cint_t;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(XP_CHAR_IS_WCHAR) && defined(_WIN32)
|
||||
#if defined(SSE_CHAR_IS_WCHAR) && defined(_WIN32)
|
||||
#ifndef UNICODE
|
||||
#define UNICODE
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user