Commit | Line | Data |
---|---|---|
920dae64 AT |
1 | /* util.h |
2 | * | |
3 | * Copyright (C) 1991, 1992, 1993, 1999, 2001, 2002, | |
4 | * by Larry Wall and others | |
5 | * | |
6 | * You may distribute under the terms of either the GNU General Public | |
7 | * License or the Artistic License, as specified in the README file. | |
8 | * | |
9 | */ | |
10 | ||
11 | #ifdef VMS | |
12 | # define PERL_FILE_IS_ABSOLUTE(f) \ | |
13 | (*(f) == '/' \ | |
14 | || (strchr(f,':') \ | |
15 | || ((*(f) == '[' || *(f) == '<') \ | |
16 | && (isALNUM((f)[1]) || strchr("$-_]>",(f)[1]))))) | |
17 | ||
18 | #else /* !VMS */ | |
19 | # if defined(WIN32) || defined(__CYGWIN__) | |
20 | # define PERL_FILE_IS_ABSOLUTE(f) \ | |
21 | (*(f) == '/' || *(f) == '\\' /* UNC/rooted path */ \ | |
22 | || ((f)[0] && (f)[1] == ':')) /* drive name */ | |
23 | # else /* !WIN32 */ | |
24 | # ifdef NETWARE | |
25 | # define PERL_FILE_IS_ABSOLUTE(f) \ | |
26 | (((f)[0] && (f)[1] == ':') /* drive name */ \ | |
27 | || ((f)[0] == '\\' && (f)[1] == '\\') /* UNC path */ \ | |
28 | || ((f)[3] == ':')) /* volume name, currently only sys */ | |
29 | # else /* !NETWARE */ | |
30 | # if defined( DOSISH) || defined(EPOC) | |
31 | # define PERL_FILE_IS_ABSOLUTE(f) \ | |
32 | (*(f) == '/' \ | |
33 | || ((f)[0] && (f)[1] == ':')) /* drive name */ | |
34 | # else /* NEITHER DOSISH NOR EPOCISH */ | |
35 | # ifdef MACOS_TRADITIONAL | |
36 | # define PERL_FILE_IS_ABSOLUTE(f) (strchr(f, ':') && *(f) != ':') | |
37 | # else /* !MACOS_TRADITIONAL */ | |
38 | # define PERL_FILE_IS_ABSOLUTE(f) (*(f) == '/') | |
39 | # endif /* MACOS_TRADITIONAL */ | |
40 | # endif /* DOSISH */ | |
41 | # endif /* NETWARE */ | |
42 | # endif /* WIN32 */ | |
43 | #endif /* VMS */ |