improved compiler detection
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 94f1c24..2fa32e8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -27,8 +27,8 @@
 find_package(PythonLibs ${PYBIND11_PYTHON_VERSION} REQUIRED)
 find_package(PythonInterp ${PYBIND11_PYTHON_VERSION} REQUIRED)
 
-if (UNIX)
-  # Enable C++11 mode
+if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU")
+  # Enable C++11 mode on C++ / Clang
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
 
   # Enable link time optimization and set the default symbol
@@ -45,7 +45,7 @@
   else()
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
   endif()
-else()
+elseif ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU")
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra")
 endif()