*** ORIG/lib/getopt.c Thu Jan 02 14:07:41 1997 --- lib/getopt.c Thu Dec 14 14:26:42 2000 *************** *** 66,71 **** --- 66,75 ---- #include #endif /* GNU C library. */ + #ifdef AMIGA + #include + #endif /* AMIGA */ + /* This version of `getopt' appears to the caller like standard Unix `getopt' but it behaves differently for the user, since it allows the user to intersperse the options with the other arguments. *** ORIG/lib/regex.c Mon Jun 19 11:45:24 2000 --- lib/regex.c Thu Dec 14 18:12:59 2000 *************** *** 145,151 **** static char re_syntax_table[CHAR_SET_SIZE]; static void ! init_syntax_once () { register int c; static int done = 0; --- 145,151 ---- static char re_syntax_table[CHAR_SET_SIZE]; static void ! init_syntax_once (void) { register int c; static int done = 0; *************** *** 358,364 **** #define false 0 #define true 1 ! static int re_match_2_internal (); /* These are the command codes that appear in compiled regular expressions. Some opcodes are followed by argument bytes. A --- 358,366 ---- #define false 0 #define true 1 ! static int re_match_2_internal(struct re_pattern_buffer *bufp, const char *string1, ! int size1, const char *string2, int size2, int pos, ! struct re_registers *regs, int stop); /* olsen */ /* These are the command codes that appear in compiled regular expressions. Some opcodes are followed by argument bytes. A *************** *** 540,548 **** #ifdef DEBUG static void ! extract_number (dest, source) ! int *dest; ! unsigned char *source; { int temp = SIGN_EXTEND_CHAR (*(source + 1)); *dest = *source & 0377; --- 542,548 ---- #ifdef DEBUG static void ! extract_number (int *dest, unsigned char *source) /* olsen */ { int temp = SIGN_EXTEND_CHAR (*(source + 1)); *dest = *source & 0377; *************** *** 567,575 **** #ifdef DEBUG static void ! extract_number_and_incr (destination, source) ! int *destination; ! unsigned char **source; { extract_number (destination, *source); *source += 2; --- 567,573 ---- #ifdef DEBUG static void ! extract_number_and_incr (int *destination, unsigned char **source) { extract_number (destination, *source); *source += 2; *************** *** 1530,1540 **** /* Subroutine declarations and macros for regex_compile. */ ! static void store_op1 (), store_op2 (); ! static void insert_op1 (), insert_op2 (); ! static boolean at_begline_loc_p (), at_endline_loc_p (); ! static boolean group_in_compile_stack (); ! static reg_errcode_t compile_range (); /* Fetch the next character in the uncompiled pattern---translating it if necessary. Also cast from a signed character in the constant --- 1528,1541 ---- /* Subroutine declarations and macros for regex_compile. */ ! /* olsen */ ! static void store_op1(re_opcode_t op, unsigned char *loc, int arg); ! static void store_op2(re_opcode_t op, unsigned char *loc, int arg1, int arg2); ! static void insert_op1(re_opcode_t op, unsigned char *loc, int arg, unsigned char *end); ! static void insert_op2(re_opcode_t op, unsigned char *loc, int arg1, int arg2, unsigned char *end); ! static boolean at_begline_loc_p(const char *pattern, const char *p, reg_syntax_t syntax); ! static boolean at_endline_loc_p(const char *p, const char *pend, int syntax); ! static boolean group_in_compile_stack(struct compile_stack_type compile_stack, unsigned regnum); /* Fetch the next character in the uncompiled pattern---translating it if necessary. Also cast from a signed character in the constant *************** *** 1687,1693 **** } compile_stack_elt_t; ! typedef struct { compile_stack_elt_t *stack; unsigned size; --- 1688,1694 ---- } compile_stack_elt_t; ! typedef struct compile_stack_type { compile_stack_elt_t *stack; unsigned size; *************** *** 1809,1816 **** but don't make them smaller. */ static ! regex_grow_registers (num_regs) ! int num_regs; { if (num_regs > regs_allocated_size) { --- 1810,1816 ---- but don't make them smaller. */ static ! regex_grow_registers (int num_regs) /* olsen */ { if (num_regs > regs_allocated_size) { *************** *** 1857,1867 **** } while (0) static reg_errcode_t ! regex_compile (pattern, size, syntax, bufp) ! const char *pattern; ! int size; ! reg_syntax_t syntax; ! struct re_pattern_buffer *bufp; { /* We fetch characters from PATTERN here. Even though PATTERN is `char *' (i.e., signed), we declare these variables as unsigned, so --- 1857,1865 ---- } while (0) static reg_errcode_t ! regex_compile (const char *pattern, int size, ! reg_syntax_t syntax, ! struct re_pattern_buffer *bufp) /* olsen */ { /* We fetch characters from PATTERN here. Even though PATTERN is `char *' (i.e., signed), we declare these variables as unsigned, so *************** *** 3107,3117 **** const char *prev = p - 2; boolean prev_prev_backslash = prev > pattern && prev[-1] == '\\'; ! return /* After a subexpression? */ (*prev == '(' && (syntax & RE_NO_BK_PARENS || prev_prev_backslash)) /* After an alternative? */ ! || (*prev == '|' && (syntax & RE_NO_BK_VBAR || prev_prev_backslash)); } --- 3105,3115 ---- const char *prev = p - 2; boolean prev_prev_backslash = prev > pattern && prev[-1] == '\\'; ! return (boolean)( /* olsen */ /* After a subexpression? */ (*prev == '(' && (syntax & RE_NO_BK_PARENS || prev_prev_backslash)) /* After an alternative? */ ! || (*prev == '|' && (syntax & RE_NO_BK_VBAR || prev_prev_backslash))); } *************** *** 3127,3139 **** boolean next_backslash = *next == '\\'; const char *next_next = p + 1 < pend ? p + 1 : 0; ! return /* Before a subexpression? */ (syntax & RE_NO_BK_PARENS ? *next == ')' : next_backslash && next_next && *next_next == ')') /* Before an alternative? */ || (syntax & RE_NO_BK_VBAR ? *next == '|' ! : next_backslash && next_next && *next_next == '|'); } --- 3125,3137 ---- boolean next_backslash = *next == '\\'; const char *next_next = p + 1 < pend ? p + 1 : 0; ! return (boolean)( /* olsen */ /* Before a subexpression? */ (syntax & RE_NO_BK_PARENS ? *next == ')' : next_backslash && next_next && *next_next == ')') /* Before an alternative? */ || (syntax & RE_NO_BK_VBAR ? *next == '|' ! : next_backslash && next_next && *next_next == '|')); } *************** *** 3937,3946 **** /* Declarations and macros for re_match_2. */ ! static int bcmp_translate (); ! static boolean alt_match_null_string_p (), ! common_op_match_null_string_p (), ! group_match_null_string_p (); /* This converts PTR, a pointer into one of the search strings `string1' and `string2' into an offset from the beginning of that string. */ --- 3935,3944 ---- /* Declarations and macros for re_match_2. */ ! static int bcmp_translate(unsigned char *s1, unsigned char *s2, int len, RE_TRANSLATE_TYPE translate); /* olsen */ ! static boolean alt_match_null_string_p(unsigned char *p, unsigned char *end, register_info_type *reg_info); ! static boolean common_op_match_null_string_p(unsigned char **p, unsigned char *end, register_info_type *reg_info); ! static boolean group_match_null_string_p(unsigned char **p, unsigned char *end, register_info_type *reg_info); /* This converts PTR, a pointer into one of the search strings `string1' and `string2' into an offset from the beginning of that string. */ *** ORIG/lib/sighandle.c Wed Feb 23 05:11:25 2000 --- lib/sighandle.c Thu Dec 14 14:25:52 2000 *************** *** 65,71 **** /* Define linked list of signal handlers structure */ struct SIG_hlist { ! RETSIGTYPE (*handler)(); struct SIG_hlist *next; }; --- 65,71 ---- /* Define linked list of signal handlers structure */ struct SIG_hlist { ! RETSIGTYPE (*handler)(int sig); /* olsen */ struct SIG_hlist *next; }; *** ORIG/lib/xgetwd.c Sat Nov 29 17:52:35 1997 --- lib/xgetwd.c Thu Dec 14 14:29:14 2000 *************** *** 29,36 **** /* Amount by which to increase buffer size when allocating more space. */ #define PATH_INCR 32 ! char *xmalloc (); ! char *xrealloc (); /* Return the current directory, newly allocated, arbitrarily long. Return NULL and set errno on error. */ --- 29,36 ---- /* Amount by which to increase buffer size when allocating more space. */ #define PATH_INCR 32 ! char *xmalloc (size_t); /* olsen */ ! char *xrealloc (void *ptr,size_t bytes); /* olsen */ /* Return the current directory, newly allocated, arbitrarily long. Return NULL and set errno on error. */ *** ORIG/lib/getopt.h Fri Mar 26 10:47:21 1999 --- lib/getopt.h Thu Dec 14 14:01:49 2000 *************** *** 97,103 **** --- 97,107 ---- exactly why), and there is no particular need to prototype it. We really shouldn't be trampling on the system's namespace at all by declaring getopt() but that is a bigger issue. */ + #ifdef AMIGA + extern int getopt (int argc, char * const * argv, const char * optstring); + #else extern int getopt (); + #endif /* AMIGA */ extern int getopt_long (int argc, char *const *argv, const char *shortopts, const struct option *longopts, int *longind); *** ORIG/lib/regex.h Mon Jun 19 11:45:24 2000 --- lib/regex.h Thu Dec 14 14:14:42 2000 *************** *** 485,493 **** #ifdef _REGEX_RE_COMP /* 4.2 bsd compatibility. */ /* CVS: don't use prototypes: they may conflict with system headers. */ extern char *re_comp _RE_ARGS (()); extern int re_exec _RE_ARGS (()); ! #endif /* POSIX compatibility. */ extern int regcomp _RE_ARGS ((regex_t *preg, const char *pattern, int cflags)); --- 485,497 ---- #ifdef _REGEX_RE_COMP /* 4.2 bsd compatibility. */ /* CVS: don't use prototypes: they may conflict with system headers. */ + #ifdef AMIGA + extern char *re_comp _RE_ARGS ((const char * s)); + extern int re_exec _RE_ARGS ((const char * s)); + #else extern char *re_comp _RE_ARGS (()); extern int re_exec _RE_ARGS (()); ! #endif /* AMIGA */ /* POSIX compatibility. */ extern int regcomp _RE_ARGS ((regex_t *preg, const char *pattern, int cflags)); *** ORIG/lib/system.h Mon Feb 16 13:55:18 1998 --- lib/system.h Thu Dec 14 17:14:26 2000 *************** *** 494,499 **** --- 494,509 ---- #endif /* defined (__CYGWIN32__) || defined (WIN32) */ + + #ifdef AMIGA + #include "amiga.h" + + #define FOLD_FN_CHAR(c) amiga_fold_fn_char(c) + #define FILENAMES_CASE_INSENSITIVE 1 + #define ISDIRSEP(c) ((c) == ':' || (c) == '/') + #endif /* AMIGA */ + + /* Some file systems are case-insensitive. If FOLD_FN_CHAR is #defined, it maps the character C onto its "canonical" form. In a case-insensitive system, it would map all alphanumeric characters *** ORIG/zlib/deflate.c Fri Sep 06 15:59:08 1996 --- zlib/deflate.c Thu Dec 14 14:30:48 2000 *************** *** 792,798 **** } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length != 0); ! if ((uInt)best_len <= s->lookahead) return best_len; return s->lookahead; } #endif /* ASMV */ --- 792,798 ---- } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length != 0); ! if ((uInt)best_len <= s->lookahead) return (uInt)best_len; /* olsen */ return s->lookahead; } #endif /* ASMV */ *** ORIG/zlib/zconf.h Fri Jul 12 18:06:34 1996 --- zlib/zconf.h Thu Dec 14 13:52:50 2000 *************** *** 181,184 **** --- 181,188 ---- # define EXPORT #endif + #ifdef AMIGA + #include "amiga.h" + #endif /* AMIGA */ + #endif /* _ZCONF_H */ *** ORIG/diff/diff3.c Thu Aug 03 14:47:23 2000 --- diff/diff3.c Thu Dec 14 19:03:12 2000 *************** *** 1304,1310 **** if (wstatus == 2) diff3_fatal ("subsidiary diff failed"); ! if (-1 == (fd = open (diffout, O_RDONLY))) diff3_fatal ("could not open temporary diff file"); current_chunk_size = 8 * 1024; --- 1304,1310 ---- if (wstatus == 2) diff3_fatal ("subsidiary diff failed"); ! if (-1 == (fd = open (diffout, O_RDONLY, 0))) /* olsen */ diff3_fatal ("could not open temporary diff file"); current_chunk_size = 8 * 1024; *** ORIG/diff/system.h Wed Feb 17 11:52:10 1999 --- diff/system.h Thu Dec 14 13:48:59 2000 *************** *** 269,271 **** --- 269,275 ---- *(q)++ = '\''; \ } #endif + + #ifdef AMIGA + #include "amiga.h" + #endif /* AMIGA */ *** ORIG/src/cvs.h Sat Jul 08 14:57:21 2000 --- src/cvs.h Mon Dec 18 20:56:07 2000 *************** *** 58,63 **** --- 58,67 ---- #include #endif + #ifdef AMIGA + #include "amiga.h" + #endif /* AMIGA */ + #ifdef SERVER_SUPPORT /* If the system doesn't provide strerror, it won't be declared in string.h. */ *** ORIG/src/hash.h Fri Jun 09 15:54:01 2000 --- src/hash.h Thu Dec 14 14:19:33 2000 *************** *** 11,16 **** --- 11,20 ---- */ #define HASHSIZE 151 + #ifdef AMIGA + #undef NT_UNKNOWN + #endif /* AMIGA */ + /* * Types of nodes */ *************** *** 31,37 **** struct node *hashprev; char *key; char *data; ! void (*delproc) (); }; typedef struct node Node; --- 35,41 ---- struct node *hashprev; char *key; char *data; ! void (*delproc) (void *); /* olsen */ }; typedef struct node Node; *** ORIG/src/client.c Thu Jul 06 11:20:41 2000 --- src/client.c Thu Dec 14 18:49:36 2000 *************** *** 3415,3421 **** memcpy (buf, data, nread); ! return nread; } /* --- 3415,3421 ---- memcpy (buf, data, nread); ! return (size_t)nread; /* olsen */ } /* *************** *** 3731,3737 **** if (resultp == NULL) free (result); ! return input_index; } /* Connect to a forked server process. */ --- 3731,3737 ---- if (resultp == NULL) free (result); ! return (int)input_index; /* olsen */ } /* Connect to a forked server process. */ *************** *** 4921,4927 **** else fd = CVS_OPEN (file, O_RDONLY | OPEN_BINARY); #else ! fd = CVS_OPEN (file, O_RDONLY | (bin ? OPEN_BINARY : 0)); #endif if (fd < 0) --- 4921,4927 ---- else fd = CVS_OPEN (file, O_RDONLY | OPEN_BINARY); #else ! fd = CVS_OPEN (file, O_RDONLY | (bin ? OPEN_BINARY : 0), 0); /* olsen */ #endif if (fd < 0) *** ORIG/src/hash.c Fri Jun 09 15:54:01 2000 --- src/hash.c Thu Dec 14 14:19:49 2000 *************** *** 21,28 **** /* hash function */ static int ! hashp (key) ! const char *key; { unsigned int h = 0; unsigned int g; --- 21,27 ---- /* hash function */ static int ! hashp (const char *key) /* olsen */ { unsigned int h = 0; unsigned int g; *************** *** 38,44 **** h = (h ^ (g >> 24)) ^ g; } ! return (h % HASHSIZE); } /* --- 37,43 ---- h = (h ^ (g >> 24)) ^ g; } ! return (int)(h % HASHSIZE); /* olsen */ } /* *************** *** 184,190 **** freenode_mem (p) Node *p; { ! if (p->delproc != (void (*) ()) NULL) p->delproc (p); /* call the specified delproc */ else { --- 183,189 ---- freenode_mem (p) Node *p; { ! if (p->delproc != (void (*) (void *)) NULL) /* olsen */ p->delproc (p); /* call the specified delproc */ else { *************** *** 196,202 **** /* to be safe, re-initialize these */ p->key = p->data = (char *) NULL; ! p->delproc = (void (*) ()) NULL; } /* --- 195,201 ---- /* to be safe, re-initialize these */ p->key = p->data = (char *) NULL; ! p->delproc = (void (*) (void *)) NULL; /* olsen */ } /* *** ORIG/src/history.c Tue May 02 17:13:25 2000 --- src/history.c Thu Dec 14 18:50:48 2000 *************** *** 1061,1067 **** int fd; struct stat st_buf; ! if ((fd = CVS_OPEN (fname, O_RDONLY | OPEN_BINARY)) < 0) error (1, errno, "cannot open history file: %s", fname); if (fstat (fd, &st_buf) < 0) --- 1061,1067 ---- int fd; struct stat st_buf; ! if ((fd = CVS_OPEN (fname, O_RDONLY | OPEN_BINARY, 0)) < 0) /* olsen */ error (1, errno, "cannot open history file: %s", fname); if (fstat (fd, &st_buf) < 0) *** ORIG/src/main.c Wed Sep 06 18:35:04 2000 --- src/main.c Thu Feb 01 17:43:37 2001 *************** *** 18,24 **** --- 18,26 ---- #ifdef HAVE_WINSOCK_H #include #else + #ifndef AMIGA extern int gethostname (); + #endif /* AMIGA */ #endif char *program_name; *************** *** 95,101 **** char *nick1; char *nick2; ! int (*func) (); /* Function takes (argc, argv) arguments. */ } cmds[] = { --- 97,103 ---- char *nick1; char *nick2; ! int (*func) (int argc,char ** argv); /* Function takes (argc, argv) arguments. */ /* olsen */ } cmds[] = { *** ORIG/src/subr.c Tue Aug 01 11:20:26 2000 --- src/subr.c Thu Dec 14 14:12:11 2000 *************** *** 722,727 **** --- 722,728 ---- newname = xreadlink (*filename); #else error (1, 0, "internal error: islink doesn't like readlink"); + newname = ""; /* olsen */ #endif if (isabsolute (newname))