aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/compiler/icc/settings.cmake24
-rw-r--r--cmake/platform/unix/settings.cmake6
-rwxr-xr-xsrc/server/shared/Dynamic/UnorderedMap.h5
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