Merge pull request #3707 from lateralusX/jlorenss/win-api-family-support-libmonoutils
[mono.git] / mono / utils / mono-io-portability.h
index 3b532adcd929c0287cab640a7e21a2f825bb1350..4451aa2e30cb79c9afee0eca055ff1508d76b4ed 100644 (file)
@@ -3,6 +3,7 @@
 
 #include <glib.h>
 #include <mono/utils/mono-compiler.h>
+#include "config.h"
 
 enum {
         PORTABILITY_NONE        = 0x00,
@@ -11,15 +12,30 @@ enum {
         PORTABILITY_CASE        = 0x04
 };
 
-void mono_portability_helpers_init (void) MONO_INTERNAL;
-gchar *mono_portability_find_file (const gchar *pathname, gboolean last_exists) MONO_INTERNAL;
+#ifdef DISABLE_PORTABILITY
 
-extern int __mono_io_portability_helpers MONO_INTERNAL;
+#define mono_portability_helpers_init()
+#define mono_portability_find_file(pathname,last_exists) NULL
 
-#define IS_PORTABILITY_NONE (__mono_io_portability_helpers & PORTABILITY_NONE)
-#define IS_PORTABILITY_UNKNOWN (__mono_io_portability_helpers & PORTABILITY_UNKNOWN)
-#define IS_PORTABILITY_DRIVE (__mono_io_portability_helpers & PORTABILITY_DRIVE)
-#define IS_PORTABILITY_CASE (__mono_io_portability_helpers & PORTABILITY_CASE)
-#define IS_PORTABILITY_SET (__mono_io_portability_helpers > 0)
+#define IS_PORTABILITY_NONE FALSE
+#define IS_PORTABILITY_UNKNOWN FALSE
+#define IS_PORTABILITY_DRIVE FALSE
+#define IS_PORTABILITY_CASE FALSE
+#define IS_PORTABILITY_SET FALSE
+
+#else
+
+void mono_portability_helpers_init (void);
+gchar *mono_portability_find_file (const gchar *pathname, gboolean last_exists);
+
+extern int mono_io_portability_helpers;
+
+#define IS_PORTABILITY_NONE (mono_io_portability_helpers & PORTABILITY_NONE)
+#define IS_PORTABILITY_UNKNOWN (mono_io_portability_helpers & PORTABILITY_UNKNOWN)
+#define IS_PORTABILITY_DRIVE (mono_io_portability_helpers & PORTABILITY_DRIVE)
+#define IS_PORTABILITY_CASE (mono_io_portability_helpers & PORTABILITY_CASE)
+#define IS_PORTABILITY_SET (mono_io_portability_helpers > 0)
+
+#endif
 
 #endif