1 /* Copyright (C) 1989, 1992, 1993, 1994, 1998, 1999 Aladdin Enterprises. All rights reserved. 2 3 This software is provided AS-IS with no warranty, either express or 4 implied. 5 6 This software is distributed under license and may not be copied, 7 modified or distributed except as expressly authorized under the terms 8 of the license contained in the file LICENSE in this distribution. 9 10 For more information about licensing, please refer to 11 http://www.ghostscript.com/licensing/. For information on 12 commercial licensing, go to http://www.artifex.com/licensing/ or 13 contact Artifex Software, Inc., 101 Lucas Valley Road #110, 14 San Rafael, CA 94903, U.S.A., +1(415)492-9861. 15 */ 16 17 /* $Id: string_.h,v 1.4 2002/02/21 22:24:54 giles Exp $ */ 18 /* Generic substitute for Unix string.h */ 19 20 #ifndef string__INCLUDED 21 # define string__INCLUDED 22 23 /* We must include std.h before any file that includes sys/types.h. */ 24 #include "std.h" 25 26 #ifdef BSD4_2 27 # include <strings.h> 28 # define strchr index 29 #else 30 # ifdef MEMORY__NEED_MEMMOVE 31 # undef memmove /* This is disgusting, but so is GCC */ 32 # endif 33 # include <string.h> 34 # if defined(THINK_C) 35 /* Patch strlen to return a uint rather than a size_t. */ 36 # define strlen (uint)strlen 37 # endif 38 # ifdef MEMORY__NEED_MEMMOVE 39 # define memmove(dest,src,len) gs_memmove(dest,src,len) 40 # endif 41 #endif 42 43 #endif /* string__INCLUDED */ 44