home *** CD-ROM | disk | FTP | other *** search
/ Windows NT Super Tune-Up Kit / PIE-WindowsNTSuperTuneUpKit-1997.iso / COMPRESS / NT_PKZIP / TAILOR.BAK < prev    next >
Text File  |  1992-03-25  |  3KB  |  168 lines

  1. /* tailor.h -- Not copyrighted 1991 Mark Adler */
  2.  
  3. /* const's are inconsistently used across ANSI libraries--kill for all
  4.    header files. */
  5. #define const
  6.  
  7.  
  8. /* Use prototypes and ANSI libraries if __STDC__ */
  9. #ifdef __STDC__
  10. #  ifndef PROTO
  11. #    define PROTO
  12. #  endif /* !PROTO */
  13. #  define MODERN
  14. #endif /* __STDC__ */
  15.  
  16.  
  17. /* Use prototypes and ANSI libraries if Silicon Graphics */
  18. #ifdef sgi
  19. #  ifndef PROTO
  20. #    define PROTO
  21. #  endif /* !PROTO */
  22. #  define MODERN
  23. #endif /* sgi */
  24.  
  25.  
  26. /* Define MSDOS for Turbo C as well as Microsoft C */
  27. #ifdef __POWERC                 /* For Power C too */
  28. #  define __TURBOC__
  29. #endif /* __POWERC */
  30. #ifdef __TURBOC__
  31. #  ifndef MSDOS
  32. #    define MSDOS
  33. #  endif /* !MSDOS */
  34. #endif /* __TURBOC__ */
  35.  
  36.  
  37. /* Use prototypes and ANSI libraries if Microsoft or Borland C */
  38. #ifdef MSDOS
  39. #  ifndef PROTO
  40. #    define PROTO
  41. #  endif /* !PROTO */
  42. #  define MODERN
  43. #endif /* MSDOS */
  44.  
  45.  
  46. #ifdef WIN32
  47. #  include <windows.h>
  48. #endif
  49.  
  50. /* Turn off prototypes if requested */
  51. #ifdef NOPROTO
  52. #  ifdef PROTO
  53. #    undef PROTO
  54. #  endif /* PROTO */
  55. #endif /* NOPROT */
  56.  
  57.  
  58. /* Used to remove arguments in function prototypes for non-ANSI C */
  59. #ifdef PROTO
  60. #  define OF(a) a
  61. #else /* !PROTO */
  62. #  define OF(a) ()
  63. #endif /* ?PROTO */
  64.  
  65.  
  66. /* Allow far and huge allocation for small model (Microsoft C or Turbo C) */
  67. #ifdef MSDOS
  68. #  ifdef __TURBOC__
  69. #    include <alloc.h>
  70. #  else /* !__TURBOC__ */
  71. #    include <malloc.h>
  72. #ifndef MIPS
  73. #    define farmalloc _fmalloc
  74. #    define farfree   _ffree
  75. #endif
  76. #  endif /* ?__TURBOC__ */
  77. #else /* !MSDOS */
  78. #  define huge
  79. #  define far
  80. #  define near
  81. #  define farmalloc malloc
  82. #  define farfree   free
  83. #endif /* ?MSDOS */
  84.  
  85.  
  86. #ifdef WIN32
  87. #  define farmalloc malloc
  88. #  define farfree   free
  89. #  ifdef MIPS
  90. #    define ffree free
  91. #    define fmalloc malloc
  92. #  endif
  93. #endif
  94.  
  95. /* Define MSVMS if either MSDOS or VMS defined */
  96. #ifdef MSDOS
  97. #  define MSVMS
  98. #else /* !MSDOS */
  99. #  ifdef VMS
  100. #    define MSVMS
  101. #  endif /* VMS */
  102. #endif /* ?MSDOS */
  103.  
  104.  
  105. /* Define void, voidp, and extent (size_t) */
  106. #include <stdio.h>
  107. #ifdef MODERN
  108. #  ifndef M_XENIX
  109. #    include <stddef.h>
  110. #  endif /* !M_XENIX */
  111. #  include <stdlib.h>
  112.    typedef size_t extent;
  113.    typedef void voidp;
  114. #else /* !MODERN */
  115.    typedef unsigned int extent;
  116. #  define void int
  117.    typedef char voidp;
  118. #endif /* ?MODERN */
  119.  
  120. /* Get types and stat */
  121. #ifdef VMS
  122. #  include <types.h>
  123. #  include <stat.h>
  124. #else /* !VMS */
  125. #  include <sys/types.h>
  126. #  include <sys/stat.h>
  127. #endif /* ?VMS */
  128.  
  129.  
  130. /* Cheap fix for unlink on VMS */
  131. #ifdef VMS
  132. #  define unlink delete
  133. #endif /* VMS */
  134.  
  135.  
  136. /* For Pyramid */
  137. #ifdef pyr
  138. #  define strrchr rindex
  139. #  define ZMEM
  140. #endif /* pyr */
  141.  
  142.  
  143. /* File operations--use "b" for binary if allowed */
  144. #ifdef MODERN
  145. #  define FOPR "rb"
  146. #  define FOPM "r+b"
  147. #  define FOPW "w+b"
  148. #else /* !MODERN */
  149. #  define FOPR "r"
  150. #  define FOPM "r+"
  151. #  define FOPW "w+"
  152. #endif /* ?MODERN */
  153.  
  154.  
  155. /* Fine tuning */
  156. #ifndef MSDOS
  157. #   define BSZ 8192   /* Buffer size for files */
  158. #else /* !MSDOS */
  159. #   define BSZ 4096   /* Keep precious NEAR space */
  160.     /* BSZ can't be 8192 even for compact model because of 64K limitation
  161.      * in im_lmat.c. If you run out of memory when processing a large number
  162.      * files, use the compact model and reduce BSZ to 2048 here and in
  163.      * im_lm.asm.
  164.      */
  165. #endif /* ?MSDOS */
  166.  
  167. /* end of tailor.h */
  168.