X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/b75a7d8f3b4adbae880cab104ce2c6a50eee4db2..374ca955a76ecab1204ca8bfa63ff9238d998416:/icuSources/common/unicode/pwin32.h diff --git a/icuSources/common/unicode/pwin32.h b/icuSources/common/unicode/pwin32.h index 1f33a975..5d500326 100644 --- a/icuSources/common/unicode/pwin32.h +++ b/icuSources/common/unicode/pwin32.h @@ -1,7 +1,7 @@ /* ****************************************************************************** * -* Copyright (C) 1997-2003, International Business Machines +* Copyright (C) 1997-2004, International Business Machines * Corporation and others. All Rights Reserved. * ****************************************************************************** @@ -21,8 +21,16 @@ #define WIN32 #endif +#if defined(__BORLANDC__) +#define U_HAVE_PLACEMENT_NEW 0 +#define U_HAVE_INTTYPES_H 1 +#define __STDC_CONSTANT_MACROS +#endif + /* Define whether inttypes.h is available */ +#ifndef U_HAVE_INTTYPES_H #define U_HAVE_INTTYPES_H 0 +#endif /* * Define what support for C++ streams is available. @@ -43,30 +51,42 @@ #endif /* Determines whether specific types are available */ -#define U_HAVE_INT8_T 0 -#define U_HAVE_UINT8_T 0 -#define U_HAVE_INT16_T 0 -#define U_HAVE_UINT16_T 0 -#define U_HAVE_INT32_T 0 -#define U_HAVE_UINT32_T 0 -#define U_HAVE_INT64_T 0 -#define U_HAVE_UINT64_T 0 +#ifndef U_HAVE_INT8_T +#define U_HAVE_INT8_T U_HAVE_INTTYPES_H +#endif -/* Define whether namespace is supported */ -#define U_HAVE_NAMESPACE 1 +#ifndef U_HAVE_UINT8_T +#define U_HAVE_UINT8_T U_HAVE_INTTYPES_H +#endif -/* Determines the endianness of the platform */ -#define U_IS_BIG_ENDIAN 0 +#ifndef U_HAVE_INT16_T +#define U_HAVE_INT16_T U_HAVE_INTTYPES_H +#endif -/* Determine whether to override new and delete. */ -#ifndef U_OVERRIDE_CXX_ALLOCATION -#define U_OVERRIDE_CXX_ALLOCATION 1 +#ifndef U_HAVE_UINT16_T +#define U_HAVE_UINT16_T U_HAVE_INTTYPES_H #endif -/* Determine whether to override placement new and delete for STL. */ -#ifndef U_HAVE_PLACEMENT_NEW -#define U_HAVE_PLACEMENT_NEW 1 + +#ifndef U_HAVE_INT32_T +#define U_HAVE_INT32_T U_HAVE_INTTYPES_H #endif +#ifndef U_HAVE_UINT32_T +#define U_HAVE_UINT32_T U_HAVE_INTTYPES_H +#endif + +#ifndef U_HAVE_INT64_T +#define U_HAVE_INT64_T U_HAVE_INTTYPES_H +#endif + +#ifndef U_HAVE_UINT64_T +#define U_HAVE_UINT64_T U_HAVE_INTTYPES_H +#endif + +/* Define 64 bit limits */ +#define INT64_C(x) ((int64_t)x) +#define UINT64_C(x) ((uint64_t)x) + /*===========================================================================*/ /* Generic data types */ /*===========================================================================*/ @@ -75,7 +95,7 @@ need to edit the typedefs below. */ #if U_HAVE_INTTYPES_H #include -#else +#else /* U_HAVE_INTTYPES_H */ #if ! U_HAVE_INT8_T typedef signed char int8_t; @@ -94,44 +114,98 @@ typedef unsigned short uint16_t; #endif #if ! U_HAVE_INT32_T -# if defined(_LP64) - typedef signed int int32_t; -# else - typedef signed long int32_t; -# endif +typedef signed int int32_t; #endif #if ! U_HAVE_UINT32_T -# if defined(_LP64) - typedef unsigned int uint32_t; -# else - typedef unsigned long uint32_t; -# endif +typedef unsigned int uint32_t; #endif #if ! U_HAVE_INT64_T - /* Could use _MSC_VER to detect Microsoft compiler. */ - typedef signed __int64 int64_t; +/* _MSC_VER is used to detect the Microsoft compiler. */ +#ifdef _MSC_VER + typedef signed __int64 int64_t; +#else + typedef signed long long int64_t; +#endif #endif #if ! U_HAVE_UINT64_T - /* Could use _MSC_VER to detect Microsoft compiler. */ - typedef unsigned __int64 uint64_t; +/* _MSC_VER is used to detect the Microsoft compiler. */ +#ifdef _MSC_VER + typedef unsigned __int64 uint64_t; +#else + typedef unsigned long long uint64_t; +#endif #endif - #endif /*===========================================================================*/ -/* Character data types */ +/* Compiler and environment features */ /*===========================================================================*/ -#define U_SIZEOF_WCHAR_T 2 +/* Define whether namespace is supported */ +#ifndef U_HAVE_NAMESPACE +#define U_HAVE_NAMESPACE 1 +#endif + +/* Determines the endianness of the platform */ +#define U_IS_BIG_ENDIAN 0 + +/* 1 or 0 to enable or disable threads. If undefined, default is: enable threads. */ +#define ICU_USE_THREADS 1 + +/* Windows currently only runs on x86 CPUs which currently all have strong memory models. */ +#define UMTX_STRONG_MEMORY_MODEL 1 + +#ifndef U_DEBUG +#ifdef _DEBUG +#define U_DEBUG 1 +#else +#define U_DEBUG 0 +#endif +#endif + +#ifndef U_RELEASE +#ifdef NDEBUG +#define U_RELEASE 1 +#else +#define U_RELEASE 0 +#endif +#endif +/* Determine whether to disable renaming or not. This overrides the + setting in umachine.h which is for all platforms. */ +#ifndef U_DISABLE_RENAMING +#define U_DISABLE_RENAMING 0 +#endif + +/* Determine whether to override new and delete. */ +#ifndef U_OVERRIDE_CXX_ALLOCATION +#define U_OVERRIDE_CXX_ALLOCATION 1 +#endif +/* Determine whether to override placement new and delete for STL. */ +#ifndef U_HAVE_PLACEMENT_NEW +#define U_HAVE_PLACEMENT_NEW 1 +#endif + +/* Determine whether to enable tracing. */ +#ifndef U_ENABLE_TRACING +#define U_ENABLE_TRACING 1 +#endif + +/* Define the library suffix in a C syntax. */ +#define U_HAVE_LIB_SUFFIX 0 +#define U_LIB_SUFFIX_C_NAME +#define U_LIB_SUFFIX_C_NAME_STRING "" /*===========================================================================*/ -/* Do we have wcscpy and other similar functions */ +/* Information about wchar support */ /*===========================================================================*/ -#define U_HAVE_WCSCPY 1 +#define U_HAVE_WCHAR_H 1 +#define U_SIZEOF_WCHAR_T 2 + +#define U_HAVE_WCSCPY 1 /*===========================================================================*/ /* Information about POSIX support */ @@ -144,13 +218,18 @@ typedef unsigned short uint16_t; #endif #define U_TZNAME _tzname -#define U_HAVE_MMAP 0 +#define U_HAVE_MMAP 0 +#define U_HAVE_POPEN 0 /*===========================================================================*/ /* Symbol import-export control */ /*===========================================================================*/ +#ifdef U_STATIC_IMPLEMENTATION +#define U_EXPORT +#else #define U_EXPORT __declspec(dllexport) +#endif #define U_EXPORT2 __cdecl #define U_IMPORT __declspec(dllimport) @@ -158,7 +237,9 @@ typedef unsigned short uint16_t; /* Code alignment and C function inlining */ /*===========================================================================*/ +#ifndef U_INLINE #define U_INLINE __inline +#endif #if defined(_MSC_VER) && defined(_M_IX86) #define U_ALIGN_CODE(val) __asm align val @@ -171,5 +252,7 @@ typedef unsigned short uint16_t; /* Programs used by ICU code */ /*===========================================================================*/ +#ifndef U_MAKE #define U_MAKE "nmake" - +#define U_MAKE_IS_NMAKE 1 +#endif