home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / octa21fs.zip / octave / kpathsea / c-pathch.h < prev    next >
C/C++ Source or Header  |  2000-01-15  |  3KB  |  101 lines

  1. /* c-pathch.h: define the characters which separate components of
  2.    filenames and environment variable paths.
  3.  
  4. Copyright (C) 1992, 93, 95, 97 Free Software Foundation, Inc.
  5.  
  6. This library is free software; you can redistribute it and/or
  7. modify it under the terms of the GNU Library General Public
  8. License as published by the Free Software Foundation; either
  9. version 2 of the License, or (at your option) any later version.
  10.  
  11. This library is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  14. Library General Public License for more details.
  15.  
  16. You should have received a copy of the GNU Library General Public
  17. License along with this library; if not, write to the Free Software
  18. Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
  19.  
  20. #ifndef C_PATHCH_H
  21. #define C_PATHCH_H
  22.  
  23. #include <kpathsea/c-ctype.h>
  24.  
  25. /* What separates filename components?  */
  26. #ifndef DIR_SEP
  27. #ifdef VMS
  28. #define DIR_SEP ':'
  29. #define DIR_SEP_STRING ":"
  30. #else
  31. #ifdef DOSISH
  32. /* Either \'s or 's work.  Wayne Sullivan's web2pc prefers /, so we'll
  33.    go with that.  */
  34. #define DIR_SEP '/'
  35. #define DIR_SEP_STRING "/"
  36. #define IS_DEVICE_SEP(ch) ((ch) == ':')
  37. #define NAME_BEGINS_WITH_DEVICE(name) (*(name) && IS_DEVICE_SEP((name)[1]))
  38. /* On DOS, it's good to allow both \ and / between directories.  */
  39. #define IS_DIR_SEP(ch) ((ch) == '/' || (ch) == '\\')
  40. #else
  41. #ifdef AMIGA
  42. #define DIR_SEP '/'
  43. #define DIR_SEP_STRING "/"
  44. #define IS_DIR_SEP(ch) ((ch) == '/' || (ch) == ':')
  45. #define IS_DEVICE_SEP(ch) ((ch) == ':')
  46. #else
  47. #ifdef VMCMS
  48. #define DIR_SEP ' '
  49. #define DIR_SEP_STRING " "
  50. #else
  51. #define DIR_SEP '/'
  52. #define DIR_SEP_STRING "/"
  53. #endif /* not VM/CMS */
  54. #endif /* not AMIGA */
  55. #endif /* not DOSISH */
  56. #endif /* not VMS */
  57. #endif /* not DIR_SEP */
  58.  
  59. #ifndef IS_DIR_SEP
  60. #define IS_DIR_SEP(ch) ((ch) == DIR_SEP)
  61. #endif
  62. #ifndef IS_DEVICE_SEP /* No `devices' on, e.g., Unix.  */
  63. #define IS_DEVICE_SEP(ch) 0 
  64. #endif
  65. #ifndef NAME_BEGINS_WITH_DEVICE
  66. #define NAME_BEGINS_WITH_DEVICE(name) 0 
  67. #endif
  68.  
  69.  
  70. /* What separates elements in environment variable path lists?  */
  71. #ifndef ENV_SEP
  72. #ifdef VMS
  73. #define ENV_SEP ','
  74. #define ENV_SEP_STRING ","
  75. #else
  76. #ifdef DOSISH
  77. #define ENV_SEP ';'
  78. #define ENV_SEP_STRING ";"
  79. #else
  80. #ifdef AMIGA
  81. #define ENV_SEP ';'
  82. #define ENV_SEP_STRING ";"
  83. #else
  84. #ifdef VMCMS
  85. #define ENV_SEP ' '
  86. #define ENV_SEP_STRING " "
  87. #else
  88. #define ENV_SEP ':'
  89. #define ENV_SEP_STRING ":"
  90. #endif /* not VM/CMS */
  91. #endif /* not AMIGA */
  92. #endif /* not DOS */
  93. #endif /* not VMS */
  94. #endif /* not ENV_SEP */
  95.  
  96. #ifndef IS_ENV_SEP
  97. #define IS_ENV_SEP(ch) ((ch) == ENV_SEP)
  98. #endif
  99.  
  100. #endif /* not C_PATHCH_H */
  101.