1 | #serial 10 -*- autoconf -*-
|
---|
2 |
|
---|
3 | # Define some macros required for proper operation of code in lib/*.c
|
---|
4 | # on MSDOS/Windows systems.
|
---|
5 |
|
---|
6 | # Copyright (C) 2000, 2001, 2004, 2005, 2006 Free Software Foundation, Inc.
|
---|
7 | # This file is free software; the Free Software Foundation
|
---|
8 | # gives unlimited permission to copy and/or distribute it,
|
---|
9 | # with or without modifications, as long as this notice is preserved.
|
---|
10 |
|
---|
11 | # From Jim Meyering.
|
---|
12 |
|
---|
13 | AC_DEFUN([gl_AC_DOS],
|
---|
14 | [
|
---|
15 | AC_CACHE_CHECK([whether system is Windows or MSDOS], [ac_cv_win_or_dos],
|
---|
16 | [
|
---|
17 | AC_TRY_COMPILE([],
|
---|
18 | [#if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ && !defined __CYGWIN__
|
---|
19 | neither MSDOS nor Windows
|
---|
20 | #endif],
|
---|
21 | [ac_cv_win_or_dos=yes],
|
---|
22 | [ac_cv_win_or_dos=no])
|
---|
23 | ])
|
---|
24 |
|
---|
25 | if test x"$ac_cv_win_or_dos" = xyes; then
|
---|
26 | ac_fs_accepts_drive_letter_prefix=1
|
---|
27 | ac_fs_backslash_is_file_name_separator=1
|
---|
28 | AC_CACHE_CHECK([whether drive letter can start relative path],
|
---|
29 | [ac_cv_drive_letter_can_be_relative],
|
---|
30 | [
|
---|
31 | AC_TRY_COMPILE([],
|
---|
32 | [#if defined __CYGWIN__
|
---|
33 | drive letters are always absolute
|
---|
34 | #endif],
|
---|
35 | [ac_cv_drive_letter_can_be_relative=yes],
|
---|
36 | [ac_cv_drive_letter_can_be_relative=no])
|
---|
37 | ])
|
---|
38 | if test x"$ac_cv_drive_letter_can_be_relative" = xyes; then
|
---|
39 | ac_fs_drive_letter_can_be_relative=1
|
---|
40 | else
|
---|
41 | ac_fs_drive_letter_can_be_relative=0
|
---|
42 | fi
|
---|
43 | else
|
---|
44 | ac_fs_accepts_drive_letter_prefix=0
|
---|
45 | ac_fs_backslash_is_file_name_separator=0
|
---|
46 | ac_fs_drive_letter_can_be_relative=0
|
---|
47 | fi
|
---|
48 |
|
---|
49 | AC_DEFINE_UNQUOTED([FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX],
|
---|
50 | $ac_fs_accepts_drive_letter_prefix,
|
---|
51 | [Define on systems for which file names may have a so-called
|
---|
52 | `drive letter' prefix, define this to compute the length of that
|
---|
53 | prefix, including the colon.])
|
---|
54 |
|
---|
55 | AH_VERBATIM(ISSLASH,
|
---|
56 | [#if FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR
|
---|
57 | # define ISSLASH(C) ((C) == '/' || (C) == '\\')
|
---|
58 | #else
|
---|
59 | # define ISSLASH(C) ((C) == '/')
|
---|
60 | #endif])
|
---|
61 |
|
---|
62 | AC_DEFINE_UNQUOTED([FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR],
|
---|
63 | $ac_fs_backslash_is_file_name_separator,
|
---|
64 | [Define if the backslash character may also serve as a file name
|
---|
65 | component separator.])
|
---|
66 |
|
---|
67 | AC_DEFINE_UNQUOTED([FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE],
|
---|
68 | $ac_fs_drive_letter_can_be_relative,
|
---|
69 | [Define if a drive letter prefix denotes a relative path if it is
|
---|
70 | not followed by a file name component separator.])
|
---|
71 | ])
|
---|