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