Thread View: comp.unix.cray
1 messages
1 total messages
Started by mkienenb
Thu, 23 Mar 1995 09:26
RCS "checkout" does not work under UNICOS 8.0.2.2
Author: mkienenb
Date: Thu, 23 Mar 1995 09:26
Date: Thu, 23 Mar 1995 09:26
634 lines
22034 bytes
22034 bytes
I've attempted to compile and install RCS and CVS on our cray Y-MP
which is running UNICOS 8.0.2.2.
The only changes I made were to rename the variable "join" to
"join_flag" to avoid conflicts with join() [which is a standard library
function under UNICOS] for co.c and to comment out a check for signals in
the configuration file, since this configuration executable crashes with
an error.
sh -x conf.sh >a.h 2>conf.error": Error code 130
Everything seemed to compile ok afterwards and I had no problems
installing CVS. When I went to create a new CVS archive, everything
worked perfectly as far as I could tell. I imported my entire project
without problem. However, when I went to check out my project, I
got the following error from RCS "co" for every single file.
cvs checkout: could not check out reslist.1
I have CVS and RCS installed on our local workstations, so I exported
my CVS archive and tried the checkout from the workstation, and it
checked out perfectly. So it's not a problem with anything other
than the actual operation with "co". I later tested co by itself
and the same problem continued to occur.
If anyone has additional ideas, I'd be happy to hear them.
If you need more information, I can supply that as well.
I've set my Followup-To to my email address. I'll post a summary
of reply if there are any requests to do so. I have also emailed
this to rcs-bugs@cs.purdue.edu.
Following my signature is
- Output from diff between my modified RCS and the distribution RCS
- Output from "make"
- conf.h file
- Mike Kienenberger
Arctic Region Supercomputing Center
mkienenb@arsc.edu
V=================output of "make" follows follows==================V
rm -f a.*
CC='cc' CFLAGS=' -O ' \
COMPAT2='0' \
DIFF3='/usr/local/adm/resman/tools/bin/diff3' DIFF3_A='1'
DIFF3_BIN='1' \
DIFF='/usr/local/adm/resman/tools/bin/diff' DIFF_FLAGS='-an'
DIFF_L='1' \
DIFF_SUCCESS='0' DIFF_FAILURE='1' DIFF_TROUBLE='2' \
ED='/bin/ed' \
LDFLAGS='' LDLIBS='' \
RCSPREFIX='/usr/local/bin/' \
SENDMAIL='"/bin/mail"' \
sh -x conf.sh >a.h 2>conf.error
Make: "CC='cc' CFLAGS=' -O ' \
COMPAT2='0' \
DIFF3='/usr/local/adm/resman/tools/bin/diff3' DIFF3_A='1' DIFF3_BIN='1' \
DIFF='/usr/local/adm/resman/tools/bin/diff' DIFF_FLAGS='-an' DIFF_L='1' \
DIFF_SUCCESS='0' DIFF_FAILURE='1' DIFF_TROUBLE='2' \
ED='/bin/ed' \
LDFLAGS='' LDLIBS='' \
RCSPREFIX='/usr/local/bin/' \
SENDMAIL='"/bin/mail"' \
sh -x conf.sh >a.h 2>conf.error": Error code 130
V=================Diff of changes to source follows==================V
diff Makefile.old /u1/uaf/mkienenb/rcs5.6.0.1/src/Makefile
58c58,59
< DIFFPREFIX = /usr/local/gnu/# GNU diff -- must be version 1.15 or later
---
> DIFFPREFIX = /usr/local/adm/resman/tools/bin/
> # GNU diff -- must be version 1.15 or later
107c108
< RCSDIR = /usr/local/bin
---
> RCSDIR = /usr/local/adm/resman/tools/bin
diff -r rcs5.6.0.1/src/co.c /u1/uaf/mkienenb/rcs5.6.0.1/src/co.c
155c155
< static char const *expandarg, *join, *suffixarg, *versionarg;
---
> static char const *expandarg, *join_flag, *suffixarg, *versionarg;
239,240c239,240
< if (join) redefined('j');
< join = a;
---
> if (join_flag) redefined('j');
> join_flag = a;
378c378
< if (join && !preparejoin()) continue;
---
> if (join_flag && !preparejoin()) continue;
394c394
< join&&tostdout ? (FILE*)0 : neworkptr,
---
> join_flag&&tostdout ? (FILE*)0 : neworkptr,
409c409
< if (join) {
---
> if (join_flag) {
422c422
< if (!join)
---
> if (!join_flag)
601c601
< j=join;
---
> j=join_flag;
diff -r rcs5.6.0.1/src/conf.sh /u1/uaf/mkienenb/rcs5.6.0.1/src/conf.sh
789c789
< if ./a.out 1 2 >&2
---
> if echo ./a.out 1 2 >&2
V=================Resulting conf.h file (after mods)==================V
/* RCS compile-time configuration */
/* $Id: conf.sh,v 5.14.0.1 1993/03/25 04:24:49 eggert Exp $ */
/*
* This file is generated automatically.
* If you edit it by hand your changes may be lost.
* Instead, please try to fix conf.sh,
* and send your fixes to rcs-bugs@cs.purdue.edu.
*/
#define exitmain(n) return n /* how to exit from main() */
/* #define _POSIX_SOURCE */ /* Define this if Posix + strict Standard C.
*/
#include <errno.h>
#include <stdio.h>
#include <time.h>
/* Comment out #include lines below that do not work. */
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>
#include <fcntl.h>
#include <limits.h>
#include <pwd.h>
#include <signal.h>
#include <stdlib.h>
#include <string.h>
/* #include <sys/mman.h> */
#include <sys/wait.h>
#include <unistd.h>
#include <utime.h>
/* #include <vfork.h> */
/* Define the following symbols to be 1 or 0. */
#define has_sys_dir_h 1 /* Does #include <sys/dir.h> work? */
#define has_sys_param_h 1 /* Does #include <sys/param.h> work? */
#define has_readlink 1 /* Does readlink() work? */
/* #undef NAME_MAX */ /* Uncomment this if NAME_MAX is broken. */
#if !defined(NAME_MAX) && !defined(_POSIX_NAME_MAX)
# if has_sys_dir_h
# include <sys/dir.h>
# endif
# ifndef NAME_MAX
# ifndef MAXNAMLEN
# define MAXNAMLEN 14
# endif
# define NAME_MAX MAXNAMLEN
# endif
#endif
#if !defined(PATH_MAX) && !defined(_POSIX_PATH_MAX)
# if has_sys_param_h
# include <sys/param.h>
# define included_sys_param_h 1
# endif
# ifndef PATH_MAX
# ifndef MAXPATHLEN
# define MAXPATHLEN 1024
# endif
# define PATH_MAX (MAXPATHLEN-1)
# endif
#endif
#if has_readlink && !defined(MAXSYMLINKS)
# if has_sys_param_h && !included_sys_param_h
# include <sys/param.h>
# endif
# ifndef MAXSYMLINKS
# define MAXSYMLINKS 20 /* BSD; not standard yet */
# endif
#endif
/* Comment out the keyword definitions below if the keywords work. */
/* #define const */
/* #define volatile */
/* Comment out the typedefs below if the types are already declared. */
/* Fix any uncommented typedefs that are wrong. */
/* typedef int mode_t; */
/* typedef int pid_t; */
/* typedef int sig_atomic_t; */
/* typedef unsigned size_t; */
/* typedef int ssize_t; */
/* typedef long time_t; */
/* typedef int uid_t; */
/* Define the following symbols to be 1 or 0. */
#define has_prototypes 1 /* Do function prototypes work? */
#define has_stdarg 1 /* Does <stdarg.h> work? */
#define has_varargs 0 /* Does <varargs.h> work? */
#define va_start_args 2 /* How many args does va_start() take? */
#if has_prototypes
# define P(params) params
#else
# define P(params) ()
#endif
#if has_stdarg
# include <stdarg.h>
#else
# if has_varargs
# include <varargs.h>
# else
typedef char *va_list;
# define va_dcl int va_alist;
# define va_start(ap) ((ap) = (va_list)&va_alist)
# define va_arg(ap,t) (((t*) ((ap)+=sizeof(t))) [-1])
# define va_end(ap)
# endif
#endif
#if va_start_args == 2
# define vararg_start va_start
#else
# define vararg_start(ap,p) va_start(ap)
#endif
#define text_equals_binary_stdio 1 /* Does stdio treat text like binary?
*/
#define text_work_stdio 0 /* Text i/o for working file, binary for RCS
file? */
#if text_equals_binary_stdio
/* Text and binary i/o behave the same, or binary i/o does not
work. */
# define FOPEN_R "r"
# define FOPEN_W "w"
# define FOPEN_WPLUS "w+"
#else
/* Text and binary i/o behave differently. */
/* This is incompatible with Posix and Unix. */
# define FOPEN_R "rb"
# define FOPEN_W "wb"
# define FOPEN_WPLUS "w+b"
#endif
#if text_work_stdio
# define FOPEN_R_WORK "r"
# define FOPEN_W_WORK "w"
# define FOPEN_WPLUS_WORK "w+"
#else
# define FOPEN_R_WORK FOPEN_R
# define FOPEN_W_WORK FOPEN_W
# define FOPEN_WPLUS_WORK FOPEN_WPLUS
#endif
/* Define or comment out the following symbols as needed. */
#define bad_fopen_wplus 0 /* Does fopen(f,FOPEN_WPLUS) fail to truncate f?
*/
#define getlogin_is_secure 0 /* Is getlogin() secure? Usually it's not.
*/
#define has_dirent 1 /* Do opendir(), readdir(), closedir() work? */
#define has_fchmod 1 /* Does fchmod() work? */
#define has_fputs 1 /* Does fputs() work? */
#define has_ftruncate 1 /* Does ftruncate() work? */
#define has_getuid 1 /* Does getuid() work? */
#define has_getpwuid 1 /* Does getpwuid() work? */
#define has_link 1 /* Does link() work? */
#define has_memcmp 1 /* Does memcmp() work? */
#define has_memcpy 1 /* Does memcpy() work? */
#define has_memmove 1 /* Does memmove() work? */
#define has_madvise 0 /* Does madvise() work? */
#define has_mmap 0 /* Does mmap() work on regular files? */
#define has_rename 1 /* Does rename() work? */
#define bad_a_rename 0 /* Does rename(A,B) fail if A is unwritable? */
#define bad_b_rename 0 /* Does rename(A,B) fail if B is unwritable? */
#define VOID (void) /* 'VOID e;' discards the value of an expression 'e'.
*/
#define has_seteuid 0 /* Does seteuid() work? See README. */
#define has_setuid 1 /* Does setuid() exist? */
#define has_signal 1 /* Does signal() work? */
#define signal_args P((int)) /* arguments of signal handlers */
#define signal_type void /* type returned by signal handlers */
#define sig_zaps_handler 0 /* Must a signal handler reinvoke signal()? */
#define has_sigaction 1 /* Does struct sigaction work? */
/* #define has_sigblock ? */ /* Does sigblock() work? */
/* #define sigmask(s) (1 << ((s)-1)) */ /* Yield mask for signal number.
*/
#define has_sys_siglist 1 /* Does sys_siglist[] work? */
typedef size_t fread_type; /* type returned by fread() and fwrite() */
typedef size_t freadarg_type; /* type of their size arguments */
typedef void *malloc_type; /* type returned by malloc() */
#define has_getcwd 1 /* Does getcwd() work? */
/* #define has_getwd ? */ /* Does getwd() work? */
#define has_mktemp 1 /* Does mktemp() work? */
#define has_NFS 1 /* Might NFS be used? */
/* #define strchr index */ /* Use old-fashioned name for strchr()? */
/* #define strrchr rindex */ /* Use old-fashioned name for strrchr()? */
#define bad_unlink 0 /* Does unlink() fail on unwritable files? */
#define has_vfork 1 /* Does vfork() work? */
#define has_fork 1 /* Does fork() work? */
#define has_spawn 0 /* Does spawn*() work? */
#define has_wait 1 /* Does wait() work? */
#define has_waitpid 1 /* Does waitpid() work? */
#define RCS_SHELL "/bin/sh" /* shell to run RCS subprograms */
#define has_vfprintf 1 /* Does vfprintf() work? */
/* #define has__doprintf ? */ /* Does _doprintf() work? */
/* #define has__doprnt ? */ /* Does _doprnt() work? */
/* #undef EXIT_FAILURE */ /* Uncomment this if EXIT_FAILURE is broken. */
#define large_memory 0 /* Can main memory hold entire RCS files? */
/* #undef ULONG_MAX */ /* Uncomment this if ULONG_MAX is broken (e.g. <
0). */
/* struct utimbuf { time_t actime, modtime; }; */ /* Uncomment this if
needed. */
#define CO "/usr/local/adm/resman/tools/bin/co" /* name of 'co' program */
#define COMPAT2 0 /* Are version 2 files supported? */
#define DATEFORM "%.2d.%.2d.%.2d.%.2d.%.2d.%.2d" /* e.g. 01.01.01.01.01.01
*/
#define DIFF "/usr/local/adm/resman/tools/bin/diff" /* name of 'diff'
program */
#define DIFF3 "/usr/local/adm/resman/tools/bin/diff3" /* name of 'diff3'
program */
#define DIFF3_A 1 /* Does diff3 have an -A option? */
#define DIFF3_BIN 1 /* Is diff3 user-visible (not the /usr/lib auxiliary)?
*/
#define DIFF_FLAGS , "-an" /* Make diff output suitable for RCS. */
#define DIFF_L 1 /* Does diff -L work? */
#define DIFF_SUCCESS 0 /* DIFF status if no differences are found */
#define DIFF_FAILURE 1 /* DIFF status if differences are found */
#define DIFF_TROUBLE 2 /* DIFF status if trouble */
#define ED "/bin/ed" /* name of 'ed' program (used only if !DIFF3_BIN) */
#define MERGE "/usr/local/adm/resman/tools/bin/merge" /* name of 'merge'
program */
#define TMPDIR "/tmp" /* default directory for temporary files */
#define SLASH '/' /* principal pathname separator */
#define SLASHes '/' /* `case SLASHes:' labels all pathname separators */
#define isSLASH(c) ((c) == SLASH) /* Is arg a pathname separator? */
#define ROOTPATH(p) isSLASH((p)[0]) /* Is p an absolute pathname? */
#define X_DEFAULT ",v/" /* default value for -x option */
#define DIFF_ABSOLUTE 1 /* Is ROOTPATH(DIFF) true? */
#define ALL_ABSOLUTE 1 /* Are all subprograms absolute pathnames? */
#define SENDMAIL "/bin/mail" /* how to send mail */
#define TZ_must_be_set 0 /* Must TZ be set for gmtime() to work? */
/* Adjust the following declarations as needed. */
#if __GNUC__ && !__STRICT_ANSI__
# define exiting volatile /* GCC extension: function cannot return
*/
#else
# define exiting
#endif
#if has_ftruncate
int ftruncate P((int,off_t));
#endif
/* <sys/mman.h> */
#if has_madvise
int madvise P((caddr_t,size_t,int));
#endif
#if has_mmap
caddr_t mmap P((caddr_t,size_t,int,int,int,off_t));
int munmap P((caddr_t,size_t));
#endif
/* Posix (ISO/IEC 9945-1: 1990 / IEEE Std 1003.1-1990) */
/* These definitions are for the benefit of non-Posix hosts, and */
/* Posix hosts that have Standard C compilers but traditional include
files. */
/* Unfortunately, mixed-up hosts are all too common. */
/* <fcntl.h> */
#ifdef F_DUPFD
int fcntl P((int,int,...));
#else
int dup2 P((int,int));
#endif
#ifndef O_BINARY /* some non-Posix hosts need O_BINARY */
# define O_BINARY 0 /* no effect on Posix */
#endif
#ifdef O_CREAT
# define open_can_creat 1
#else
# define open_can_creat 0
# define O_RDONLY 0
# define O_WRONLY 1
# define O_RDWR 2
# define O_CREAT 01000
# define O_TRUNC 02000
int creat P((char const*,mode_t));
#endif
#ifndef O_EXCL
# define O_EXCL 0
#endif
/* <pwd.h> */
#if has_getpwuid
struct passwd *getpwuid P((uid_t));
#endif
/* <signal.h> */
#if has_sigaction
int sigaction P((int,struct sigaction const*,struct sigaction*));
int sigaddset P((sigset_t*,int));
int sigemptyset P((sigset_t*));
#else
#if has_sigblock
/* BSD */
int sigblock P((int));
int sigmask P((int));
int sigsetmask P((int));
#endif
#endif
/* <stdio.h> */
FILE *fdopen P((int,char const*));
int fileno P((FILE*));
/* <sys/stat.h> */
int chmod P((char const*,mode_t));
int fstat P((int,struct stat*));
int stat P((char const*,struct stat*));
mode_t umask P((mode_t));
#if has_fchmod
int fchmod P((int,mode_t));
#endif
#ifndef S_IRUSR
# ifdef S_IREAD
# define S_IRUSR S_IREAD
# else
# define S_IRUSR 0400
# endif
# ifdef S_IWRITE
# define S_IWUSR S_IWRITE
# else
# define S_IWUSR (S_IRUSR/2)
# endif
#endif
#ifndef S_IRGRP
# if has_getuid
# define S_IRGRP (S_IRUSR / 0010)
# define S_IWGRP (S_IWUSR / 0010)
# define S_IROTH (S_IRUSR / 0100)
# define S_IWOTH (S_IWUSR / 0100)
# else
/* single user OS -- not Posix or Unix */
# define S_IRGRP 0
# define S_IWGRP 0
# define S_IROTH 0
# define S_IWOTH 0
# endif
#endif
#ifndef S_ISREG
# define S_ISREG(n) (((n) & S_IFMT) == S_IFREG)
#endif
/* <sys/wait.h> */
#if has_wait
pid_t wait P((int*));
#endif
#ifndef WEXITSTATUS
# define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8)
# undef WIFEXITED /* Avoid 4.3BSD incompatibility with Posix. */
#endif
#ifndef WIFEXITED
# define WIFEXITED(stat_val) (!((stat_val) & 255))
#endif
/* <unistd.h> */
char *getlogin P((void));
int close P((int));
int isatty P((int));
int link P((char const*,char const*));
int open P((char const*,int,...));
int unlink P((char const*));
int _filbuf P((FILE*)); /* keeps lint quiet in traditional C */
int _flsbuf P((int,FILE*)); /* keeps lint quiet in traditional C */
long pathconf P((char const*,int));
ssize_t write P((int,void const*,size_t));
#ifndef STDIN_FILENO
# define STDIN_FILENO 0
# define STDOUT_FILENO 1
# define STDERR_FILENO 2
#endif
#if has_fork
# if !has_vfork
# undef vfork
# define vfork fork
# endif
pid_t vfork P((void)); /* vfork is nonstandard but faster */
#endif
#if has_getcwd || !has_getwd
char *getcwd P((char*,size_t));
#else
char *getwd P((char*));
#endif
#if has_getuid
uid_t getuid P((void));
#endif
#if has_readlink
/* ssize_t readlink P((char const*,char*,size_t)); *//* BSD; not
standard yet */
#endif
#if has_setuid
# if !has_seteuid
# undef seteuid
# define seteuid setuid
# endif
int seteuid P((uid_t));
uid_t geteuid P((void));
#endif
#if has_spawn
int spawnv P((int,char const*,char*const*));
# if ALL_ABSOLUTE
# define spawn_RCS spawnv
# else
# define spawn_RCS spawnvp
int spawnvp P((int,char const*,char*const*));
# endif
#else
int execv P((char const*,char*const*));
# if ALL_ABSOLUTE
# define exec_RCS execv
# else
# define exec_RCS execvp
int execvp P((char const*,char*const*));
# endif
#endif
/* utime.h */
int utime P((char const*,struct utimbuf const*));
/* Standard C library */
/* These definitions are for the benefit of hosts that have */
/* traditional C include files, possibly with Standard C compilers. */
/* Unfortunately, mixed-up hosts are all too common. */
/* <errno.h> */
extern int errno;
/* <limits.h> */
#ifndef ULONG_MAX
/* This does not work in #ifs, but it's good enough for us. */
# define ULONG_MAX ((unsigned long)-1)
#endif
/* <signal.h> */
#if has_signal
signal_type (*signal
P((int,signal_type(*)signal_args)))signal_args;
#endif
/* <stdio.h> */
FILE *fopen P((char const*,char const*));
fread_type fread P((void*,freadarg_type,freadarg_type,FILE*));
fread_type fwrite P((void const*,freadarg_type,freadarg_type,FILE*));
int fclose P((FILE*));
int feof P((FILE*));
int ferror P((FILE*));
int fflush P((FILE*));
int fprintf P((FILE*,char const*,...));
int fputs P((char const*,FILE*));
int fseek P((FILE*,long,int));
int printf P((char const*,...));
int rename P((char const*,char const*));
int sprintf P((char*,char const*,...));
long ftell P((FILE*));
void clearerr P((FILE*));
void perror P((char const*));
#ifndef L_tmpnam
# define L_tmpnam 32 /* power of 2 >
sizeof("/usr/tmp/xxxxxxxxxxxxxxx") */
#endif
#ifndef SEEK_SET
# define SEEK_SET 0
#endif
#if has_mktemp
char *mktemp P((char*)); /* traditional */
#else
char *tmpnam P((char*));
#endif
#if has_vfprintf
int vfprintf P((FILE*,char const*,va_list));
#else
#if has__doprintf
void _doprintf P((FILE*,char const*,va_list)); /* Minix */
#else
void _doprnt P((char const*,va_list,FILE*)); /* BSD */
#endif
#endif
/* <stdlib.h> */
char *getenv P((char const*));
exiting void _exit P((int));
exiting void exit P((int));
malloc_type malloc P((size_t));
malloc_type realloc P((malloc_type,size_t));
void free P((malloc_type));
#ifndef EXIT_FAILURE
# define EXIT_FAILURE 1
#endif
#ifndef EXIT_SUCCESS
# define EXIT_SUCCESS 0
#endif
#if !has_fork && !has_spawn
int system P((char const*));
#endif
/* <string.h> */
char *strcpy P((char*,char const*));
char *strchr P((char const*,int));
char *strrchr P((char const*,int));
int memcmp P((void const*,void const*,size_t));
int strcmp P((char const*,char const*));
size_t strlen P((char const*));
void *memcpy P((void*,void const*,size_t));
#if has_memmove
void *memmove P((void*,void const*,size_t));
#endif
/* <time.h> */
time_t time P((time_t*));
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads