diff -Naur mariadb-5.5.48.orig/cmake/install_macros.cmake mariadb-5.5.48.new/cmake/install_macros.cmake
--- mariadb-5.5.48.orig/cmake/install_macros.cmake	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/cmake/install_macros.cmake	2016-04-22 04:12:58.503985000 +0300
@@ -34,9 +34,19 @@
   FOREACH(target ${targets})
     GET_TARGET_PROPERTY(type ${target} TYPE)
     GET_TARGET_PROPERTY(location ${target} LOCATION)
+	
+	GET_TARGET_PROPERTY(__POSTFIX ${target} DEBUG_POSTFIX)
+	
     STRING(REPLACE ".exe" ".pdb" pdb_location ${location})
-    STRING(REPLACE ".dll" ".pdb" pdb_location ${pdb_location})
-    STRING(REPLACE ".lib" ".pdb" pdb_location ${pdb_location})
+	
+	IF(__POSTFIX)
+		STRING(REPLACE ".dll" "${__POSTFIX}.pdb" pdb_location ${pdb_location})
+		STRING(REPLACE ".lib" "${__POSTFIX}.pdb" pdb_location ${pdb_location})
+	ELSE()
+		STRING(REPLACE ".dll" ".pdb" pdb_location ${pdb_location})
+		STRING(REPLACE ".lib" ".pdb" pdb_location ${pdb_location})		
+	ENDIF()
+	
     IF(CMAKE_GENERATOR MATCHES "Visual Studio")
       STRING(REPLACE
         "${CMAKE_CFG_INTDIR}" "\${CMAKE_INSTALL_CONFIG_NAME}"
diff -Naur mariadb-5.5.48.orig/cmake/libutils.cmake mariadb-5.5.48.new/cmake/libutils.cmake
--- mariadb-5.5.48.orig/cmake/libutils.cmake	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/cmake/libutils.cmake	2016-04-22 04:12:58.510985400 +0300
@@ -106,6 +106,9 @@
   SET(SOURCES ${ARGN})
   LIST(REMOVE_AT SOURCES 0)
   ADD_LIBRARY(${TARGET} STATIC ${SOURCES})
+  IF(CMAKE_DEBUG_POSTFIX)
+	SET_TARGET_PROPERTIES(${TARGET} PROPERTIES DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX})
+  ENDIF()
   IF(NOT _SKIP_PIC)
     SET_TARGET_PROPERTIES(${TARGET} PROPERTIES  COMPILE_FLAGS
     "${CMAKE_SHARED_LIBRARY_C_FLAGS}")
@@ -141,6 +144,8 @@
   FOREACH(LIB ${LIBS_TO_MERGE})
     GET_TARGET_PROPERTY(LIB_LOCATION ${LIB} LOCATION)
     GET_TARGET_PROPERTY(LIB_TYPE ${LIB} TYPE)
+	GET_TARGET_PROPERTY(LIB_OUTNAME ${LIB} OUTPUT_NAME)
+	STRING(REPLACE ".lib" "${CMAKE_DEBUG_POSTFIX}.lib" LIB_LOCATION ${LIB_LOCATION})
     IF(NOT LIB_LOCATION)
        # 3rd party library like libz.so. Make sure that everything
        # that links to our library links to this one as well.
diff -Naur mariadb-5.5.48.orig/cmake/os/WindowsCache.cmake mariadb-5.5.48.new/cmake/os/WindowsCache.cmake
--- mariadb-5.5.48.orig/cmake/os/WindowsCache.cmake	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/cmake/os/WindowsCache.cmake	2016-04-22 04:12:58.512985500 +0300
@@ -101,6 +101,11 @@
 SET(HAVE_IPV6 TRUE CACHE  INTERNAL "")
 SET(HAVE_IPV6_V6ONLY 1 CACHE  INTERNAL "")
 SET(HAVE_ISINF CACHE  INTERNAL "")
+IF(MSVC_VERSION LESS 1900)
+SET(HAVE_ISNAN CACHE  INTERNAL "")
+ELSE()
+SET(HAVE_ISNAN CACHE 1 INTERNAL "")
+ENDIF()
 SET(HAVE_ISSETUGID CACHE  INTERNAL "")
 SET(HAVE_GETUID CACHE  INTERNAL "")
 SET(HAVE_GETEUID CACHE  INTERNAL "")
