X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/9607fc9c489d4095e3baa795d7ead7acba96137d..5383bea48295157ec239aaa7b40cfb64d93bf734:/util.h diff --git a/util.h b/util.h index 7dcf9ce..2319d15 100644 --- a/util.h +++ b/util.h @@ -1,8 +1,43 @@ /* util.h * - * Copyright (c) 1991-1997, Larry Wall + * Copyright (C) 1991, 1992, 1993, 1999, 2001, 2002, + * by Larry Wall and others * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. * */ + +#ifdef VMS +# define PERL_FILE_IS_ABSOLUTE(f) \ + (*(f) == '/' \ + || (strchr(f,':') \ + || ((*(f) == '[' || *(f) == '<') \ + && (isALNUM((f)[1]) || strchr("$-_]>",(f)[1]))))) + +#else /* !VMS */ +# ifdef WIN32 +# define PERL_FILE_IS_ABSOLUTE(f) \ + (*(f) == '/' || *(f) == '\\' /* UNC/rooted path */ \ + || ((f)[0] && (f)[1] == ':')) /* drive name */ +# else /* !WIN32 */ +# ifdef NETWARE +# define PERL_FILE_IS_ABSOLUTE(f) \ + (((f)[0] && (f)[1] == ':') /* drive name */ \ + || ((f)[0] == '\\' && (f)[1] == '\\') /* UNC path */ \ + || ((f)[3] == ':')) /* volume name, currently only sys */ +# else /* !NETWARE */ +# if defined( DOSISH) || defined(EPOC) +# define PERL_FILE_IS_ABSOLUTE(f) \ + (*(f) == '/' \ + || ((f)[0] && (f)[1] == ':')) /* drive name */ +# else /* NEITHER DOSISH NOR EPOCISH */ +# ifdef MACOS_TRADITIONAL +# define PERL_FILE_IS_ABSOLUTE(f) (strchr(f, ':') && *(f) != ':') +# else /* !MACOS_TRADITIONAL */ +# define PERL_FILE_IS_ABSOLUTE(f) (*(f) == '/') +# endif /* MACOS_TRADITIONAL */ +# endif /* DOSISH */ +# endif /* NETWARE */ +# endif /* WIN32 */ +#endif /* VMS */