150bf276cStholo /* config.h - OpenVMS/AXP specific configuration 250bf276cStholo June 1995 - <benjamin@cyclic.com> */ 350bf276cStholo 450bf276cStholo /* We only want to build the client */ 550bf276cStholo #define CLIENT_SUPPORT 1 650bf276cStholo #undef SERVER_SUPPORT 750bf276cStholo 8*43c1707eStholo /* Set up for other #if's which follow */ 9*43c1707eStholo #ifndef __DECC_VER 10*43c1707eStholo #define __DECC_VER 0 11*43c1707eStholo #endif 12*43c1707eStholo #ifndef __VMS_VER 13*43c1707eStholo #define __VMS_VER 0 14*43c1707eStholo #endif 15*43c1707eStholo 1650bf276cStholo /* VMS is case insensitive */ 1750bf276cStholo /* #define FOLD_FN_CHAR(c) tolower(c) */ 1850bf276cStholo 1950bf276cStholo /* Temporary files named "#booger.3.6~" aren't legal under VMS, 2050bf276cStholo Define this if you want to use names which are legal for VMS */ 2150bf276cStholo #define USE_VMS_FILENAMES 1 2250bf276cStholo 2350bf276cStholo /* More issues with how VMS names files, kind of a kludge. See login.c. */ 2450bf276cStholo #define NO_SLASH_AFTER_HOME 1 2550bf276cStholo 2650bf276cStholo /* Define to empty if the keyword does not work. */ 2750bf276cStholo /* #undef const */ 2850bf276cStholo 2950bf276cStholo /* Define if you have <dirent.h>. */ 3050bf276cStholo /* #undef DIRENT */ 3150bf276cStholo 3250bf276cStholo /* Define if you have <sys/param.h> */ 3350bf276cStholo /* #undef HAVE_SYS_PARAM_H */ 3450bf276cStholo 3550bf276cStholo /* Define to `int' if <sys/types.h> doesn't define. */ 3650bf276cStholo /* #undef gid_t */ 3750bf276cStholo 3850bf276cStholo /* Define if you support file names longer than 14 characters. */ 3950bf276cStholo /* #undef HAVE_LONG_FILE_NAMES */ 4050bf276cStholo 4150bf276cStholo /* Define if you have <sys/wait.h> that is POSIX.1 compatible. */ 4250bf276cStholo /* #define HAVE_SYS_WAIT_H 1 OpenVMS POSIX has it, but VMS does not. */ 4350bf276cStholo #undef POSIX 4450bf276cStholo 4550bf276cStholo /* Define if utime(file, NULL) sets file's timestamp to the present. */ 4650bf276cStholo /* #undef HAVE_UTIME_NULL */ 4750bf276cStholo 4850bf276cStholo /* Define if on MINIX. */ 4950bf276cStholo /* #undef _MINIX */ 5050bf276cStholo 5150bf276cStholo /* Define to `int' if <sys/types.h> doesn't define. */ 5250bf276cStholo /* #undef mode_t */ 5350bf276cStholo 5450bf276cStholo /* Define if you don't have <dirent.h>, but have <ndir.h>. */ 552286d8edStholo #define HAVE_NDIR_H 1 5650bf276cStholo 5750bf276cStholo /* Define to `int' if <sys/types.h> doesn't define. */ 5850bf276cStholo /* #undef pid_t */ 5950bf276cStholo 6050bf276cStholo /* Define if the system does not provide POSIX.1 features except 6150bf276cStholo with this defined. */ 6250bf276cStholo /* #undef _POSIX_1_SOURCE */ 6350bf276cStholo 6450bf276cStholo /* Define if you need to in order for stat and other things to work. */ 6550bf276cStholo /* #undef _POSIX_SOURCE */ 6650bf276cStholo 6750bf276cStholo /* Define as the return type of signal handlers (int or void). */ 6850bf276cStholo #define RETSIGTYPE void 6950bf276cStholo 7050bf276cStholo /* Define to `unsigned' if <sys/types.h> doesn't define. */ 7150bf276cStholo /* #undef size_t */ 7250bf276cStholo 7350bf276cStholo /* Define if you have the ANSI C header files. */ 7450bf276cStholo #define STDC_HEADERS 1 7550bf276cStholo 7650bf276cStholo /* Define if you don't have <dirent.h>, but have <sys/dir.h>. */ 7750bf276cStholo /* #undef SYSDIR */ 7850bf276cStholo 7950bf276cStholo /* Define if you don't have <dirent.h>, but have <sys/ndir.h>. */ 8050bf276cStholo /* #undef SYSNDIR */ 8150bf276cStholo 8250bf276cStholo /* Define if your <sys/time.h> declares struct tm. */ 8350bf276cStholo /* #undef TM_IN_SYS_TIME */ 8450bf276cStholo 8550bf276cStholo /* Define to `int' if <sys/types.h> doesn't define. */ 8650bf276cStholo /* #undef uid_t */ 8750bf276cStholo 8850bf276cStholo /* Define if the closedir function returns void instead of int. */ 8950bf276cStholo /* #undef VOID_CLOSEDIR */ 9050bf276cStholo 9150bf276cStholo /* Define if you have MIT Kerberos version 4 available. */ 9250bf276cStholo /* #undef HAVE_KERBEROS */ 9350bf276cStholo 9450bf276cStholo /* Define if you have the fchmod function. */ 9550bf276cStholo /* #undef HAVE_FCHMOD */ 9650bf276cStholo 9750bf276cStholo /* Define if you have the fsync function. */ 9850bf276cStholo /* #undef HAVE_FSYNC */ 9950bf276cStholo 10050bf276cStholo /* Define if you have the ftime function. */ 10150bf276cStholo /* #undef HAVE_FTIME */ 10250bf276cStholo 10350bf276cStholo /* Define if you have the ftruncate function. */ 10450bf276cStholo /* #undef HAVE_FTRUNCATE */ 10550bf276cStholo 10650bf276cStholo /* Define if you have the getpagesize function. */ 10750bf276cStholo /* #undef HAVE_GETPAGESIZE */ 10850bf276cStholo 10950bf276cStholo /* Define if you have the krb_get_err_text function. */ 11050bf276cStholo /* #undef HAVE_KRB_GET_ERR_TEXT */ 11150bf276cStholo 11250bf276cStholo /* Define if you have the mkdir function */ 11350bf276cStholo #define HAVE_MKDIR 1 11450bf276cStholo 11550bf276cStholo /* Define if you have the rmdir function */ 11650bf276cStholo #define HAVE_RMDIR 1 11750bf276cStholo 11850bf276cStholo /* Define if you have the rename function */ 11950bf276cStholo #define HAVE_RENAME 1 12050bf276cStholo 12150bf276cStholo /* Define if you have the putenv function. */ 12250bf276cStholo /* #undef HAVE_PUTENV */ 12350bf276cStholo 12450bf276cStholo /* Define if you have the timezone function. */ 12550bf276cStholo /* #undef HAVE_TIMEZONE */ 12650bf276cStholo 12750bf276cStholo /* Define if you have the vfork function. */ 12850bf276cStholo #define HAVE_VFORK 12950bf276cStholo 13050bf276cStholo /* Define if you have the vprintf function. */ 1312286d8edStholo #define HAVE_VPRINTF 13250bf276cStholo 13350bf276cStholo /* Define if you have the <errno.h> header file. */ 13450bf276cStholo /* #undef HAVE_ERRNO_H */ 13550bf276cStholo 13650bf276cStholo /* Define if you have the <fcntl.h> header file. */ 137*43c1707eStholo #if __DECC_VER >= 50700000 138*43c1707eStholo # define HAVE_FCNTL_H 1 139*43c1707eStholo #endif 14050bf276cStholo 14150bf276cStholo /* Define if you have the <memory.h> header file. */ 14250bf276cStholo /* #undef HAVE_MEMORY_H */ 14350bf276cStholo 14450bf276cStholo /* Define if you have the <ndbm.h> header file. */ 14550bf276cStholo /* #undef HAVE_NDBM_H */ 14650bf276cStholo 14750bf276cStholo /* Define if you have the <string.h> header file. */ 14850bf276cStholo #define HAVE_STRING_H 1 14950bf276cStholo 150*43c1707eStholo /* Define to force lib/regex.c to use malloc instead of alloca. */ 151*43c1707eStholo #define REGEX_MALLOC 1 152*43c1707eStholo 153*43c1707eStholo /* Define to force lib/regex.c to define re_comp et al. */ 154*43c1707eStholo #define _REGEX_RE_COMP 1 155*43c1707eStholo 15650bf276cStholo /* Define if you have the <sys/select.h> header file. */ 15750bf276cStholo /* #undef HAVE_SYS_SELECT_H */ 15850bf276cStholo 15950bf276cStholo /* Define this if your <sys/socket.h> defines select() */ 16050bf276cStholo #define SYS_SOCKET_H_DEFINES_SELECT 1 16150bf276cStholo 16250bf276cStholo /* Define if you have the <unistd.h> header file. */ 16350bf276cStholo #define HAVE_UNISTD_H 1 16450bf276cStholo 16550bf276cStholo /* Define if you have the <utime.h> header file. */ 16650bf276cStholo /* #undef HAVE_UTIME_H */ 16750bf276cStholo 16850bf276cStholo /* Define if you have the nsl library (-lnsl). */ 16950bf276cStholo /* #undef HAVE_LIBNSL */ 17050bf276cStholo 17150bf276cStholo /* Define if you have the socket library (-lsocket). */ 17250bf276cStholo /* #undef HAVE_LIBSOCKET */ 17350bf276cStholo 17450bf276cStholo /* Under Windows NT, filenames are case-insensitive, and both / and \ 17550bf276cStholo are path component separators. */ 17650bf276cStholo #define FOLD_FN_CHAR(c) (VMS_filename_classes[(unsigned char) (c)]) 17750bf276cStholo extern unsigned char VMS_filename_classes[]; 17850bf276cStholo #define FILENAMES_CASE_INSENSITIVE 1 17950bf276cStholo 18050bf276cStholo /* Like strcmp, but with the appropriate tweaks for file names. 18150bf276cStholo Under Windows NT, filenames are case-insensitive but case-preserving, 18250bf276cStholo and both \ and / are path element separators. */ 18350bf276cStholo extern int fncmp (const char *n1, const char *n2); 18450bf276cStholo 18550bf276cStholo /* Fold characters in FILENAME to their canonical forms. 18650bf276cStholo If FOLD_FN_CHAR is not #defined, the system provides a default 18750bf276cStholo definition for this. */ 18850bf276cStholo extern void fnfold (char *FILENAME); 18950bf276cStholo 19050bf276cStholo #define RSH_NOT_TRANSPARENT 1 19150bf276cStholo #define START_SERVER vms_start_server 19250bf276cStholo #define NO_SOCKET_TO_FD 1 19350bf276cStholo #define START_SERVER_RETURNS_SOCKET 1 19450bf276cStholo #define SEND_NEVER_PARTIAL 1 1952286d8edStholo #define SYSTEM_GETCALLER() getlogin () 1962286d8edStholo #define GETPWNAM_MISSING 1 19750bf276cStholo 19850bf276cStholo /* Avoid name conflicts with VMS libraries. */ 19950bf276cStholo #define getopt cvs_getopt 20050bf276cStholo #define optind cvs_optind 20150bf276cStholo #define optopt cvs_optopt 20250bf276cStholo #define optarg cvs_optarg 20350bf276cStholo #define opterr cvs_opterr 20450bf276cStholo 205*43c1707eStholo /* Avoid open/read/closedir name conflicts with DEC C 5.7 libraries, 206*43c1707eStholo and fix the problem with readdir() retaining the trailing period. */ 207*43c1707eStholo #define CVS_OPENDIR vms_opendir 208*43c1707eStholo #define CVS_READDIR vms_readdir 209*43c1707eStholo #define CVS_CLOSEDIR vms_closedir 210*43c1707eStholo 21150bf276cStholo /* argv[0] in VMS is the full pathname which would look really ugly in error 21250bf276cStholo messages. Even if we stripped out the directory and ".EXE;5", it would 21350bf276cStholo still be misleading, as if one has used "OLDCVS :== ...CVS-JULY.EXE", 21450bf276cStholo then argv[0] does not contain the name of the command which the user 21550bf276cStholo invokes CVS with. If there is a way for VMS to find the latter, that 21650bf276cStholo might be worth messing with, but it also seems fine to just always call 21750bf276cStholo it "cvs". */ 21850bf276cStholo #define ARGV0_NOT_PROGRAM_NAME 219*43c1707eStholo 220*43c1707eStholo #define CVS_UNLINK vms_unlink 221