xref: /plan9/sys/src/ape/cmd/pax/config.h (revision 9a747e4fd48b9f4522c70c07e8f882a15030f964)
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 /* #define XENIX_286	/* Running on a XENIX 286 system */
49 
50 /*
51  * USG - USG (Unix System V) specific modifications
52  *
53  * Define USG if you are running Unix System V or some similar variant
54  */
55 #define USG 	/* Running on a USG System */
56 
57 /*
58  * BSD - BSD (Berkely) specific modifications
59  *
60  * Define BSD if you are running some version of BSD Unix
61  */
62 /* #define BSD 	/* Running on a BSD System */
63 
64 /*
65  * DEF_AR_FILE - tar only (required)
66  *
67  * DEF_AR_FILE should contain the full pathname of your favorite archive
68  * device.  Normally this would be a tape drive, but it may be a disk drive
69  * on those systems that don't have tape drives.
70  */
71 #define DEF_AR_FILE	"-"	/* The default archive on your system */
72 
73 /*
74  * TTY - device which interactive queries should be directed to (required)
75  *
76  * This is the device to which interactive queries will be sent to and
77  * received from.  On most unix systems, this should be /dev/tty, however, on
78  * some systems, such as MS-DOS, it my need to be different (e.g. "con:").
79  */
80 /* #define	TTY	"/dev/tty"	/* for most versions of UNIX */
81 /* #define	TTY	"con:"		/* For MS-DOS */
82 #define	TTY	"/dev/cons"		/* for Plan 9 */
83 
84 /*
85  * PAXDIR - if you do not have directory access routines
86  *
87  * Define PAXDIR if you do not have Doug Gwyn's dirent package installed
88  * as a system library or you wish to use the version supplied with PAX.
89  *
90  * NOTE: DO NOT DEFINE THIS IF YOU HAVE BERKELEY DIRECTORY ACCESS ROUTINES.
91  */
92 /* #define PAXDIR		/* use paxdir.h paxdir.c */
93 
94 /*
95  * DIRENT - directory access routines (required)
96  *
97  * If you have Doug Gwyn's dirent package installed, either as a system
98  * library, or are using the paxdir.c and paxdir.h routines which come with
99  * PAX, then define dirent.
100  *
101  * NOTE: DO NOT DEFINE THIS IF YOU HAVE BERKELEY DIRECTORY ACCESS ROUTINES.
102  */
103 #define DIRENT		/* use POSIX compatible directory routines */
104 
105 /*
106  * OFFSET - compiler dependent offset type
107  *
108  * OFFSET is the type which is returned by lseek().  It is different on
109  * some systems.  Most define it to be off_t, but some define it to be long.
110  */
111 #define OFFSET	off_t	/* for most BSD, USG and other systems */
112 /* #define OFFSET	long	/* for most of the rest of them... */
113 
114 /*
115  * VOID - compiler support for VOID types
116  *
117  * If your system does not support void, then this should be defined to
118  * int, otherwise, it should be left undefined.
119  *
120  * For ANSI Systems this should always be blank.
121  */
122 #ifndef __STDC__
123 /* #define void	int	/* for system which do support void */
124 #endif
125 
126 /*
127  * SIG_T - return type for the signal routine
128  *
129  * Some systems have signal defines to return an int *, other return a
130  * void *.  Please choose the correct value for your system.
131  */
132 #define SIG_T	void	/* signal defined as "void (*signal)()" */
133 /* #define SIG_T	int	/* signal defined as "int (*signal)()" */
134 
135 /*
136  * STRCSPN - use the strcspn function included with pax
137  *
138  * Some systems do not have the strcspn() function in their C libraries.
139  * For those system define STRCSPN and the one provided in regexp.c will
140  * be used.
141  */
142 /* #define STRCSPN	/* implementation does not have strcspn() */
143 
144 /*
145  * STRERROR - use the strerror function included with pax
146  *
147  * Non-Ansi systems do not have the strerror() function in their C libraries.
148  * For those system define STRERROR and the one provided in misc.c will
149  * be used instead.
150  */
151 /* #define STRERROR	/* implementation does not have strerror() */
152 
153 /*
154 
155 /*
156  * END OF CONFIGURATION SECTION
157  *
158  * Nothing beyond this point should need to be changed
159  */
160 
161 #ifdef BSD
162 #ifdef USG
163 #include "You must first edit config.h and Makefile to configure pax."
164 #endif
165 #endif
166 /*
167  * Do a little sanity checking
168  */
169 #ifdef PAXDIR
170 #  ifndef DIRENT
171 #    define DIRENT
172 #  endif
173 #endif
174 
175 #ifdef XENIX_286
176 #  define USG
177 #endif /* XENIX_286 */
178 
179 #endif /* _PAX_CONFIG_H */
180 
181 #ifndef __STDC__
182 #define __STDC__
183 #endif
184