@@ -230,6 +235,11 @@
 SET(HAVE_SIZEOF_U_INT32_T FALSE CACHE  INTERNAL "")
 SET(HAVE_SIZE_OF_SSIZE_T FALSE CACHE  INTERNAL "")
 SET(HAVE_SLEEP CACHE  INTERNAL "")
+IF(MSVC_VERSION LESS 1900)
+ SET(HAVE_SNPRINTF CACHE  INTERNAL "")
+ELSE()
+SET(HAVE_SNPRINTF CACHE 1 INTERNAL "")
+ENDIF()
 SET(HAVE_SOCKADDR_STORAGE_SS_FAMILY 1 CACHE  INTERNAL "")
 SET(HAVE_SOLARIS_STYLE_GETHOST CACHE  INTERNAL "")
 SET(STACK_DIRECTION -1 CACHE INTERNAL "")
@@ -306,7 +316,11 @@
 SET(HAVE_TIMES CACHE  INTERNAL "")
 SET(HAVE_TIMESPEC_TS_SEC CACHE  INTERNAL "")
 SET(HAVE_TIME_H 1 CACHE  INTERNAL "")
+IF(MSVC_VERSION LESS 1900)
 SET(HAVE_TZNAME 1 CACHE  INTERNAL "")
+ELSE()
+SET(HAVE_TZNAME CACHE  INTERNAL "")
+ENDIF()
 SET(HAVE_UNISTD_H CACHE  INTERNAL "")
 SET(HAVE_UTIME_H CACHE  INTERNAL "")
 SET(HAVE_VALLOC CACHE  INTERNAL "")
@@ -331,6 +345,7 @@
 IF(MSVC_VERSION GREATER 1310)
  SET(HAVE_strtok_s 1 CACHE  INTERNAL "")
 ENDIF()
+SET(HAVE__tzname 1 CACHE  INTERNAL "")
 SET(STDC_HEADERS CACHE 1 INTERNAL "")
 SET(STRUCT_DIRENT_HAS_D_INO CACHE INTERNAL "")
 SET(STRUCT_DIRENT_HAS_D_INO CACHE INTERNAL "")
diff -Naur mariadb-5.5.48.orig/CMakeLists.txt mariadb-5.5.48.new/CMakeLists.txt
--- mariadb-5.5.48.orig/CMakeLists.txt	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/CMakeLists.txt	2016-04-22 04:12:58.514985600 +0300
@@ -26,6 +26,8 @@
   CMAKE_POLICY(SET CMP0022 OLD)
 ENDIF()
 
+set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS ON)
+
 # We use the LOCATION target property (CMP0026)
 # and get_target_property() for non-existent targets (CMP0045)
 # and INSTALL_NAME_DIR (CMP0042)
@@ -253,9 +255,11 @@
   SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} -fprofile-arcs -ftest-coverage -lgcov")
 ENDIF()
 
+IF(NOT WIN32)
 MY_CHECK_C_COMPILER_FLAG(-ggdb3 HAVE_GGDB3)
 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -ggdb3")
 SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -ggdb3")
+ENDIF()
 
 OPTION(ENABLED_LOCAL_INFILE
  "If we should should enable LOAD DATA LOCAL by default" ${IF_WIN})
@@ -328,7 +332,7 @@
   "PATH to MySQL TMP dir. Defaults to the P_tmpdir macro in <stdio.h>")
 IF(TMPDIR STREQUAL "")
   # Do not quote it, to refer to the P_tmpdir macro.
-  SET(DEFAULT_TMPDIR "P_tmpdir")
+  SET(DEFAULT_TMPDIR "\"tmp\"")
 ELSE()
   # Quote it, to make it a const char string.
   SET(DEFAULT_TMPDIR "\"${TMPDIR}\"")
@@ -421,7 +425,7 @@
 INCLUDE(cmake/tags.cmake)
 
 IF(WIN32)
