Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
don't choke on MSVC; cosmetics in cmake output
authorMartin Quinson <martin.quinson@loria.fr>
Sat, 12 Sep 2015 09:08:56 +0000 (11:08 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Sat, 12 Sep 2015 09:10:33 +0000 (11:10 +0200)
CMakeLists.txt
src/win32/config.h

index 5794264..7ab35ff 100644 (file)
@@ -16,7 +16,7 @@ endif()
 ## Check the C/C++ standard that we need
 ##   See also tools/cmake/Flags.cmake that sets our paranoid warning flags
 if (MSVC)
 ## Check the C/C++ standard that we need
 ##   See also tools/cmake/Flags.cmake that sets our paranoid warning flags
 if (MSVC)
-  message("MicroSoft Visual C detected.")
+  message("-- MicroSoft Visual C detected. Good luck.")
 else() # gcc or clang
   INCLUDE(CheckCCompilerFlag)
   CHECK_C_COMPILER_FLAG(-fstack-cleaner HAVE_C_STACK_CLEANER)
 else() # gcc or clang
   INCLUDE(CheckCCompilerFlag)
   CHECK_C_COMPILER_FLAG(-fstack-cleaner HAVE_C_STACK_CLEANER)
@@ -137,11 +137,6 @@ endif()
 exec_program("${CMAKE_LINKER} --version" OUTPUT_VARIABLE "LINKER_VERSION")
 string(REGEX MATCH "[0-9].[0-9]*" LINKER_VERSION "${LINKER_VERSION}")
 
 exec_program("${CMAKE_LINKER} --version" OUTPUT_VARIABLE "LINKER_VERSION")
 string(REGEX MATCH "[0-9].[0-9]*" LINKER_VERSION "${LINKER_VERSION}")
 
-string(REGEX MATCH "cl.exe" VBC "${CMAKE_C_COMPILER}")
-if(VBC)
-  message("VB is not yet supported by Simgrid. Proceed with extrem caution")
-endif()
-
 ### Find programs and paths
 FIND_PROGRAM(GCOV_PATH gcov)
 include(FindPerl)
 ### Find programs and paths
 FIND_PROGRAM(GCOV_PATH gcov)
 include(FindPerl)
@@ -207,8 +202,6 @@ if(WIN32)
     if(COMPILER_C_MINOR_VERSION)
       # set(__GNUC_MINOR__ ${COMPILER_C_MINOR_VERSION})
     endif()
     if(COMPILER_C_MINOR_VERSION)
       # set(__GNUC_MINOR__ ${COMPILER_C_MINOR_VERSION})
     endif()
-  else()
-    message("You REALLY should use MinGW to compile SimGrid on Windows!")
   endif()
 
   set(NSIS_WIN_VERSION $ENV{PROCESSOR_ARCHITEW6432})
   endif()
 
   set(NSIS_WIN_VERSION $ENV{PROCESSOR_ARCHITEW6432})
index 93ab3bf..8e64955 100644 (file)
 /* 
  * config selection. 
 */
 /* 
  * config selection. 
 */
-#if defined(__GNUC__)
-        /* data comes from autoconf when using gnuc (cross-compiling?) */
+#if defined(__GNUC__) /* either MinGW or cross-compiling */
   # include "internal_config.h"
   #ifndef _XBT_WIN32
     typedef unsigned int uint32_t;
   #endif
   # include "internal_config.h"
   #ifndef _XBT_WIN32
     typedef unsigned int uint32_t;
   #endif
-# else
-  # error "Unknown compiler - please report the problems to the main simgrid mailing list (http://gforge.inria.fr/mail/?group_id=12)"
+#else
+  #ifdef _MSC_VER /* MSVC */
+    /* Here come the HAVE_* macro that are manually defined when using MSVC */
+    /*    (none for now)    */
+  # else
+    # error "Unknown compiler - please report the problems to the main simgrid mailing list (http://gforge.inria.fr/mail/?group_id=12)"
+  #endif
 #endif
 
 #endif
 
-#ifndef _XBT_VISUALC_COMPILER
+#ifndef _MSC_VER
   #ifndef EWOULDBLOCK
   #define EWOULDBLOCK WSAEWOULDBLOCK
   #endif
   #ifndef EWOULDBLOCK
   #define EWOULDBLOCK WSAEWOULDBLOCK
   #endif