--- parser3/src/include/pa_config_includes.h 2001/11/15 18:04:18 1.13 +++ parser3/src/include/pa_config_includes.h 2003/03/26 13:46:58 1.23.2.5.2.1 @@ -1,16 +1,16 @@ /** @file Parser: includes all Configure-d headers - Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) - Author: Alexander Petrosyan (http://paf.design.ru) - - $Id: pa_config_includes.h,v 1.13 2001/11/15 18:04:18 paf Exp $ - + Copyright (c) 2001-2003 ArtLebedev Group (http://www.artlebedev.com) + Author: Alexandr Petrosian (http://paf.design.ru) when used Configure [HAVE_CONFIG_H] it uses defines from Configure, fixed otherwise. */ +#ifndef PA_CONFIG_INCLUDES_H +#define PA_CONFIG_INCLUDES_H + #if _MSC_VER # pragma warning(disable:4291) // disable warning // "no matching operator delete found; memory will not be freed if initialization throws an exception @@ -70,13 +70,7 @@ # include #endif -#ifdef HAVE_TIME_H -# include -#endif - -#ifdef HAVE_STDLIB_H -# include -#endif +#include #ifdef HAVE_STRING_H # include @@ -97,3 +91,73 @@ #ifdef HAVE_NEW #include #endif + +#ifdef HAVE_SYS_FILE_H +#include +#endif + +#ifdef HAVE_SYS_LOCKING_H +#include +#endif + +#ifdef HAVE_SYS_TYPES_H +#include +#endif + +#ifdef HAVE_SYS_SELECT_H +#include +#endif + +#ifdef HAVE_SIGNAL_H +#include +#endif + +#ifdef HAVE_SYS_SOCKET_H +# include +#else +# if defined(HAVE_WINSOCK_H) && !defined(_MSC_VER) && !defined(CYGWIN) +# include +# endif +#endif + +// must go anywhere after winsock [cygwin time.h checks for already inclusion of winsock.h] +#if TIME_WITH_SYS_TIME +# include +# include +#else +# ifdef HAVE_SYS_TIME_H +# include +# else +# include +# endif +#endif + + +#ifdef HAVE_NETINET_IN_H +#include +#endif + +#ifdef HAVE_ARPA_INET_H +#include +#endif + +#ifdef HAVE_NETDB_H +#include +#endif + + +// math function replacements + +#ifndef HAVE_TRUNC +inline double trunc(double param) { return param > 0? floor(param) : ceil(param); } +#endif + +#ifndef HAVE_ROUND +inline double round(double param) { return floor(param+0.5); } +#endif + +#ifndef HAVE_SIGN +inline double sign(double param) { return param > 0 ? 1 : ( param < 0 ? -1 : 0 ); } +#endif + +#endif