* time/tzset.c (__tzname, __daylight, __timezone): Don't check
[kopensolaris-gnu/glibc.git] / time / private.h
index 8852b83..651a6f1 100644 (file)
 
 #ifndef lint
 #ifndef NOID
-static char    privatehid[] = "@(#)private.h   7.10";
+static char    privatehid[] = "@(#)private.h   7.33";
 #endif /* !defined NOID */
 #endif /* !defined lint */
 
 /*
-** const
+** Defaults for preprocessor symbols.
+** You can override these in your C compiler options, e.g. `-DHAVE_ADJTIME=0'.
 */
 
-#ifndef const
-#ifndef __STDC__
-#define const
-#endif /* !defined __STDC__ */
-#endif /* !defined const */
+#ifndef HAVE_ADJTIME
+#define HAVE_ADJTIME           1
+#endif /* !defined HAVE_ADJTIME */
+
+#ifndef HAVE_SETTIMEOFDAY
+#define HAVE_SETTIMEOFDAY      3
+#endif /* !defined HAVE_SETTIMEOFDAY */
+
+#ifndef HAVE_UNISTD_H
+#define HAVE_UNISTD_H          1
+#endif /* !defined HAVE_UNISTD_H */
+
+#ifndef LOCALE_HOME
+#define LOCALE_HOME            "/usr/lib/locale"
+#endif /* !defined LOCALE_HOME */
 
 /*
-** void
+** Nested includes
 */
 
-#ifndef void
-#ifndef __STDC__
-#ifndef vax
-#ifndef sun
-#define void   char
-#endif /* !defined sun */
-#endif /* !defined vax */
-#endif /* !defined __STDC__ */
-#endif /* !defined void */
+#include "sys/types.h" /* for time_t */
+#include "stdio.h"
+#include "ctype.h"
+#include "errno.h"
+#include "string.h"
+#include "limits.h"    /* for CHAR_BIT */
+#include "time.h"
+#include "stdlib.h"
+
+#if HAVE_UNISTD_H - 0
+#include "unistd.h"    /* for F_OK and R_OK */
+#endif /* HAVE_UNISTD_H - 0 */
+
+#if !(HAVE_UNISTD_H - 0)
+#ifndef F_OK
+#define F_OK   0
+#endif /* !defined F_OK */
+#ifndef R_OK
+#define R_OK   4
+#endif /* !defined R_OK */
+#endif /* !(HAVE_UNISTD_H - 0) */
 
 /*
-** INITIALIZE
+** Workarounds for compilers/systems.
 */
 
-#ifndef GNUC_or_lint
-#ifdef lint
-#define GNUC_or_lint
-#endif /* defined lint */
-#ifdef __GNUC__
-#define GNUC_or_lint
-#endif /* defined __GNUC__ */
-#endif /* !defined GNUC_or_lint */
+/*
+** SunOS 4.1.1 cc lacks const.
+*/
 
-#ifndef INITIALIZE
-#ifdef GNUC_or_lint
-#define INITIALIZE(x)  ((x) = 0)
-#endif /* defined GNUC_or_lint */
-#ifndef GNUC_or_lint
-#define INITIALIZE(x)
-#endif /* !defined GNUC_or_lint */
-#endif /* !defined INITIALIZE */
+#ifndef const
+#ifndef __STDC__
+#define const
+#endif /* !defined __STDC__ */
+#endif /* !defined const */
 
 /*
-** P((args))
+** SunOS 4.1.1 cc lacks prototypes.
 */
 
 #ifndef P
@@ -80,30 +95,24 @@ static char privatehid[] = "@(#)private.h   7.10";
 #endif /* !defined P */
 
 /*
-** genericptr_T
+** SunOS 4.1.1 headers lack EXIT_SUCCESS.
 */
 
-#ifdef __STDC__
-typedef void *         genericptr_T;
-#endif /* defined __STDC__ */
-#ifndef __STDC__
-typedef char *         genericptr_T;
-#endif /* !defined __STDC__ */
+#ifndef EXIT_SUCCESS
+#define EXIT_SUCCESS   0
+#endif /* !defined EXIT_SUCCESS */
 
