Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add win32/platform/select_platform_features.h for Windows compatibility.
authorcherierm <cherierm@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 29 Sep 2006 08:35:08 +0000 (08:35 +0000)
committercherierm <cherierm@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 29 Sep 2006 08:35:08 +0000 (08:35 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@2841 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/win32/platform/select_platform_features.h [new file with mode: 0644]

diff --git a/src/win32/platform/select_platform_features.h b/src/win32/platform/select_platform_features.h
new file mode 100644 (file)
index 0000000..406fcf3
--- /dev/null
@@ -0,0 +1,98 @@
+#ifndef __XBT_SELECT_PLATFORM_FEATURES_H__
+#define __XBT_SELECT_PLATFORM_FEATURES_H__
+
+
+/* select_platform_features.h - platform features selection    */
+
+/* Copyright (c) 2003, 2004 Cherier Malek. All rights reserved.            */
+
+/* This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. */
+
+/* Windows platforms. */
+
+
+/* 
+ * win32 or win64 (__WIN32 is defined for win32 and win64 applications, __TOS_WIN__ is defined by xlC).        
+*/ 
+
+/* If the platform is not resolved _XBT_PLATFORM_ID is set to zero. */
+#define _XBT_PLATFORM_ID               0
+
+
+#if defined(_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__)
+       #undef _XBT_PLATFORM_ID
+       #define _XBT_WIN32_PLATFORM     1
+       #define _XBT_PLATFORM_ID        _XBT_WIN32_PLATFORM
+       #define _XBT_PLATFORM_NAME      "Windows 32 bits platform"
+/* 
+ * win64.
+ */
+#elif defined(_WIN64)
+       #undef _XBT_PLATFORM_ID
+       #ifdef _XBT_WIN32_PLATFORM 
+               #undef _XBT_WIN32_PLATFORM 
+       #endif
+       
+       #define _XBT_PLATFORM_NAME      "Windows 64 bits platform"
+       #define _XBT_WIN64_PLATFORM     2
+       #define _XBT_PLATFORM_ID        _XBT_WIN64_PLATFORM
+/* 
+ * win16.
+ */
+#elif defined(_WIN16)
+       #undef _XBT_PLATFORM_ID
+       #define _XBT_WIN16_PLATFORM     3
+       #define _XBT_PLATFORM_NAME      "Windows 16 bits platform"
+       #define _XBT_PLATFORM_ID        _XBT_WIN16_PLATFORM
+/*
+ * wince.
+ */
+#elif defined(UNDER_CE)
+       #undef _XBT_PLATFORM_ID
+       #define __XBT_WINCE_PLATFORM    4
+       #define _XBT_PLATFORM_ID        _XBT_WINCE_PLATFORM
+       #define _XBT_PLATFORM_NAME      "Windows CE bits platform"
+
+#elif defined(linux) || defined(__linux) || defined(__linux__)
+/* linux. */
+       #undef _XBT_PLATFORM_ID
+       #define __XBT_LINUX_PLATFORM    5
+       #define _XBT_PLATFORM_ID        _XBT_LINUX_PLATFORM
+       #define _XBT_PLATFORM_NAME      "Linux platform"
+        
+#elif defined (_XBT_ASSERT_CONFIG)
+       // This must come last - generate an error if we don't
+       // resolve the platform:
+       #error "Unknown platform - please configure (simgrid.gforge.inria.fr/xbt/libs/config/config.htm#configuring) and report the results to the main simgrid mailing list (simgrid.gforge.inra.fr/more/mailing_lists.htm#main)"
+#endif
+
+
+/* Returns true if the platform is resolved, false in the other case. */
+#define _xbt_is_platform_resolved()    (_XBT_PLATFORM_ID != 0)
+
+/* Returns the platform name. */
+#define _xbt_get_platform_name()       _XBT_PLATFORM_NAME
+
+/* Returns the platform id. */
+#define _xbt_get_platform_id()         _XBT_PLATFORM_ID        
+
+/* Returns true if the platform is Windows 32 bits. */
+#define _xbt_is_win32()                        (_XBT_PLATFORM_ID == 1)
+
+/* Returns true if the platform is Windows 64 bits. */
+#define _xbt_is_win64()                        (_XBT_PLATFORM_ID == 2)
+
+/* Returns true if the platform is Windows 16 bits. */
+#define _xbt_is_win16()                        (_XBT_PLATFORM_ID == 3)
+
+/* Returns true if the platform is Windows CE. */
+#define _xbt_is_wince()                        (_XBT_PLATFORM_ID == 4)
+
+/* Returns true if the platform is linux. */
+#define _xbt_is_linux()                        (_XBT_PLATFORM_ID == 5)
+
+
+
+
+#endif /* #define __XBT_SELECT_PLATFORM_FEATURES_H__ */
\ No newline at end of file