1 /* $MirOS: src/gnu/usr.bin/rcs/conf.h,v 1.2 2005/07/07 13:39:29 tg Exp $ */ 2 3 /* RCS compile-time configuration */ 4 /* *NOT* automatically generated. */ 5 6 #include <errno.h> 7 #include <stdio.h> 8 #include <time.h> 9 10 /* Comment out #include lines below that do not work. */ 11 #include <sys/param.h> 12 #include <sys/stat.h> 13 #include <dirent.h> 14 #include <fcntl.h> 15 #include <limits.h> 16 #include <pwd.h> 17 #include <signal.h> 18 #include <stdlib.h> 19 #include <string.h> 20 #include <sys/mman.h> 21 #include <sys/wait.h> 22 #include <unistd.h> 23 #include <utime.h> 24 25 #define FOPEN_RB "r" 26 #define FOPEN_R_WORK "r" 27 #define FOPEN_WB "w" 28 #define FOPEN_W_WORK "w" 29 #define FOPEN_WPLUS_WORK "w+" 30 31 /* Define or comment out the following symbols as needed. */ 32 #include <stdarg.h> 33 #define bad_chmod_close 0 /* Can chmod() close file descriptors? */ 34 #define bad_creat0 0 /* Do writes fail after creat(f,0)? */ 35 #define bad_fopen_wplus 0 /* Does fopen(f,"w+") fail to truncate f? */ 36 #define getlogin_is_secure 0 /* Is getlogin() secure? Usually it's not. */ 37 #define has_dirent 1 /* Do opendir(), readdir(), closedir() work? */ 38 #define void_closedir 0 /* Does closedir() yield void? */ 39 #define has_fchmod 1 /* Does fchmod() work? */ 40 #define has_fflush_input 0 /* Does fflush() work on input files? */ 41 #define has_fputs 1 /* Does fputs() work? */ 42 #define has_ftruncate 1 /* Does ftruncate() work? */ 43 #define has_getuid 1 /* Does getuid() work? */ 44 #define has_getpwuid 1 /* Does getpwuid() work? */ 45 #define has_fgets 1 /* Does fgets() work? */ 46 #define has_memcmp 1 /* Does memcmp() work? */ 47 #define has_memcpy 1 /* Does memcpy() work? */ 48 #define has_memmove 1 /* Does memmove() work? */ 49 #define has_map_fd 0 /* Does map_fd() work? */ 50 #define has_mmap 1 /* Does mmap() work on regular files? */ 51 #define has_madvise 1 /* Does madvise() work? */ 52 #define mmap_signal SIGSEGV /* signal received if you reference nonexistent part of mmapped file */ 53 #define has_rename 1 /* Does rename() work? */ 54 #define bad_a_rename 0 /* Does rename(A,B) fail if A is unwritable? */ 55 #define bad_b_rename 0 /* Does rename(A,B) fail if B is unwritable? */ 56 #define bad_NFS_rename 0 /* Can rename(A,B) falsely report success? */ 57 #define has_seteuid 1 /* Does seteuid() work? See ../INSTALL.RCS. */ 58 #define has_setreuid 0 /* Does setreuid() work? See ../INSTALL.RCS. */ 59 #define has_setuid 1 /* Does setuid() exist? */ 60 #define has_sigaction 1 /* Does struct sigaction work? */ 61 #define has_sa_sigaction 1 /* Does struct sigaction have sa_sigaction? */ 62 #define has_signal 1 /* Does signal() work? */ 63 #define signal_type void /* type returned by signal handlers */ 64 #define sig_zaps_handler 0 /* Must a signal handler reinvoke signal()? */ 65 #define has_getcwd 1 /* Does getcwd() work? */ 66 #define needs_getabsname 0 /* Must we define getabsname? */ 67 #define has_mkstemp 1 /* Does mkstemp() work? */ 68 #define has_mktemp 1 /* Does mktemp() work? */ 69 #define has_NFS 1 /* Might NFS be used? */ 70 #define has_psiginfo 0 /* Does psiginfo() work? */ 71 #define has_psignal 1 /* Does psignal() work? */ 72 #define bad_unlink 0 /* Does unlink() fail on unwritable files? */ 73 #define has_vfork 1 /* Does vfork() work? */ 74 #define has_fork 1 /* Does fork() work? */ 75 #define has_waitpid 1 /* Does waitpid() work? */ 76 #define bad_wait_if_SIGCHLD_ignored 1 /* Does ignoring SIGCHLD break wait()? */ 77 #define RCS_SHELL "/bin/mksh" /* shell to run RCS subprogrammes */ 78 #define has_vfprintf 1 /* Does vfprintf() work? */ 79 #define large_memory 1 /* Can main memory hold entire RCS files? */ 80 /* Do struct stat s and t describe the same file? Answer d if unknown. */ 81 #define same_file(s,t,d) ((s).st_ino==(t).st_ino && (s).st_dev==(t).st_dev) 82 #define CO "/usr/bin/co" /* name of 'co' program */ 83 #define DIFF "/usr/bin/diff" /* name of 'diff' program */ 84 #define DIFF3 "/usr/libexec/diff3prog" /* name of 'diff3' program */ 85 #define DIFF3_BIN 0 /* Is diff3 user-visible (not the /usr/lib auxiliary)? */ 86 #define DIFFFLAGS "-an" /* Make diff output suitable for RCS. */ 87 #define DIFF_L 1 /* Does diff -L work? */ 88 #define DIFF_SUCCESS 0 /* DIFF status if no differences are found */ 89 #define DIFF_FAILURE 1 /* DIFF status if differences are found */ 90 #define DIFF_TROUBLE 2 /* DIFF status if trouble */ 91 #define ED "/bin/ed" /* name of 'ed' program (used only if !DIFF3_BIN) */ 92 #define MERGE "/usr/bin/merge" /* name of 'merge' program */ 93 #define TMPDIR "/tmp" /* default directory for temporary files */ 94 #define SLASH '/' /* principal filename separator */ 95 #define SLASHes '/' /* `case SLASHes:' labels all filename separators */ 96 #define isSLASH(c) ((c) == SLASH) /* Is arg a filename separator? */ 97 #define ROOTPATH(p) isSLASH((p)[0]) /* Is p an absolute pathname? */ 98 #define X_DEFAULT ",v/" /* default value for -x option */ 99 #define SENDMAIL "/usr/sbin/sendmail" /* how to send mail */ 100