diff --git a/ares/m4/cares-compilers.m4 b/ares/m4/cares-compilers.m4
index 674ab330822fddf7eaee826ddb9f4cc8888cbd1e..72e9db27112f261cf42c007f7e445fb1a76608d7 100644
--- a/ares/m4/cares-compilers.m4
+++ b/ares/m4/cares-compilers.m4
@@ -16,7 +16,7 @@
 #***************************************************************************
 
 # File version for 'aclocal' use. Keep it a single number.
-# serial 20
+# serial 21
 
 
 dnl CARES_CHECK_COMPILER
@@ -43,6 +43,7 @@ AC_DEFUN([CARES_CHECK_COMPILER], [
   CARES_CHECK_COMPILER_LCC
   CARES_CHECK_COMPILER_SGI
   CARES_CHECK_COMPILER_SUN
+  CARES_CHECK_COMPILER_TINYC
   #
   if test "$compiler_id" = "unknown"; then
   cat <<_EOF 1>&2
@@ -283,6 +284,28 @@ AC_DEFUN([CARES_CHECK_COMPILER_SUN], [
 ])
 
 
+dnl CARES_CHECK_COMPILER_TINYC
+dnl -------------------------------------------------
+dnl Verify if the C compiler being used is TINYC.
+
+AC_DEFUN([CARES_CHECK_COMPILER_TINYC], [
+  AC_MSG_CHECKING([whether we are using the TinyCC C compiler])
+  CURL_CHECK_DEF([__TINYC__], [], [silent])
+  if test "$curl_cv_have_def___TINYC__" = "yes"; then
+    AC_MSG_RESULT([yes])
+    compiler_id="TINYC"
+    flags_dbg_all="-g -b"
+    flags_dbg_yes="-g -b"
+    flags_dbg_off=""
+    flags_opt_all=""
+    flags_opt_yes=""
+    flags_opt_off=""
+  else
+    AC_MSG_RESULT([no])
+  fi
+])
+
+
 dnl CARES_CONVERT_INCLUDE_TO_ISYSTEM
 dnl -------------------------------------------------
 dnl Changes standard include paths present in CFLAGS
@@ -503,6 +526,12 @@ AC_DEFUN([CARES_SET_COMPILER_BASIC_OPTS], [
         tmp_CFLAGS="$tmp_CFLAGS"
         ;;
         #
+      TINYC)
+        #
+        dnl Placeholder
+        tmp_CFLAGS="$tmp_CFLAGS"
+        ;;
+        #
     esac
     #
     tmp_CPPFLAGS=`eval echo $tmp_CPPFLAGS`
@@ -779,6 +808,18 @@ AC_DEFUN([CARES_SET_COMPILER_WARNING_OPTS], [
         fi
         ;;
         #
+      TINYC)
+        #
+        if test "$want_warnings" = "yes"; then
+          dnl Activate all warnings
+          tmp_CFLAGS="$tmp_CFLAGS -Wall"
+          dnl Make string constants be of type const char *
+          tmp_CFLAGS="$tmp_CFLAGS -Wwrite-strings"
+          dnl Warn use of unsupported GCC features ignored by TCC
+          tmp_CFLAGS="$tmp_CFLAGS -Wunsupported"
+        fi
+        ;;
+        #
     esac
     #
     tmp_CPPFLAGS=`eval echo $tmp_CPPFLAGS`
diff --git a/m4/curl-compilers.m4 b/m4/curl-compilers.m4
index f470175bbcaaac045a38e88c618b1eac8cf969b0..06e5b5280087370e67423c04f37d87bb1e0c315d 100644
--- a/m4/curl-compilers.m4
+++ b/m4/curl-compilers.m4
@@ -22,7 +22,7 @@
 #***************************************************************************
 
 # File version for 'aclocal' use. Keep it a single number.
-# serial 19
+# serial 20
 
 
 dnl CURL_CHECK_COMPILER
@@ -49,6 +49,7 @@ AC_DEFUN([CURL_CHECK_COMPILER], [
   CURL_CHECK_COMPILER_LCC
   CURL_CHECK_COMPILER_SGI
   CURL_CHECK_COMPILER_SUN
+  CURL_CHECK_COMPILER_TINYC
   #
   if test "$compiler_id" = "unknown"; then
   cat <<_EOF 1>&2
@@ -289,6 +290,28 @@ AC_DEFUN([CURL_CHECK_COMPILER_SUN], [
 ])
 
 
+dnl CURL_CHECK_COMPILER_TINYC
+dnl -------------------------------------------------
+dnl Verify if the C compiler being used is TINYC.
+
+AC_DEFUN([CURL_CHECK_COMPILER_TINYC], [
+  AC_MSG_CHECKING([whether we are using the TinyCC C compiler])
+  CURL_CHECK_DEF([__TINYC__], [], [silent])
+  if test "$curl_cv_have_def___TINYC__" = "yes"; then
+    AC_MSG_RESULT([yes])
+    compiler_id="TINYC"
+    flags_dbg_all="-g -b"
+    flags_dbg_yes="-g -b"
+    flags_dbg_off=""
+    flags_opt_all=""
+    flags_opt_yes=""
+    flags_opt_off=""
+  else
+    AC_MSG_RESULT([no])
+  fi
+])
+
+
 dnl CURL_CONVERT_INCLUDE_TO_ISYSTEM
 dnl -------------------------------------------------
 dnl Changes standard include paths present in CFLAGS
@@ -509,6 +532,12 @@ AC_DEFUN([CURL_SET_COMPILER_BASIC_OPTS], [
         tmp_CFLAGS="$tmp_CFLAGS"
         ;;
         #
+      TINYC)
+        #
+        dnl Placeholder
+        tmp_CFLAGS="$tmp_CFLAGS"
+        ;;
+        #
     esac
     #
     tmp_CPPFLAGS=`eval echo $tmp_CPPFLAGS`
@@ -785,6 +814,18 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
         fi
         ;;
         #
+      TINYC)
+        #
+        if test "$want_warnings" = "yes"; then
+          dnl Activate all warnings
+          tmp_CFLAGS="$tmp_CFLAGS -Wall"
+          dnl Make string constants be of type const char *
+          tmp_CFLAGS="$tmp_CFLAGS -Wwrite-strings"
+          dnl Warn use of unsupported GCC features ignored by TCC
+          tmp_CFLAGS="$tmp_CFLAGS -Wunsupported"
+        fi
+        ;;
+        #
     esac
     #
     tmp_CPPFLAGS=`eval echo $tmp_CPPFLAGS`