diff --git a/src/auto/configure b/src/auto/configure
index 1843a9e..b965261 100755
--- a/src/auto/configure
+++ b/src/auto/configure
Binary files differ
diff --git a/src/configure.in b/src/configure.in
index 49acc19..8eaddcb 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -678,8 +678,9 @@
 	dnl    see what the interpreter is built from
 	AC_CACHE_VAL(vi_cv_path_python_plibs,
 	[
-	    tmp_mkf="/tmp/Makefile-conf$$"
-	    cat ${PYTHON_CONFDIR}/Makefile - <<'eof' >${tmp_mkf}
+	    pwd=`pwd`
+	    tmp_mkf="$pwd/config-PyMake$$"
+	    cat -- "${PYTHON_CONFDIR}/Makefile" - <<'eof' >"${tmp_mkf}"
 __:
 	@echo "python_MODLIBS='$(MODLIBS)'"
 	@echo "python_LIBS='$(LIBS)'"
@@ -687,8 +688,8 @@
 	@echo "python_LINKFORSHARED='$(LINKFORSHARED)'"
 eof
 	    dnl -- delete the lines from make about Entering/Leaving directory
-	    eval "`cd ${PYTHON_CONFDIR} && make -f ${tmp_mkf} __ | sed '/ directory /d'`"
-	    rm -f ${tmp_mkf}
+	    eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
+	    rm -f -- "${tmp_mkf}"
 	    if test "x$MACOSX" = "xyes" && ${vi_cv_path_python} -c \
 		"import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then
 	      vi_cv_path_python_plibs="-framework Python"
diff --git a/src/if_perl.xs b/src/if_perl.xs
index a6994f6..5b0449a 100644
--- a/src/if_perl.xs
+++ b/src/if_perl.xs
@@ -843,6 +843,12 @@
     }
 }
 
+#ifndef FEAT_WINDOWS
+int win_valid(win_T *w) { return TRUE; }
+int win_count() { return 1; }
+win_T *win_find_nr(int n) { return curwin; }
+#endif
+
 XS(XS_VIM_Msg);
 XS(XS_VIM_SetOption);
 XS(XS_VIM_DoCommand);
diff --git a/src/if_python.c b/src/if_python.c
index 66e792b..baf505c 100644
--- a/src/if_python.c
+++ b/src/if_python.c
@@ -1120,6 +1120,7 @@
     return result;
 }
 
+#ifdef FEAT_EVAL
 /*
  * Function to translate a typval_T into a PyObject; this will recursively
  * translate lists/dictionaries into their Python equivalents.
@@ -1162,7 +1163,7 @@
 	result = Py_BuildValue("s", buf);
 	PyDict_SetItemString(lookupDict, ptrBuf, result);
     }
-#ifdef FEAT_FLOAT
+# ifdef FEAT_FLOAT
     else if (our_tv->v_type == VAR_FLOAT)
     {
 	char buf[NUMBUFLEN];
@@ -1171,7 +1172,7 @@
 	result = Py_BuildValue("s", buf);
 	PyDict_SetItemString(lookupDict, ptrBuf, result);
     }
-#endif
+# endif
     else if (our_tv->v_type == VAR_LIST)
     {
 	list_T		*list = our_tv->vval.v_list;
@@ -1224,6 +1225,7 @@
 
     return result;
 }
+#endif
 
 /*ARGSUSED*/
     static PyObject *
diff --git a/src/version.c b/src/version.c
index f46ebda..28ac16a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -677,6 +677,10 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    14,
+/**/
+    13,
+/**/
     12,
 /**/
     11,
