diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
index f0db25be79a1f555d46a783d7aacad77cdc174f0..2563c49280e51dbbbf45abd45a96219a1a07e0d4 100755
--- a/scripts/CMakeLists.txt
+++ b/scripts/CMakeLists.txt
@@ -56,22 +56,22 @@ SET(pkgdatadir          ${prefix}/share)
 SET(localstatedir       ${prefix}/data)
 
 CONFIGURE_FILE(mysql_config.pl.in
-               scripts/mysql_config.pl ESCAPE_QUOTES @ONLY)
+               ${CMAKE_BINARY_DIR}/scripts/mysql_config.pl ESCAPE_QUOTES @ONLY)
 
 CONFIGURE_FILE(mysql_convert_table_format.sh
-               scripts/mysql_convert_table_format.pl ESCAPE_QUOTES @ONLY)
+               ${CMAKE_BINARY_DIR}/scripts/mysql_convert_table_format.pl ESCAPE_QUOTES @ONLY)
 
 CONFIGURE_FILE(mysql_install_db.pl.in
-               scripts/mysql_install_db.pl ESCAPE_QUOTES @ONLY)
+               ${CMAKE_BINARY_DIR}/scripts/mysql_install_db.pl ESCAPE_QUOTES @ONLY)
 
 CONFIGURE_FILE(mysql_secure_installation.pl.in
-               scripts/mysql_secure_installation.pl ESCAPE_QUOTES @ONLY)
+               ${CMAKE_BINARY_DIR}/scripts/mysql_secure_installation.pl ESCAPE_QUOTES @ONLY)
 
 CONFIGURE_FILE(mysqld_multi.sh
-               scripts/mysqld_multi.pl ESCAPE_QUOTES @ONLY)
+               ${CMAKE_BINARY_DIR}/scripts/mysqld_multi.pl ESCAPE_QUOTES @ONLY)
 
 CONFIGURE_FILE(mysqldumpslow.sh
-               scripts/mysqldumpslow.pl ESCAPE_QUOTES @ONLY)
+               ${CMAKE_BINARY_DIR}/scripts/mysqldumpslow.pl ESCAPE_QUOTES @ONLY)
 
 CONFIGURE_FILE(mysqlhotcopy.sh
-               scripts/mysqlhotcopy.pl ESCAPE_QUOTES @ONLY)
+               ${CMAKE_BINARY_DIR}/scripts/mysqlhotcopy.pl ESCAPE_QUOTES @ONLY)
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 3548fbf5da34c16ca1f75043d0403a32cc7e56cf..4e05b95982934c5e2f5a61c0fdc083e01d8f918d 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -11064,6 +11064,11 @@ create_internal_tmp_table_from_heap2(THD *thd, TABLE *table,
   if (table->s->db_type() != heap_hton || 
       error != HA_ERR_RECORD_FILE_FULL)
   {
+    /*
+      We don't want this error to be converted to a warning, e.g. in case of
+      INSERT IGNORE ... SELECT.
+    */
+    thd->fatal_error();
     table->file->print_error(error,MYF(0));
     DBUG_RETURN(1);
   }
diff --git a/win/make_mariadb_win_dist b/win/make_mariadb_win_dist
index 9d0b3b26af3090727913ba0122dbf78a30ad3669..67d23e55b8eba445421eb27b26d2545e59a14f90 100644
--- a/win/make_mariadb_win_dist
+++ b/win/make_mariadb_win_dist
@@ -16,12 +16,14 @@ fi
 
 set -x
 
-win/configure-mariadb.sh
+if [ "x_$1" != "x_-nobuild" ]; then
+  win/configure-mariadb.sh
 
-cmake -G "Visual Studio 9 2008"
+  cmake -G "Visual Studio 9 2008"
 
-devenv.com MySQL.sln /build RelWithDebInfo
-devenv.com MySQL.sln /build Debug
+  devenv.com MySQL.sln /build RelWithDebInfo
+  devenv.com MySQL.sln /build Debug
+fi
 
 # TODO extract version number
 VER=`cat configure.in |