summaryrefslogtreecommitdiff
path: root/include/ruby/missing.h
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-06-10 03:06:15 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-06-10 03:06:15 +0000
commit2b592580bf65040373b55ff2ccc3b59a0a231a18 (patch)
tree642a6c82599486537c3136f32cac7a644c4bf4a3 /include/ruby/missing.h
parent1b8a677b235066d91994e3490e0bce5a098196a2 (diff)
* include/ruby: moved public headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include/ruby/missing.h')
-rw-r--r--include/ruby/missing.h162
1 files changed, 162 insertions, 0 deletions
diff --git a/include/ruby/missing.h b/include/ruby/missing.h
new file mode 100644
index 00000000000..007c5466175
--- /dev/null
+++ b/include/ruby/missing.h
@@ -0,0 +1,162 @@
+/************************************************
+
+ missing.h - prototype for *.c in ./missing, and
+ for missing timeval struct
+
+ $Author$
+ $Date$
+ created at: Sat May 11 23:46:03 JST 2002
+
+************************************************/
+
+#ifndef RUBY_MISSING_H
+#define RUBY_MISSING_H 1
+
+#if defined(__cplusplus)
+extern "C" {
+#if 0
+} /* satisfy cc-mode */
+#endif
+#endif
+
+#if defined(HAVE_SYS_TIME_H)
+# include <sys/time.h>
+#elif !defined(_WIN32)
+# define time_t long
+struct timeval {
+ time_t tv_sec; /* seconds */
+ time_t tv_usec; /* microseconds */
+};
+#endif
+#if defined(HAVE_SYS_TYPES_H)
+# include <sys/types.h>
+#endif
+
+#ifndef HAVE_ACOSH
+extern double acosh(double);
+extern double asinh(double);
+extern double atanh(double);
+#endif
+
+#ifndef HAVE_CRYPT
+extern char *crypt(const char *, const char *);
+#endif
+
+#ifndef HAVE_DUP2
+extern int dup2(int, int);
+#endif
+
+#ifndef HAVE_EACCESS
+extern int eaccess(const char*, int);
+#endif
+
+#ifndef HAVE_FINITE
+extern int finite(double);
+#endif
+
+#ifndef HAVE_FLOCK
+extern int flock(int, int);
+#endif
+
+/*
+#ifndef HAVE_FREXP
+extern double frexp(double, int *);
+#endif
+*/
+
+#ifndef HAVE_HYPOT
+extern double hypot(double, double);
+#endif
+
+#ifndef HAVE_ERF
+extern double erf(double);
+extern double erfc(double);
+#endif
+
+#ifndef isinf
+# ifndef HAVE_ISINF
+# if defined(HAVE_FINITE) && defined(HAVE_ISNAN)
+# define isinf(x) (!finite(x) && !isnan(x))
+# else
+extern int isinf(double);
+# endif
+# endif
+#endif
+
+#ifndef HAVE_ISNAN
+extern int isnan(double);
+#endif
+
+/*
+#ifndef HAVE_MEMCMP
+extern int memcmp(const void *, const void *, size_t);
+#endif
+*/
+
+#ifndef HAVE_MEMMOVE
+extern void *memmove(void *, const void *, size_t);
+#endif
+
+/*
+#ifndef HAVE_MODF
+extern double modf(double, double *);
+#endif
+*/
+
+#ifndef HAVE_STRCASECMP
+extern int strcasecmp(const char *, const char *);
+#endif
+
+#ifndef HAVE_STRNCASECMP
+extern int strncasecmp(const char *, const char *, size_t);
+#endif
+
+#ifndef HAVE_STRCHR
+extern char *strchr(const char *, int);
+extern char *strrchr(const char *, int);
+#endif
+
+#ifndef HAVE_STRERROR
+extern char *strerror(int);
+#endif
+
+#ifndef HAVE_STRFTIME
+extern size_t strftime(char *, size_t, const char *, const struct tm *);
+#endif
+
+#ifndef HAVE_STRSTR
+extern char *strstr(const char *, const char *);
+#endif
+
+/*
+#ifndef HAVE_STRTOL
+extern long strtol(const char *, char **, int);
+#endif
+*/
+
+#ifndef HAVE_STRTOUL
+extern unsigned long strtoul(const char *, char **, int);
+#endif
+
+#ifndef HAVE_VSNPRINTF
+# include <stdarg.h>
+extern int snprintf(char *, size_t n, char const *, ...);
+extern int vsnprintf(char *, size_t n, char const *, va_list);
+#endif
+
+#ifndef HAVE_STRLCPY
+extern size_t strlcpy(char *, const char*, size_t);
+#endif
+
+#ifndef HAVE_STRLCAT
+extern size_t strlcat(char *, const char*, size_t);
+#endif
+
+#if defined(__cplusplus)
+#if 0
+{ /* satisfy cc-mode */
+#endif
+} /* extern "C" { */
+#endif
+
+#endif /* RUBY_MISSING_H */