Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
declaration of toupper
[simgrid.git] / src / surf / surf.c
index 83f6614..6bc08c2 100644 (file)
@@ -5,12 +5,15 @@
 /* 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. */
 
 /* 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. */
 
+#include <ctype.h>
+
 #include "surf_private.h"
 #include "xbt/module.h"
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_kernel, surf,
                                "Logging specific to SURF (kernel)");
 
 #include "surf_private.h"
 #include "xbt/module.h"
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_kernel, surf,
                                "Logging specific to SURF (kernel)");
 
+int use_sdp_solver=0;
 
 /* Additional declarations for Windows potability. */
 
 
 /* Additional declarations for Windows potability. */
 
@@ -74,7 +77,7 @@ const char* __surf_get_initial_path(void)
 
        for(i = 0; i<MAX_DRIVE;i++)
        {
 
        for(i = 0; i<MAX_DRIVE;i++)
        {
-               if(root[0] == disk_drives_letter_table[i][0])
+               if(toupper(root[0]) == disk_drives_letter_table[i][0])
                        return disk_drives_letter_table[i];
        }
 
                        return disk_drives_letter_table[i];
        }
 
@@ -139,7 +142,15 @@ double generic_maxmin_share_resources2(xbt_swag_t running_actions,
   double value = -1;
 #define VARIABLE(action) (*((lmm_variable_t*)(((char *) (action)) + (offset))))
 
   double value = -1;
 #define VARIABLE(action) (*((lmm_variable_t*)(((char *) (action)) + (offset))))
 
-  lmm_solve(sys);
+  if(!use_sdp_solver)
+    lmm_solve(sys);
+  else {
+#ifdef HAVE_SDP
+    sdp_solve(sys);
+#else
+    xbt_assert0(0, "No CSDP found! You cannot use this model!");
+#endif
+  }
 
   xbt_swag_foreach(action, running_actions) {
     value = lmm_variable_getvalue(VARIABLE(action));
 
   xbt_swag_foreach(action, running_actions) {
     value = lmm_variable_getvalue(VARIABLE(action));