summary refs log tree commit diff
path: root/time/private.h
diff options
context:
space:
mode:
Diffstat (limited to 'time/private.h')
-rw-r--r--time/private.h206
1 files changed, 95 insertions, 111 deletions
diff --git a/time/private.h b/time/private.h
index 8852b8337b..651a6f1b56 100644
--- a/time/private.h
+++ b/time/private.h
@@ -16,58 +16,73 @@
 
 #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 */