home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 May / W2KPRK.iso / apps / posix / source / PAX / CONFIG.H < prev    next >
Encoding:
C/C++ Source or Header  |  1999-11-17  |  5.5 KB  |  196 lines

  1. /* $Source: /u/mark/src/pax/RCS/config.h,v $
  2.  *
  3.  * $Revision: 1.2 $
  4.  *
  5.  * config.h - configuration options for PAX
  6.  *
  7.  * DESCRIPTION
  8.  *
  9.  *    This file contains a number of configurable parameters for the
  10.  *    PAX software.  This files should be edited prior to makeing the
  11.  *    package.
  12.  *
  13.  * AUTHOR
  14.  *
  15.  *    Mark H. Colburn, NAPS International (mark@jhereg.mn.org)
  16.  *
  17.  * Sponsored by The USENIX Association for public distribution. 
  18.  *
  19.  * Copyright (c) 1989 Mark H. Colburn.
  20.  * All rights reserved.
  21.  *
  22.  * Redistribution and use in source and binary forms are permitted
  23.  * provided that the above copyright notice and this paragraph are
  24.  * duplicated in all such forms and that any documentation,
  25.  * advertising materials, and other materials related to such
  26.  * distribution and use acknowledge that the software was developed
  27.  * by Mark H. Colburn and sponsored by The USENIX Association. 
  28.  *
  29.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
  30.  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  31.  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  32.  */
  33.  
  34. #ifndef _PAX_CONFIG_H
  35. #define _PAX_CONFIG_H
  36.  
  37. /* Defines */
  38.  
  39. /* XENIX_286 (SCO ugh, Xenix system V(?) 286, USG with changes...
  40.  * You will get a warning about DIRSIZ being redefined, ignore it,
  41.  * complain to SCO about include files that are messed up or send 
  42.  * mail to doug@lentni.UUCP, who can provide some patches to fix 
  43.  * your include files.
  44.  *
  45.  * Defining XENIX_286 will automatically define USG.
  46.  *
  47.  */
  48. #if 0
  49. #define XENIX_286    /* Running on a XENIX 286 system */
  50. #endif
  51.  
  52. /*
  53.  * USG - USG (UNIX System V) specific modifications  Xn
  54.  *
  55.  * Define USG if you are running UNIX System V or some similar variant  Xn
  56.  */
  57. #define USG     /* Running on a USG System */
  58.  
  59. /*
  60.  * BSD - BSD (Berkeley) specific modifications  Xn
  61.  *
  62.  * Define BSD if you are running some version of BSD UNIX  Xn
  63.  */
  64. #if 0
  65. #define BSD     /* Running on a BSD System */
  66. #endif
  67.  
  68. /*
  69.  * DEF_AR_FILE - tar only (required)
  70.  *
  71.  * DEF_AR_FILE should contain the full pathname of your favorite archive
  72.  * device.  Normally this would be a tape drive, but it may be a disk drive
  73.  * on those systems that don't have tape drives.
  74.  */
  75. #define DEF_AR_FILE    "/dev/qic"    /* The default archive on your system */
  76.  
  77. /*
  78.  * TTY - device which interactive queries should be directed to (required)
  79.  *
  80.  * This is the device to which interactive queries will be sent to and
  81.  * received from.  On most unix systems, this should be /dev/tty, however, on
  82.  * some systems, such as MS-DOS, it my need to be different (e.g. "con:").
  83.  */
  84. #define    TTY    "/dev/tty"    /* for most versions of UNIX */
  85. #if 0
  86. #define    TTY    "con:"        /* For MS-DOS */
  87. #endif
  88.  
  89. /*
  90.  * PAXDIR - if you do not have directory access routines
  91.  *
  92.  * Define PAXDIR if you do not have Doug Gwyn's dirent package installed
  93.  * as a system library or you wish to use the version supplied with PAX.  
  94.  *
  95.  * NOTE: DO NOT DEFINE THIS IF YOU HAVE BERKELEY DIRECTORY ACCESS ROUTINES.
  96.  */
  97. #if 0
  98. #define PAXDIR        /* use paxdir.h paxdir.c */
  99. #endif
  100.  
  101. /*
  102.  * DIRENT - directory access routines (required)
  103.  *
  104.  * If you have Doug Gwyn's dirent package installed, either as a system
  105.  * library, or are using the paxdir.c and paxdir.h routines which come with 
  106.  * PAX, then define dirent. 
  107.  *
  108.  * NOTE: DO NOT DEFINE THIS IF YOU HAVE BERKELEY DIRECTORY ACCESS ROUTINES.
  109.  */
  110. #if 0
  111. #define DIRENT        /* use POSIX compatible directory routines */
  112. #endif
  113.  
  114. /*
  115.  * OFFSET - compiler dependent offset type
  116.  * 
  117.  * OFFSET is the type which is returned by lseek().  It is different on
  118.  * some systems.  Most define it to be off_t, but some define it to be long.
  119.  */
  120. #define OFFSET    off_t    /* for most BSD, USG and other systems */
  121. #if 0
  122. #define OFFSET    long    /* for most of the rest of them... */
  123. #endif
  124.  
  125. /*
  126.  * VOID - compiler support for VOID types
  127.  *
  128.  * If your system does not support void, then this should be defined to
  129.  * int, otherwise, it should be left undefined.
  130.  *
  131.  * For ANSI Systems this should always be blank.
  132.  */
  133. #ifndef __STDC__
  134. /* #define void    int    /* for system which do support void */
  135. #endif
  136.  
  137. /*
  138.  * SIG_T - return type for the signal routine
  139.  *
  140.  * Some systems have signal defines to return an int *, other return a
  141.  * void *.  Please choose the correct value for your system.
  142.  */
  143. #define SIG_T    void    /* signal defined as "void (*signal)()" */
  144. #if 0
  145. #define SIG_T    int    /* signal defined as "int (*signal)()" */
  146. #endif
  147.  
  148. /*
  149.  * STRCSPN - use the strcspn function included with pax
  150.  *
  151.  * Some systems do not have the strcspn() function in their C libraries.
  152.  * For those system define STRCSPN and the one provided in regexp.c will 
  153.  * be used.
  154.  */
  155. #if 0
  156. #define STRCSPN    /* implementation does not have strcspn() */
  157. #endif
  158.  
  159. /*
  160.  * STRERROR - use the strerror function included with pax
  161.  *
  162.  * Non-Ansi systems do not have the strerror() function in their C libraries.
  163.  * For those system define STRERROR and the one provided in warn.c will  Xn
  164.  * be used instead.
  165.  */
  166. #ifndef __STDC__
  167. #define STRERROR    /* implementation does not have strerror() */
  168. #endif
  169. /*
  170.  
  171. /*
  172.  * END OF CONFIGURATION SECTION
  173.  *
  174.  * Nothing beyond this point should need to be changed
  175.  */
  176.  
  177. #ifdef BSD
  178. #ifdef USG
  179. #include "You must first edit config.h and Makefile to configure pax."
  180. #endif
  181. #endif
  182. /*
  183.  * Do a little sanity checking
  184.  */
  185. #ifdef PAXDIR
  186. #  ifndef DIRENT
  187. #    define DIRENT
  188. #  endif
  189. #endif
  190.  
  191. #ifdef XENIX_286
  192. #  define USG
  193. #endif /* XENIX_286 */
  194.  
  195. #endif /* _PAX_CONFIG_H */
  196.