xref: /openbsd-src/gnu/usr.bin/cvs/vms/config.h (revision b2ea75c1b17e1a9a339660e7ed45cd24946b230e)
1 /* config.h - OpenVMS/AXP specific configuration
2               June 1995 - <benjamin@cyclic.com> */
3 
4 /* We only want to build the client */
5 #define CLIENT_SUPPORT 1
6 #undef SERVER_SUPPORT
7 
8 /* VMS is case insensitive */
9 /* #define FOLD_FN_CHAR(c) tolower(c) */
10 
11 /* Temporary files named "#booger.3.6~" aren't legal under VMS,
12    Define this if you want to use names which are legal for VMS */
13 #define USE_VMS_FILENAMES 1
14 
15 /* More issues with how VMS names files, kind of a kludge.  See login.c.  */
16 #define NO_SLASH_AFTER_HOME 1
17 
18 /* Define to empty if the keyword does not work.  */
19 /* #undef const */
20 
21 /* Define if you have <dirent.h>.  */
22 /* #undef DIRENT */
23 
24 /* Define if you have <sys/param.h> */
25 /* #undef HAVE_SYS_PARAM_H */
26 
27 /* Define to `int' if <sys/types.h> doesn't define.  */
28 /* #undef gid_t */
29 
30 /* Define if you support file names longer than 14 characters.  */
31 /* #undef HAVE_LONG_FILE_NAMES */
32 
33 /* Define if you have <sys/wait.h> that is POSIX.1 compatible.  */
34 /* #define HAVE_SYS_WAIT_H 1 OpenVMS POSIX has it, but VMS does not. */
35 #undef POSIX
36 
37 /* Define if utime(file, NULL) sets file's timestamp to the present.  */
38 /* #undef HAVE_UTIME_NULL */
39 
40 /* Define if on MINIX.  */
41 /* #undef _MINIX */
42 
43 /* Define to `int' if <sys/types.h> doesn't define.  */
44 /* #undef mode_t */
45 
46 /* Define if you don't have <dirent.h>, but have <ndir.h>.  */
47 #define HAVE_NDIR_H 1
48 
49 /* Define to `int' if <sys/types.h> doesn't define.  */
50 /* #undef pid_t */
51 
52 /* Define if the system does not provide POSIX.1 features except
53    with this defined.  */
54 /* #undef _POSIX_1_SOURCE */
55 
56 /* Define if you need to in order for stat and other things to work.  */
57 /* #undef _POSIX_SOURCE */
58 
59 /* Define as the return type of signal handlers (int or void).  */
60 #define RETSIGTYPE void
61 
62 /* Define to `unsigned' if <sys/types.h> doesn't define.  */
63 /* #undef size_t */
64 
65 /* Define if you have the ANSI C header files.  */
66 #define STDC_HEADERS 1
67 
68 /* Define if you don't have <dirent.h>, but have <sys/dir.h>.  */
69 /* #undef SYSDIR */
70 
71 /* Define if you don't have <dirent.h>, but have <sys/ndir.h>.  */
72 /* #undef SYSNDIR */
73 
74 /* Define if your <sys/time.h> declares struct tm.  */
75 /* #undef TM_IN_SYS_TIME */
76 
77 /* Define to `int' if <sys/types.h> doesn't define.  */
78 /* #undef uid_t */
79 
80 /* Define if the closedir function returns void instead of int.  */
81 /* #undef VOID_CLOSEDIR */
82 
83 /* Define if you have MIT Kerberos version 4 available.  */
84 /* #undef HAVE_KERBEROS */
85 
86 /* Define if you have the fchmod function.  */
87 /* #undef HAVE_FCHMOD */
88 
89 /* Define if you have the fsync function.  */
90 /* #undef HAVE_FSYNC */
91 
92 /* Define if you have the ftime function.  */
93 /* #undef HAVE_FTIME */
94 
95 /* Define if you have the ftruncate function.  */
96 /* #undef HAVE_FTRUNCATE */
97 
98 /* Define if you have the getpagesize function.  */
99 /* #undef HAVE_GETPAGESIZE */
100 
101 /* Define if you have the krb_get_err_text function.  */
102 /* #undef HAVE_KRB_GET_ERR_TEXT */
103 
104 /* Define if you have the mkdir function */
105 #define HAVE_MKDIR 1
106 
107 /* Define if you have the rmdir function */
108 #define HAVE_RMDIR 1
109 
110 /* Define if you have the rename function */
111 #define HAVE_RENAME 1
112 
113 /* Define if you have the putenv function.  */
114 /* #undef HAVE_PUTENV */
115 
116 /* Define if you have the timezone function.  */
117 /* #undef HAVE_TIMEZONE */
118 
119 /* Define if you have the vfork function.  */
120 #define HAVE_VFORK
121 
122 /* Define if you have the vprintf function.  */
123 #define HAVE_VPRINTF
124 
125 /* Define if you have the <errno.h> header file.  */
126 /* #undef HAVE_ERRNO_H */
127 
128 /* Define if you have the <fcntl.h> header file.  */
129 /* #undef HAVE_FCNTL_H */
130 
131 /* Define if you have the <memory.h> header file.  */
132 /* #undef HAVE_MEMORY_H */
133 
134 /* Define if you have the <ndbm.h> header file.  */
135 /* #undef HAVE_NDBM_H */
136 
137 /* Define if you have the <string.h> header file.  */
138 #define HAVE_STRING_H 1
139 
140 /* Define if you have the <sys/select.h> header file.  */
141 /* #undef HAVE_SYS_SELECT_H */
142 
143 /* Define this if your <sys/socket.h> defines select() */
144 #define SYS_SOCKET_H_DEFINES_SELECT 1
145 
146 /* Define if you have the <sys/timeb.h> header file.  */
147 #define HAVE_SYS_TIMEB_H 1
148 #define HAVE_TIMEB_H 1
149 
150 /* Define if you have the <unistd.h> header file.  */
151 #define HAVE_UNISTD_H 1
152 
153 /* Define if you have the <utime.h> header file.  */
154 /* #undef HAVE_UTIME_H */
155 
156 /* Define if you have the nsl library (-lnsl).  */
157 /* #undef HAVE_LIBNSL */
158 
159 /* Define if you have the socket library (-lsocket).  */
160 /* #undef HAVE_LIBSOCKET */
161 
162 /* Under Windows NT, filenames are case-insensitive, and both / and \
163    are path component separators.  */
164 #define FOLD_FN_CHAR(c) (VMS_filename_classes[(unsigned char) (c)])
165 extern unsigned char VMS_filename_classes[];
166 #define FILENAMES_CASE_INSENSITIVE 1
167 
168 /* Like strcmp, but with the appropriate tweaks for file names.
169    Under Windows NT, filenames are case-insensitive but case-preserving,
170    and both \ and / are path element separators.  */
171 extern int fncmp (const char *n1, const char *n2);
172 
173 /* Fold characters in FILENAME to their canonical forms.
174    If FOLD_FN_CHAR is not #defined, the system provides a default
175    definition for this.  */
176 extern void fnfold (char *FILENAME);
177 
178 #define RSH_NOT_TRANSPARENT 1
179 #define START_SERVER vms_start_server
180 #define NO_SOCKET_TO_FD 1
181 #define START_SERVER_RETURNS_SOCKET 1
182 #define SEND_NEVER_PARTIAL 1
183 #define SYSTEM_GETCALLER() getlogin ()
184 #define GETPWNAM_MISSING 1
185 
186 /* Avoid name conflicts with VMS libraries.  */
187 #define getopt cvs_getopt
188 #define optind cvs_optind
189 #define optopt cvs_optopt
190 #define optarg cvs_optarg
191 #define opterr cvs_opterr
192 
193 /* argv[0] in VMS is the full pathname which would look really ugly in error
194    messages.  Even if we stripped out the directory and ".EXE;5", it would
195    still be misleading, as if one has used "OLDCVS :== ...CVS-JULY.EXE",
196    then argv[0] does not contain the name of the command which the user
197    invokes CVS with.  If there is a way for VMS to find the latter, that
198    might be worth messing with, but it also seems fine to just always call
199    it "cvs".  */
200 #define ARGV0_NOT_PROGRAM_NAME
201