[bcl] Enable tests for the monodroid profile.
[mono.git] / mono / utils / mono-io-portability.h
1 #ifndef __MONO_IO_PORTABILITY_H
2 #define __MONO_IO_PORTABILITY_H
3
4 #include <glib.h>
5 #include <mono/utils/mono-compiler.h>
6 #include "config.h"
7
8 enum {
9         PORTABILITY_NONE        = 0x00,
10         PORTABILITY_UNKNOWN     = 0x01,
11         PORTABILITY_DRIVE       = 0x02,
12         PORTABILITY_CASE        = 0x04
13 };
14
15 #ifdef DISABLE_PORTABILITY
16
17 #define mono_portability_helpers_init()
18 #define mono_portability_find_file(pathname,last_exists) NULL
19
20 #define IS_PORTABILITY_NONE FALSE
21 #define IS_PORTABILITY_UNKNOWN FALSE
22 #define IS_PORTABILITY_DRIVE FALSE
23 #define IS_PORTABILITY_CASE FALSE
24 #define IS_PORTABILITY_SET FALSE
25
26 #else
27
28 void mono_portability_helpers_init (void);
29 gchar *mono_portability_find_file (const gchar *pathname, gboolean last_exists);
30
31 extern int mono_io_portability_helpers;
32
33 #define IS_PORTABILITY_NONE (mono_io_portability_helpers & PORTABILITY_NONE)
34 #define IS_PORTABILITY_UNKNOWN (mono_io_portability_helpers & PORTABILITY_UNKNOWN)
35 #define IS_PORTABILITY_DRIVE (mono_io_portability_helpers & PORTABILITY_DRIVE)
36 #define IS_PORTABILITY_CASE (mono_io_portability_helpers & PORTABILITY_CASE)
37 #define IS_PORTABILITY_SET (mono_io_portability_helpers > 0)
38
39 #endif
40
41 #endif