Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)
dosish.h
Go to the documentation of this file.
1#ifndef RBIMPL_DOSISH_H /*-*-C++-*-vi:se ft=cpp:*/
2#define RBIMPL_DOSISH_H
23#ifdef __CYGWIN__
24#undef _WIN32
25#endif
26
27#if defined(_WIN32)
28/*
29 DOSISH mean MS-Windows style filesystem.
30 But you should use more precise macros like DOSISH_DRIVE_LETTER, PATH_SEP,
31 ENV_IGNORECASE or CASEFOLD_FILESYSTEM.
32 */
33#define DOSISH 1
34# define DOSISH_DRIVE_LETTER
35#endif
36
37#ifdef _WIN32
38#include "ruby/win32.h"
39#endif
40
41#if defined(DOSISH)
42#define PATH_SEP ";"
43#else
44#define PATH_SEP ":"
45#endif
46
47#define PATH_SEP_CHAR PATH_SEP[0]
48
49#define PATH_ENV "PATH"
50
51#if defined(DOSISH)
52#define ENV_IGNORECASE
53#endif
54
55#ifndef CASEFOLD_FILESYSTEM
56# if defined DOSISH
57# define CASEFOLD_FILESYSTEM 1
58# else
59# define CASEFOLD_FILESYSTEM 0
60# endif
61#endif
62
63#endif /* RBIMPL_DOSISH_H */