-  ADD_SUBDIRECTORY(win/upgrade_wizard)
+  #ADD_SUBDIRECTORY(win/upgrade_wizard)
   ADD_SUBDIRECTORY(win/packaging)
 ENDIF()
 ADD_SUBDIRECTORY(packaging/solaris)
diff -Naur mariadb-5.5.48.orig/libmysql/CMakeLists.txt mariadb-5.5.48.new/libmysql/CMakeLists.txt
--- mariadb-5.5.48.orig/libmysql/CMakeLists.txt	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/libmysql/CMakeLists.txt	2016-04-22 04:12:58.516985700 +0300
@@ -379,6 +379,15 @@
   ../sql/password.c
   ${CLIENT_SOURCES_EXTRA}
 )
+
+IF (WIN32 AND MSVC_VERSION GREATER 1820)
+  SET_SOURCE_FILES_PROPERTIES(
+    ../sql-common/my_time.c
+    PROPERTIES COMPILE_FLAGS /Zc:inline-
+  )
+ENDIF()
+
+
 ADD_CONVENIENCE_LIBRARY(clientlib ${CLIENT_SOURCES})
 DTRACE_INSTRUMENT(clientlib)
 ADD_DEPENDENCIES(clientlib GenError)
diff -Naur mariadb-5.5.48.orig/libmysqld/CMakeLists.txt mariadb-5.5.48.new/libmysqld/CMakeLists.txt
--- mariadb-5.5.48.orig/libmysqld/CMakeLists.txt	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/libmysqld/CMakeLists.txt	2016-04-22 04:12:58.518985900 +0300
@@ -99,6 +99,12 @@
            ${MYSYS_LIBWRAP_SOURCE}
 )
 
+IF (WIN32 AND MSVC_VERSION GREATER 1820)
+  SET_SOURCE_FILES_PROPERTIES(
+    ../sql-common/my_time.c
+    PROPERTIES COMPILE_FLAGS /Zc:inline-
+  )
+ENDIF()
 
 ADD_CONVENIENCE_LIBRARY(sql_embedded ${SQL_EMBEDDED_SOURCES})
 DTRACE_INSTRUMENT(sql_embedded)
diff -Naur mariadb-5.5.48.orig/packaging/WiX/ca/CMakeLists.txt mariadb-5.5.48.new/packaging/WiX/ca/CMakeLists.txt
--- mariadb-5.5.48.orig/packaging/WiX/ca/CMakeLists.txt	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/packaging/WiX/ca/CMakeLists.txt	2016-04-22 04:12:58.520986000 +0300
@@ -30,6 +30,12 @@
   SET(WIX35_MSVC_SUFFIX "_2008")
 ELSEIF(MSVC_VERSION EQUAL 1600)
   SET(WIX35_MSVC_SUFFIX "_2010")
+ELSEIF(MSVC_VERSION EQUAL 1700)
+  SET(WIX35_MSVC_SUFFIX "_2012")
+ELSEIF(MSVC_VERSION EQUAL 1800)
+  SET(WIX35_MSVC_SUFFIX "_2013")
+ELSEIF(MSVC_VERSION EQUAL 1900)
+  SET(WIX35_MSVC_SUFFIX "_2015")
 ELSE()
   # When next VS is out, add the correct version here
   MESSAGE(FATAL_ERROR "Unknown VS version")
diff -Naur mariadb-5.5.48.orig/sql/CMakeLists.txt mariadb-5.5.48.new/sql/CMakeLists.txt
--- mariadb-5.5.48.orig/sql/CMakeLists.txt	2016-02-10 08:07:26.000000000 +0200
+++ mariadb-5.5.48.new/sql/CMakeLists.txt	2016-04-22 04:12:58.528986400 +0300
@@ -103,6 +103,13 @@
  ENDIF()
 ENDIF()
 
+IF (WIN32 AND MSVC_VERSION GREATER 1820)
+  SET_SOURCE_FILES_PROPERTIES(
+    ../sql-common/my_time.c
+    PROPERTIES COMPILE_FLAGS /Zc:inline-
+  )
+ENDIF()
+
 MYSQL_ADD_PLUGIN(partition ha_partition.cc STORAGE_ENGINE DEFAULT STATIC_ONLY
 RECOMPILE_FOR_EMBEDDED)
 