-#include "sys/types.h" /* for time_t */
-#include "stdio.h"
-#include "ctype.h"
-#include "errno.h"
-#include "string.h"
-#include "limits.h"    /* for CHAR_BIT */
-#ifndef _TIME_
-#include "time.h"
-#endif /* !defined _TIME_ */
+/*
+** SunOS 4.1.1 headers lack EXIT_FAILURE.
+*/
 
-#ifndef remove
-extern int     unlink P((const char * filename));
-#define remove unlink
-#endif /* !defined remove */
+#ifndef EXIT_FAILURE
+#define EXIT_FAILURE   1
+#endif /* !defined EXIT_FAILURE */
+
+/*
+** SunOS 4.1.1 headers lack FILENAME_MAX.
+*/
 
 #ifndef FILENAME_MAX
 
@@ -122,62 +131,18 @@ extern int        unlink P((const char * filename));
 
 #endif /* !defined FILENAME_MAX */
 
-#ifndef EXIT_SUCCESS
-#define EXIT_SUCCESS   0
-#endif /* !defined EXIT_SUCCESS */
-
-#ifndef EXIT_FAILURE
-#define EXIT_FAILURE   1
-#endif /* !defined EXIT_FAILURE */
-
-#ifdef __STDC__
-
-#define alloc_size_T   size_t
-#define qsort_size_T   size_t
-#define fwrite_size_T  size_t
-
-#endif /* defined __STDC__ */
-#ifndef __STDC__
-
-#ifndef alloc_size_T
-#define alloc_size_T   unsigned
-#endif /* !defined alloc_size_T */
-
-#ifndef qsort_size_T
-#ifdef USG
-#define qsort_size_T   unsigned
-#endif /* defined USG */
-#ifndef USG
-#define qsort_size_T   int
-#endif /* !defined USG */
-#endif /* !defined qsort_size_T */
-
-#ifndef fwrite_size_T
-#define fwrite_size_T  int
-#endif /* !defined fwrite_size_T */
-
-#ifndef USG
-extern char *          sprintf P((char * buf, const char * format, ...));
-#endif /* !defined USG */
-
-#endif /* !defined __STDC__ */
-
 /*
-** Ensure that these are declared--redundantly declaring them shouldn't hurt.
+** SunOS 4.1.1 libraries lack remove.
 */
 
-extern char *          getenv P((const char * name));
-extern genericptr_T    malloc P((alloc_size_T size));
-extern genericptr_T    calloc P((alloc_size_T nelem, alloc_size_T elsize));
-extern genericptr_T    realloc P((genericptr_T oldptr, alloc_size_T newsize));
+#ifndef remove
+extern int     unlink P((const char * filename));
+#define remove unlink
+#endif /* !defined remove */
 
-#ifdef USG
-extern void            exit P((int s));
-extern void            qsort P((genericptr_T base, qsort_size_T nelem,
-                               qsort_size_T elsize, int (*comp)()));
-extern void            perror P((const char * string));
-extern void            free P((char * buf));
-#endif /* defined USG */
+/*
+** Finally, some convenience items.
+*/
 
 #ifndef TRUE
 #define TRUE   1
@@ -198,13 +163,32 @@ extern void               free P((char * buf));
        ((sizeof(type) * CHAR_BIT - 1) * 302 / 1000 + 2)
 #endif /* !defined INT_STRLEN_MAXIMUM */
 
-#ifndef LOCALE_HOME
-#define LOCALE_HOME    "/usr/lib/locale"
-#endif /* !defined LOCALE_HOME */
+/*
+** INITIALIZE(x)
+*/
+
+#ifndef GNUC_or_lint
+#ifdef lint
+#define GNUC_or_lint
+#endif /* defined lint */
+#ifndef lint
+#ifdef __GNUC__
+#define GNUC_or_lint
+#endif /* defined __GNUC__ */
+#endif /* !defined lint */
+#endif /* !defined GNUC_or_lint */
+
+#ifndef INITIALIZE
+#ifdef GNUC_or_lint
+#define INITIALIZE(x)  ((x) = 0)
+#endif /* defined GNUC_or_lint */
+#ifndef GNUC_or_lint
+#define INITIALIZE(x)
+#endif /* !defined GNUC_or_lint */
+#endif /* !defined INITIALIZE */
 
 /*
 ** UNIX was a registered trademark of UNIX System Laboratories in 1993.
-** VAX is a trademark of Digital Equipment Corporation.
 */
 
 #endif /* !defined PRIVATE_H */