Mercurial > projects > hoofbaby
diff deps/Platinum/ThirdParty/Neptune/Source/Core/NptConfig.h @ 0:3425707ddbf6
Initial import (hopefully this mercurial stuff works...)
author | fraserofthenight |
---|---|
date | Mon, 06 Jul 2009 08:06:28 -0700 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/deps/Platinum/ThirdParty/Neptune/Source/Core/NptConfig.h Mon Jul 06 08:06:28 2009 -0700 @@ -0,0 +1,299 @@ +/***************************************************************** +| +| Neptune - Configuration +| +| Copyright (c) 2002-2008, Axiomatic Systems, LLC. +| All rights reserved. +| +| Redistribution and use in source and binary forms, with or without +| modification, are permitted provided that the following conditions are met: +| * Redistributions of source code must retain the above copyright +| notice, this list of conditions and the following disclaimer. +| * Redistributions in binary form must reproduce the above copyright +| notice, this list of conditions and the following disclaimer in the +| documentation and/or other materials provided with the distribution. +| * Neither the name of Axiomatic Systems nor the +| names of its contributors may be used to endorse or promote products +| derived from this software without specific prior written permission. +| +| THIS SOFTWARE IS PROVIDED BY AXIOMATIC SYSTEMS ''AS IS'' AND ANY +| EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +| WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +| DISCLAIMED. IN NO EVENT SHALL AXIOMATIC SYSTEMS BE LIABLE FOR ANY +| DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +| (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +| LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +| ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +| SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +| + ****************************************************************/ + +#ifndef _NPT_CONFIG_H_ +#define _NPT_CONFIG_H_ + +/*---------------------------------------------------------------------- +| defaults ++---------------------------------------------------------------------*/ +#define NPT_CONFIG_HAVE_ASSERT_H +#define NPT_CONFIG_HAVE_STD_C +#define NPT_CONFIG_HAVE_STDLIB_H +#define NPT_CONFIG_HAVE_STDIO_H +#define NPT_CONFIG_HAVE_STDARG_H +#define NPT_CONFIG_HAVE_STRING_H +#define NPT_CONFIG_HAVE_LIMITS_H + +/*---------------------------------------------------------------------- +| standard C runtime ++---------------------------------------------------------------------*/ +#if defined(NPT_CONFIG_HAVE_STD_C) +#define NPT_CONFIG_HAVE_MALLOC +#define NPT_CONFIG_HAVE_CALLOC +#define NPT_CONFIG_HAVE_REALLOC +#define NPT_CONFIG_HAVE_FREE +#define NPT_CONFIG_HAVE_MEMCPY +#define NPT_CONFIG_HAVE_MEMSET +#define NPT_CONFIG_HAVE_MEMCMP +#define NPT_CONFIG_HAVE_GETENV +#define NPT_CONFIG_HAVE_READDIR_R +#endif /* NPT_CONFIG_HAS_STD_C */ + +#if defined(NPT_CONFIG_HAVE_STRING_H) +#define NPT_CONFIG_HAVE_STRCMP +#define NPT_CONFIG_HAVE_STRNCMP +#define NPT_CONFIG_HAVE_STRDUP +#define NPT_CONFIG_HAVE_STRLEN +#define NPT_CONFIG_HAVE_STRCPY +#define NPT_CONFIG_HAVE_STRNCPY +#endif /* NPT_CONFIG_HAVE_STRING_H */ + +#if defined(NPT_CONFIG_HAVE_STDIO_H) +#define NPT_CONFIG_HAVE_SPRINTF +#define NPT_CONFIG_HAVE_SNPRINTF +#define NPT_CONFIG_HAVE_VSPRINTF +#define NPT_CONFIG_HAVE_VSNPRINTF +#endif /* NPT_CONFIG_HAVE_STDIO_H */ + +#if defined(NPT_CONFIG_HAVE_LIMITS_H) +#define NPT_CONFIG_HAVE_INT_MIN +#define NPT_CONFIG_HAVE_INT_MAX +#define NPT_CONFIG_HAVE_UINT_MAX +#define NPT_CONFIG_HAVE_LONG_MIN +#define NPT_CONFIG_HAVE_LONG_MAX +#define NPT_CONFIG_HAVE_ULONG_MAX +#endif + +/*---------------------------------------------------------------------- +| standard C++ runtime ++---------------------------------------------------------------------*/ +#define NPT_CONFIG_HAVE_NEW_H + +/*---------------------------------------------------------------------- +| sockets ++---------------------------------------------------------------------*/ +#define NPT_CONFIG_HAVE_SOCKADDR_SA_LEN + +/*---------------------------------------------------------------------- +| platform specifics ++---------------------------------------------------------------------*/ +/* Windows 32 */ +#if defined(_WIN32) || defined(_XBOX) +#if !defined(STRICT) +#define STRICT +#endif + +/* Visual Studio 2008 defines vsnprintf */ +#if _MSC_VER < 1500 +#define vsnprintf _vsnprintf +#endif +#define snprintf _snprintf +#endif + +/* XBox */ +#if defined(_XBOX) +#define NPT_CONFIG_THREAD_STACK_SIZE 0x10000 +#endif + +/* QNX */ +#if defined(__QNX__) +#endif + +/* cygwin */ +#if defined(__CYGWIN__) +#undef NPT_CONFIG_HAVE_SOCKADDR_SA_LEN +#endif + +/* linux */ +#if defined(__linux__) +#undef NPT_CONFIG_HAVE_SOCKADDR_SA_LEN +#endif + +/* symbian */ +#if defined(__SYMBIAN32__) +/* If defined, specify the stack size of each NPT_Thread. */ +#define NPT_CONFIG_THREAD_STACK_SIZE 0x14000 +#endif + +/*---------------------------------------------------------------------- +| compiler specifics ++---------------------------------------------------------------------*/ +/* GCC */ +#if defined(__GNUC__) +#define NPT_LocalFunctionName __FUNCTION__ +#define NPT_COMPILER_UNUSED(p) (void)p +#else +#define NPT_COMPILER_UNUSED(p) +#endif + +/* TriMedia C/C++ Compiler */ +#if defined(__TCS__) +#undef NPT_CONFIG_HAVE_ASSERT_H +#undef NPT_CONFIG_HAVE_SNPRINTF +#undef NPT_CONFIG_HAVE_VSNPRINTF +#endif + +/* palmos compiler */ +#if defined(__PALMOS__) +#if __PALMOS__ <= 0x05000000 +#undef NPT_CONFIG_HAVE_ASSERT_H +#undef NPT_CONFIG_HAVE_SNPRINTF +#undef NPT_CONFIG_HAVE_VSNPRINTF +#endif +#endif + +/* Microsoft C/C++ Compiler */ +#if defined(_MSC_VER) +#define NPT_FORMAT_64 "I64" +#define NPT_CONFIG_INT64_TYPE __int64 +#define NPT_INT64_MIN _I64_MIN +#define NPT_INT64_MAX _I64_MAX +#define NPT_UINT64_MAX _UI64_MAX +#define NPT_INT64_C(_x) _x##i64 +#define NPT_UINT64_C(_x) _x##ui64 +#define NPT_LocalFunctionName __FUNCTION__ +#if !defined(_WIN32_WCE) +#define NPT_fseek _fseeki64 +#define NPT_ftell _ftelli64 +#else +#define NPT_fseek(a,b,c) fseek((a),(long)(b), (c)) +#define NPT_ftell ftell +#endif +#define NPT_stat NPT_stat_utf8 +#define NPT_stat_struct struct __stat64 +#if defined(_WIN64) +typedef __int64 NPT_PointerLong; +#else +#if _MSC_VER >= 1400 +typedef __w64 long NPT_PointerLong; +#else +typedef long NPT_PointerLong; +#endif +#endif +#define NPT_POINTER_TO_LONG(_p) ((NPT_PointerLong) (_p) ) +#if _MSC_VER >= 1400 && !defined(_WIN32_WCE) +#define NPT_CONFIG_HAVE_FOPEN_S +#define NPT_CONFIG_HAVE_FSOPEN +#define NPT_CONFIG_HAVE_SHARE_H +#define NPT_vsnprintf(s,c,f,a) _vsnprintf_s(s,c,_TRUNCATE,f,a) +#define NPT_snprintf(s,c,f,...) _snprintf_s(s,c,_TRUNCATE,f,__VA_ARGS__) +#define NPT_strncpy(d,s,c) strncpy_s(d,c+1,s,c) +#define NPT_strcpy(d,s) strcpy_s(d,strlen(s)+1,s) +#undef NPT_CONFIG_HAVE_GETENV +#define NPT_CONFIG_HAVE_DUPENV_S +#define dupenv_s _dupenv_s +#else +#define NPT_vsnprintf _vsnprintf +#define NPT_snprintf _snprintf +#endif +#if defined(_DEBUG) +#define _CRTDBG_MAP_ALLOC +#endif +#endif + +/* Windows CE */ +#if defined(_WIN32_WCE) +#if defined(NPT_CONFIG_HAVE_FOPEN_S) +#undef NPT_CONFIG_HAVE_FOPEN_S +#endif +#endif + +/* Symbian */ +#if defined(__SYMBIAN32__) +#undef NPT_CONFIG_HAVE_NEW_H +#include "e32std.h" +#define explicit +#define NPT_fseek fseek // no fseeko ? +#define NPT_ftell ftell // no ftello ? +#endif + +/*---------------------------------------------------------------------- +| defaults ++---------------------------------------------------------------------*/ +#if !defined(NPT_FORMAT_64) +#define NPT_FORMAT_64 "ll" +#endif + +#if !defined(NPT_POINTER_TO_LONG) +#define NPT_POINTER_TO_LONG(_p) ((long)(_p)) +#endif + +#if !defined(NPT_CONFIG_INT64_TYPE) +#define NPT_CONFIG_INT64_TYPE long long +#endif + +#if !defined(NPT_INT64_C) +#define NPT_INT64_C(_x) _x##LL +#endif + +#if !defined(NPT_UINT64_C) +#define NPT_UINT64_C(_x) _x##ULL +#endif + +#if !defined(NPT_snprintf) +#define NPT_snprintf snprintf +#endif + +#if !defined(NPT_strcpy) +#define NPT_strcpy strcpy +#endif + +#if !defined(NPT_strncpy) +#define NPT_strncpy strncpy +#endif + +#if !defined(NPT_vsnprintf) +#define NPT_vsnprintf vsnprintf +#endif + +#if !defined(NPT_LocalFunctionName) +#define NPT_LocalFunctionName (NULL) +#endif + +#if !defined(NPT_CONFIG_THREAD_STACK_SIZE) +#define NPT_CONFIG_THREAD_STACK_SIZE 0 +#endif + +#if !defined(NPT_fseek) +#define NPT_fseek fseeko +#endif + +#if !defined(NPT_ftell) +#define NPT_ftell ftello +#endif + +#if !defined(NPT_stat) +#define NPT_stat stat +#endif + +#if !defined(NPT_stat_struct) +#define NPT_stat_struct struct stat +#endif + +/*---------------------------------------------------------------------- +| includes ++---------------------------------------------------------------------*/ +#if defined(DMALLOC) +#include <dmalloc.h> +#endif + +#endif // _NPT_CONFIG_H_