From 7865b355bd52958f4b27e42b500e83c52255ef37 Mon Sep 17 00:00:00 2001 From: Sven Gothel <sgothel@jausoft.com> Date: Tue, 9 Nov 2010 02:42:03 +0100 Subject: Gluegen: Types (stddef/stdint), Header and Predefined Macro Change Read API doc ad GlueGen.java New predefined types: wchar_t, intptr_t, uintptr_t New reusable headers for gluegen usage: make/stub_includes/gluegen for native usage: make/stub_includes/platform New predefined macro #define __GLUEGEN__ 2 --- make/stub_includes/platform/gluegen_inttypes.h | 11 ++++++++++ make/stub_includes/platform/gluegen_stddef.h | 25 ++++++++++++++++++++++ make/stub_includes/platform/gluegen_stdint.h | 29 ++++++++++++++++++++++++++ make/stub_includes/platform/gluegen_types.h | 12 +++++++++++ 4 files changed, 77 insertions(+) create mode 100644 make/stub_includes/platform/gluegen_inttypes.h create mode 100644 make/stub_includes/platform/gluegen_stddef.h create mode 100644 make/stub_includes/platform/gluegen_stdint.h create mode 100644 make/stub_includes/platform/gluegen_types.h (limited to 'make/stub_includes/platform') diff --git a/make/stub_includes/platform/gluegen_inttypes.h b/make/stub_includes/platform/gluegen_inttypes.h new file mode 100644 index 0000000..445e74d --- /dev/null +++ b/make/stub_includes/platform/gluegen_inttypes.h @@ -0,0 +1,11 @@ +#ifndef __gluegen_inttypes_h +#define __gluegen_inttypes_h + +#ifdef __GLUEGEN__ + #error "This file is not intended to be used for GlueGen code generation, use the gluegen/make/stub_includes/gluegen variation instead!" +#endif + +#include <gluegen_stdint.h> + +#endif /* __gluegen_inttypes_h */ + diff --git a/make/stub_includes/platform/gluegen_stddef.h b/make/stub_includes/platform/gluegen_stddef.h new file mode 100644 index 0000000..acd9dbd --- /dev/null +++ b/make/stub_includes/platform/gluegen_stddef.h @@ -0,0 +1,25 @@ +#ifndef __gluegen_stddef_h +#define __gluegen_stddef_h + +#ifdef __GLUEGEN__ + #error "This file is not intended to be used for GlueGen code generation, use the gluegen/make/stub_includes/gluegen variation instead!" +#endif + +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) + #include <stddef.h> +#elif defined(WIN32) && defined(__GNUC__) + #include <stddef.h> +#elif defined(_WIN64) + typedef __int64 ptrdiff_t; + typedef unsigned long int size_t; +#elif defined(__ia64__) || defined(__x86_64__) + typedef long int ptrdiff_t; +#else + typedef int ptrdiff_t; +#endif + +#ifndef NULL + #define NULL ((void *)0) +#endif + +#endif /* __gluegen_stddef_h */ diff --git a/make/stub_includes/platform/gluegen_stdint.h b/make/stub_includes/platform/gluegen_stdint.h new file mode 100644 index 0000000..aabbc86 --- /dev/null +++ b/make/stub_includes/platform/gluegen_stdint.h @@ -0,0 +1,29 @@ +#ifndef __gluegen_stdint_h +#define __gluegen_stdint_h + +#ifdef __GLUEGEN__ + #error "This file is not intended to be used for GlueGen code generation, use the gluegen/make/stub_includes/gluegen variation instead!" +#endif + +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) + #include <stdint.h> +#elif defined(WIN32) && defined(__GNUC__) + #include <stdint.h> +#elif defined(_WIN32) + typedef __int32 int32_t; + typedef unsigned __int32 uint32_t; + typedef __int64 int64_t; + typedef unsigned __int64 uint64_t; +#else + typedef signed int int32_t; + typedef unsigned int uint32_t; + #if defined(__ia64__) || defined(__x86_64__) + typedef signed long int int64_t; + typedef unsigned long int uint64_t; + #else + typedef signed long long int int64_t; + typedef unsigned long long int uint64_t; + #endif +#endif + +#endif /* __gluegen_stdint_h */ diff --git a/make/stub_includes/platform/gluegen_types.h b/make/stub_includes/platform/gluegen_types.h new file mode 100644 index 0000000..7b9fd3a --- /dev/null +++ b/make/stub_includes/platform/gluegen_types.h @@ -0,0 +1,12 @@ +#ifndef __gluegen_types_h +#define __gluegen_types_h + +#ifdef __GLUEGEN__ + #error "This file is not intended to be used for GlueGen code generation, use the gluegen/make/stub_includes/gluegen variation instead!" +#endif + +#include <gluegen_stdint.h> +#include <gluegen_stddef.h> + +#endif /* __gluegen_types_h */ + -- cgit v1.2.3