diff --git a/configure.ac b/configure.ac
index 72874f32f0054498994a074e5772223df8077e21..51ea3691ece6fe834e9f26dcca50f6a965c03024 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10,7 +10,7 @@
 AC_INIT(putty, X.XX)
 AC_CONFIG_FILES([Makefile])
 AC_CONFIG_HEADERS([uxconfig.h:uxconfig.in])
-AM_INIT_AUTOMAKE([-Wall -Werror foreign])
+AM_INIT_AUTOMAKE([-Wall foreign])
 
 AC_PROG_INSTALL
 AC_PROG_RANLIB
@@ -198,7 +198,7 @@ AS_IF([test AS_VAR_GET(x_cv_linux_so_peercred) = yes],
 
 if test "x$GCC" = "xyes"; then
   :
-  AC_SUBST(WARNINGOPTS, ['-Wall -Werror -Wpointer-arith -Wvla'])
+  AC_SUBST(WARNINGOPTS, ['-Wall -Wpointer-arith -Wvla'])
 else
   :
   AC_SUBST(WARNINGOPTS, [])
diff --git a/mkfiles.pl b/mkfiles.pl
index 3282f3597f292884d5a46f78325131a88e30139e..b323e87f306fed6907b80ac39af84bf26676e03b 100755
--- a/mkfiles.pl
+++ b/mkfiles.pl
@@ -549,7 +549,7 @@ if (defined $makefiles{'clangcl'}) {
                (join " ", map {"-I$dirpfx$_"} @srcdirs) .
                " /D_WINDOWS /D_WIN32_WINDOWS=0x500 /DWINVER=0x500 ".
                "/D_CRT_SECURE_NO_WARNINGS /D_WINSOCK_DEPRECATED_NO_WARNINGS").
-               " -Werror \$(PLATFORMCFLAGS)\n".
+               " \$(PLATFORMCFLAGS)\n".
     "LFLAGS = /incremental:no /dynamicbase /nxcompat\n".
     &splitline("RCPPFLAGS = ".(join " ", map {"-I$dirpfx$_"} @srcdirs).
                " -DWIN32 -D_WIN32 -DWINVER=0x0400")." \$(RCFL)\n".
@@ -1425,7 +1425,7 @@ if (defined $makefiles{'gtk'}) {
     "\n".
     "unexport CFLAGS # work around a weird issue with krb5-config\n".
     "\n".
-    &splitline("CFLAGS = -O2 -Wall -Werror -std=gnu99 -Wvla -g " .
+    &splitline("CFLAGS = -O2 -Wall -std=gnu99 -Wvla -g " .
                (join " ", map {"-I$dirpfx$_"} @srcdirs) .
                " \$(shell \$(GTK_CONFIG) --cflags)").
                  " -D _FILE_OFFSET_BITS=64\n".
@@ -1506,7 +1506,7 @@ if (defined $makefiles{'unix'}) {
     "\n".
     "unexport CFLAGS # work around a weird issue with krb5-config\n".
     "\n".
-    &splitline("CFLAGS = -O2 -Wall -Werror -std=gnu99 -Wvla -g " .
+    &splitline("CFLAGS = -O2 -Wall -std=gnu99 -Wvla -g " .
                (join " ", map {"-I$dirpfx$_"} @srcdirs)).
                  " -D _FILE_OFFSET_BITS=64\n".
     "ULDFLAGS = \$(LDFLAGS)\n".
@@ -1748,7 +1748,7 @@ if (defined $makefiles{'osx'}) {
     print
     "CC = \$(TOOLPATH)gcc\n".
     "\n".
-    &splitline("CFLAGS = -O2 -Wall -Werror -std=gnu99 -Wvla -g " .
+    &splitline("CFLAGS = -O2 -Wall -std=gnu99 -Wvla -g " .
                (join " ", map {"-I$dirpfx$_"} @srcdirs))."\n".
     "MLDFLAGS = -framework Cocoa\n".
     "ULDFLAGS =\n".