Home | History | Annotate | Line # | Download | only in time
private.h revision 1.1.1.1
      1  1.1  jtc #ifndef PRIVATE_H
      2  1.1  jtc 
      3  1.1  jtc #define PRIVATE_H
      4  1.1  jtc 
      5  1.1  jtc /*
      6  1.1  jtc ** This header is for use ONLY with the time conversion code.
      7  1.1  jtc ** There is no guarantee that it will remain unchanged,
      8  1.1  jtc ** or that it will remain at all.
      9  1.1  jtc ** Do NOT copy it to any system include directory.
     10  1.1  jtc ** Thank you!
     11  1.1  jtc */
     12  1.1  jtc 
     13  1.1  jtc /*
     14  1.1  jtc ** ID
     15  1.1  jtc */
     16  1.1  jtc 
     17  1.1  jtc #ifndef lint
     18  1.1  jtc #ifndef NOID
     19  1.1  jtc static char	privatehid[] = "@(#)private.h	7.33";
     20  1.1  jtc #endif /* !defined NOID */
     21  1.1  jtc #endif /* !defined lint */
     22  1.1  jtc 
     23  1.1  jtc /*
     24  1.1  jtc ** Defaults for preprocessor symbols.
     25  1.1  jtc ** You can override these in your C compiler options, e.g. `-DHAVE_ADJTIME=0'.
     26  1.1  jtc */
     27  1.1  jtc 
     28  1.1  jtc #ifndef HAVE_ADJTIME
     29  1.1  jtc #define HAVE_ADJTIME		1
     30  1.1  jtc #endif /* !defined HAVE_ADJTIME */
     31  1.1  jtc 
     32  1.1  jtc #ifndef HAVE_SETTIMEOFDAY
     33  1.1  jtc #define HAVE_SETTIMEOFDAY	3
     34  1.1  jtc #endif /* !defined HAVE_SETTIMEOFDAY */
     35  1.1  jtc 
     36  1.1  jtc #ifndef HAVE_UNISTD_H
     37  1.1  jtc #define HAVE_UNISTD_H		1
     38  1.1  jtc #endif /* !defined HAVE_UNISTD_H */
     39  1.1  jtc 
     40  1.1  jtc #ifndef LOCALE_HOME
     41  1.1  jtc #define LOCALE_HOME		"/usr/lib/locale"
     42  1.1  jtc #endif /* !defined LOCALE_HOME */
     43  1.1  jtc 
     44  1.1  jtc /*
     45  1.1  jtc ** Nested includes
     46  1.1  jtc */
     47  1.1  jtc 
     48  1.1  jtc #include "sys/types.h"	/* for time_t */
     49  1.1  jtc #include "stdio.h"
     50  1.1  jtc #include "ctype.h"
     51  1.1  jtc #include "errno.h"
     52  1.1  jtc #include "string.h"
     53  1.1  jtc #include "limits.h"	/* for CHAR_BIT */
     54  1.1  jtc #include "time.h"
     55  1.1  jtc #include "stdlib.h"
     56  1.1  jtc 
     57  1.1  jtc #if HAVE_UNISTD_H - 0
     58  1.1  jtc #include "unistd.h"	/* for F_OK and R_OK */
     59  1.1  jtc #endif /* HAVE_UNISTD_H - 0 */
     60  1.1  jtc 
     61  1.1  jtc #if !(HAVE_UNISTD_H - 0)
     62  1.1  jtc #ifndef F_OK
     63  1.1  jtc #define F_OK	0
     64  1.1  jtc #endif /* !defined F_OK */
     65  1.1  jtc #ifndef R_OK
     66  1.1  jtc #define R_OK	4
     67  1.1  jtc #endif /* !defined R_OK */
     68  1.1  jtc #endif /* !(HAVE_UNISTD_H - 0) */
     69  1.1  jtc 
     70  1.1  jtc /*
     71  1.1  jtc ** Workarounds for compilers/systems.
     72  1.1  jtc */
     73  1.1  jtc 
     74  1.1  jtc /*
     75  1.1  jtc ** SunOS 4.1.1 cc lacks const.
     76  1.1  jtc */
     77  1.1  jtc 
     78  1.1  jtc #ifndef const
     79  1.1  jtc #ifndef __STDC__
     80  1.1  jtc #define const
     81  1.1  jtc #endif /* !defined __STDC__ */
     82  1.1  jtc #endif /* !defined const */
     83  1.1  jtc 
     84  1.1  jtc /*
     85  1.1  jtc ** SunOS 4.1.1 cc lacks prototypes.
     86  1.1  jtc */
     87  1.1  jtc 
     88  1.1  jtc #ifndef P
     89  1.1  jtc #ifdef __STDC__
     90  1.1  jtc #define P(x)	x
     91  1.1  jtc #endif /* defined __STDC__ */
     92  1.1  jtc #ifndef __STDC__
     93  1.1  jtc #define P(x)	()
     94  1.1  jtc #endif /* !defined __STDC__ */
     95  1.1  jtc #endif /* !defined P */
     96  1.1  jtc 
     97  1.1  jtc /*
     98  1.1  jtc ** SunOS 4.1.1 headers lack EXIT_SUCCESS.
     99  1.1  jtc */
    100  1.1  jtc 
    101  1.1  jtc #ifndef EXIT_SUCCESS
    102  1.1  jtc #define EXIT_SUCCESS	0
    103  1.1  jtc #endif /* !defined EXIT_SUCCESS */
    104  1.1  jtc 
    105  1.1  jtc /*
    106  1.1  jtc ** SunOS 4.1.1 headers lack EXIT_FAILURE.
    107  1.1  jtc */
    108  1.1  jtc 
    109  1.1  jtc #ifndef EXIT_FAILURE
    110  1.1  jtc #define EXIT_FAILURE	1
    111  1.1  jtc #endif /* !defined EXIT_FAILURE */
    112  1.1  jtc 
    113  1.1  jtc /*
    114  1.1  jtc ** SunOS 4.1.1 headers lack FILENAME_MAX.
    115  1.1  jtc */
    116  1.1  jtc 
    117  1.1  jtc #ifndef FILENAME_MAX
    118  1.1  jtc 
    119  1.1  jtc #ifndef MAXPATHLEN
    120  1.1  jtc #ifdef unix
    121  1.1  jtc #include "sys/param.h"
    122  1.1  jtc #endif /* defined unix */
    123  1.1  jtc #endif /* !defined MAXPATHLEN */
    124  1.1  jtc 
    125  1.1  jtc #ifdef MAXPATHLEN
    126  1.1  jtc #define FILENAME_MAX	MAXPATHLEN
    127  1.1  jtc #endif /* defined MAXPATHLEN */
    128  1.1  jtc #ifndef MAXPATHLEN
    129  1.1  jtc #define FILENAME_MAX	1024		/* Pure guesswork */
    130  1.1  jtc #endif /* !defined MAXPATHLEN */
    131  1.1  jtc 
    132  1.1  jtc #endif /* !defined FILENAME_MAX */
    133  1.1  jtc 
    134  1.1  jtc /*
    135  1.1  jtc ** SunOS 4.1.1 libraries lack remove.
    136  1.1  jtc */
    137  1.1  jtc 
    138  1.1  jtc #ifndef remove
    139  1.1  jtc extern int	unlink P((const char * filename));
    140  1.1  jtc #define remove	unlink
    141  1.1  jtc #endif /* !defined remove */
    142  1.1  jtc 
    143  1.1  jtc /*
    144  1.1  jtc ** Finally, some convenience items.
    145  1.1  jtc */
    146  1.1  jtc 
    147  1.1  jtc #ifndef TRUE
    148  1.1  jtc #define TRUE	1
    149  1.1  jtc #endif /* !defined TRUE */
    150  1.1  jtc 
    151  1.1  jtc #ifndef FALSE
    152  1.1  jtc #define FALSE	0
    153  1.1  jtc #endif /* !defined FALSE */
    154  1.1  jtc 
    155  1.1  jtc #ifndef INT_STRLEN_MAXIMUM
    156  1.1  jtc /*
    157  1.1  jtc ** 302 / 1000 is log10(2.0) rounded up.
    158  1.1  jtc ** Subtract one for the sign bit;
    159  1.1  jtc ** add one for integer division truncation;
    160  1.1  jtc ** add one more for a minus sign.
    161  1.1  jtc */
    162  1.1  jtc #define INT_STRLEN_MAXIMUM(type) \
    163  1.1  jtc 	((sizeof(type) * CHAR_BIT - 1) * 302 / 1000 + 2)
    164  1.1  jtc #endif /* !defined INT_STRLEN_MAXIMUM */
    165  1.1  jtc 
    166  1.1  jtc /*
    167  1.1  jtc ** INITIALIZE(x)
    168  1.1  jtc */
    169  1.1  jtc 
    170  1.1  jtc #ifndef GNUC_or_lint
    171  1.1  jtc #ifdef lint
    172  1.1  jtc #define GNUC_or_lint
    173  1.1  jtc #endif /* defined lint */
    174  1.1  jtc #ifndef lint
    175  1.1  jtc #ifdef __GNUC__
    176  1.1  jtc #define GNUC_or_lint
    177  1.1  jtc #endif /* defined __GNUC__ */
    178  1.1  jtc #endif /* !defined lint */
    179  1.1  jtc #endif /* !defined GNUC_or_lint */
    180  1.1  jtc 
    181  1.1  jtc #ifndef INITIALIZE
    182  1.1  jtc #ifdef GNUC_or_lint
    183  1.1  jtc #define INITIALIZE(x)	((x) = 0)
    184  1.1  jtc #endif /* defined GNUC_or_lint */
    185  1.1  jtc #ifndef GNUC_or_lint
    186  1.1  jtc #define INITIALIZE(x)
    187  1.1  jtc #endif /* !defined GNUC_or_lint */
    188  1.1  jtc #endif /* !defined INITIALIZE */
    189  1.1  jtc 
    190  1.1  jtc /*
    191  1.1  jtc ** UNIX was a registered trademark of UNIX System Laboratories in 1993.
    192  1.1  jtc */
    193  1.1  jtc 
    194  1.1  jtc #endif /* !defined PRIVATE_H */
    195