diff options
| author | click <none@none> | 2010-10-21 22:00:12 +0200 |
|---|---|---|
| committer | click <none@none> | 2010-10-21 22:00:12 +0200 |
| commit | ea847598d0514cf6107583da983fb3c273703902 (patch) | |
| tree | 61b0a6e04fd894a66bdcb10c9365ec212d8799b0 | |
| parent | 03c6c34a4b0899a01deb4cfc4654bd652b322d13 (diff) | |
Buildsystem: Add initial support for Intel C++ Compiler (patch by Leak)
Note: Intel C++ Compiler for Windows is not supported in this change
Closes issue 4361
--HG--
branch : trunk
| -rw-r--r-- | cmake/compiler/icc/settings.cmake | 24 | ||||
| -rw-r--r-- | cmake/platform/unix/settings.cmake | 6 | ||||
| -rwxr-xr-x | src/server/shared/Dynamic/UnorderedMap.h | 5 |
3 files changed, 30 insertions, 5 deletions
diff --git a/cmake/compiler/icc/settings.cmake b/cmake/compiler/icc/settings.cmake new file mode 100644 index 00000000000..0e614ef97f8 --- /dev/null +++ b/cmake/compiler/icc/settings.cmake @@ -0,0 +1,24 @@ +# Set build-directive (used in core to tell which buildtype we used) +add_definitions(-D_BUILD_DIRECTIVE="${CMAKE_BUILD_TYPE}") + +if( USE_SFMT) + if(PLATFORM EQUAL 32) + add_definitions(-axSSE2) + else() + add_definitions(-xSSE2) + endif() + message(STATUS "ICC: SFMT enabled, SSE2 flags forced") +endif() + +if( WITH_WARNINGS ) + add_definitions(-w1) + message(STATUS "ICC All warnings enabled") +else() + add_definitions(-w) + message(STATUS "ICC: All warnings disabled") +endif() + +if( WITH_COREDEBUG ) + add_definitions(-g) + message(STATUS "ICC: Debug-flag set (-g)") +endif() diff --git a/cmake/platform/unix/settings.cmake b/cmake/platform/unix/settings.cmake index e53e680a566..27c370c740e 100644 --- a/cmake/platform/unix/settings.cmake +++ b/cmake/platform/unix/settings.cmake @@ -24,4 +24,8 @@ add_custom_target(uninstall ) message(STATUS "UNIX: Created uninstall target") -include(${CMAKE_SOURCE_DIR}/cmake/compiler/gcc/settings.cmake) +if(CMAKE_C_COMPILER MATCHES "gcc") + include(${CMAKE_SOURCE_DIR}/cmake/compiler/gcc/settings.cmake) +elseif(CMAKE_C_COMPILER MATCHES "icc") + include(${CMAKE_SOURCE_DIR}/cmake/compiler/icc/settings.cmake) +endif() diff --git a/src/server/shared/Dynamic/UnorderedMap.h b/src/server/shared/Dynamic/UnorderedMap.h index 6cf228d22df..80a23c4c290 100755 --- a/src/server/shared/Dynamic/UnorderedMap.h +++ b/src/server/shared/Dynamic/UnorderedMap.h @@ -42,12 +42,9 @@ using std::hash_map; #elif COMPILER == COMPILER_MICROSOFT && _MSC_VER >= 1300 #define UNORDERED_MAP stdext::hash_map using stdext::hash_map; -#elif COMPILER == COMPILER_INTEL -#define UNORDERED_MAP std::hash_map -using std::hash_map; #elif COMPILER == COMPILER_GNU && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ >= 3) #define UNORDERED_MAP std::tr1::unordered_map -#elif COMPILER == COMPILER_GNU && __GNUC__ >= 3 +#elif (COMPILER == COMPILER_GNU && __GNUC__ >= 3) || COMPILER == COMPILER_INTEL #define UNORDERED_MAP __gnu_cxx::hash_map namespace __gnu_cxx |
