00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef MISSING_H
00013 #define MISSING_H
00014
00015 #if defined(HAVE_SYS_TIME_H)
00016 # include <sys/time.h>
00017 #elif !defined(_WIN32)
00018 # define time_t long
00019 struct timeval {
00020 time_t tv_sec;
00021 time_t tv_usec;
00022 };
00023 #endif
00024 #if defined(HAVE_SYS_TYPES_H)
00025 # include <sys/types.h>
00026 #endif
00027
00028 #ifndef HAVE_ACOSH
00029 extern double acosh (double);
00030 extern double asinh (double);
00031 extern double atanh (double);
00032 #endif
00033
00034 #ifndef HAVE_CRYPT
00035 extern char *crypt (char *, char *);
00036 #endif
00037
00038 #ifndef HAVE_DUP2
00039 extern int dup2 (int, int);
00040 #endif
00041
00042 #ifndef HAVE_FINITE
00043 extern int finite (double);
00044 #endif
00045
00046 #ifndef HAVE_FLOCK
00047 extern int flock (int, int);
00048 #endif
00049
00050
00051
00052
00053
00054
00055
00056 #ifndef HAVE_HYPOT
00057 extern double hypot (double, double);
00058 #endif
00059
00060 #ifndef HAVE_ERF
00061 extern double erf (double);
00062 extern double erfc (double);
00063 #endif
00064
00065 #ifndef HAVE_ISINF
00066 # if defined(HAVE_FINITE) && defined(HAVE_ISNAN)
00067 # define isinf(x) (!finite(x) && !isnan(x))
00068 # else
00069 extern int isinf (double);
00070 # endif
00071 #endif
00072
00073 #ifndef HAVE_ISNAN
00074 extern int isnan (double);
00075 #endif
00076
00077
00078
00079
00080
00081
00082
00083 #ifndef HAVE_MEMMOVE
00084 extern void *memmove (void *, void *, int);
00085 #endif
00086
00087
00088
00089
00090
00091
00092
00093 #ifndef HAVE_STRCASECMP
00094 extern int strcasecmp (char *, char *);
00095 #endif
00096
00097 #ifndef HAVE_STRNCASECMP
00098 extern int strncasecmp (char *, char *, int);
00099 #endif
00100
00101 #ifndef HAVE_STRCHR
00102 extern char *strchr (char *, int);
00103 extern char *strrchr (char *, int);
00104 #endif
00105
00106 #ifndef HAVE_STRERROR
00107 extern char *strerror (int);
00108 #endif
00109
00110 #ifndef HAVE_STRFTIME
00111 extern size_t strftime (char *, size_t, const char *, const struct tm *);
00112 #endif
00113
00114 #ifndef HAVE_STRSTR
00115 extern char *strstr (char *, char *);
00116 #endif
00117
00118
00119
00120
00121
00122
00123
00124 #ifndef HAVE_STRTOUL
00125 extern unsigned long strtoul (char *, char **, int);
00126 #endif
00127
00128 #ifndef HAVE_VSNPRINTF
00129 # ifdef HAVE_STDARG_PROTOTYPES
00130 # include <stdarg.h>
00131 # else
00132 # include <varargs.h>
00133 # endif
00134 extern int snprintf (char *, size_t n, char const *, ...);
00135 extern int vsnprintf (char *, size_t n, char const *, va_list);
00136 #endif
00137
00138 #endif
00139