$ git clone http://tcclient.ion.nu/tc_client.git
commit 46a3bacf68a730aed58bf477feda5480dbdfaa2f
Author: Alicia <...>
Date:   Sat Sep 17 22:57:26 2016 +0200

    testbuilds.sh: adapted to the changes in configure and made it check if builds succeed without -Werror rather than unforgivingly marking it as broken, instead marking it as working but with warnings.

diff --git a/ChangeLog b/ChangeLog
index 255f7f1..1fb8655 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -34,6 +34,7 @@ tc_client-gtk and camviewer: specify a scaling algorithm for libswscale (mandato
 tc_client-gtk and camviewer: don't try to play audio if the resampling failed (experimental mic support)
 libcamera(v4l2): if we failed to read the frame, give grey instead.
 irchack: fixed the order of messages around joining a channel (should fix compatibility with IRC clients a bit pickier than irssi)
+testbuilds.sh: adapted to the changes in configure and made it check if builds succeed without -Werror rather than unforgivingly marking it as broken, instead marking it as working but with warnings.
 0.38:
 Handle multi-line messages.
 Added option --hexcolors to print hex color codes instead of ANSI color escape codes.
diff --git a/testbuilds.sh b/testbuilds.sh
index 2764788..2bb12b2 100755
--- a/testbuilds.sh
+++ b/testbuilds.sh
@@ -1,9 +1,9 @@
 #!/bin/sh
 # Utility to make sure that changes did not break the project in certain configurations
-echo "WARNING: this tool is for developers, not users. You have 5 seconds to press Ctrl+C to abort."
+echo "WARNING: this tool is for developers, not users. You have 8 seconds to press Ctrl+C to abort."
 echo
 echo "What it does is to configure and build the project with different features enabled and disabled to make sure that improvements didn't also break stuff in certain cases. This *will* erase anything you've already compiled."
-sleep 5
+sleep 8
 make clean > /dev/null 2> /dev/null
 printf "Without mic, with gtk+-2.x, with streaming, without RTMP_DEBUG: "
 res="broken"
@@ -17,17 +17,24 @@ while true; do
   if ! grep -q '^SWSCALE_LIBS' config.mk; then res="libswscale not found, can't test"; break; fi
   if ! grep -q '^LIBV4L2_LIBS' config.mk; then res="libv4l2 not found, can't test"; break; fi
   echo 'CFLAGS+=-Werror' >> config.mk
-  make utils > /dev/null 2> /dev/null || break
+  if ! make utils > /dev/null 2> /dev/null; then
+    sed -i -e 's/-Werror[^ ]*//g' config.mk
+    make utils > /dev/null 2> /dev/null || break
+    res="works but with warnings"
+    break
+  fi
   res="works"
   break
 done
 echo "$res"
+mv camviewer camviewer.gtk2 > /dev/null 2> /dev/null
+mv tc_client-gtk tc_client-gtk.gtk2 > /dev/null 2> /dev/null
 
 make clean > /dev/null 2> /dev/null
 printf "With mic, with gtk+-3.x, without streaming, with RTMP_DEBUG: "
 res="broken"
 while true; do
-  ENABLE_MIC=1 ./configure > /dev/null 2> /dev/null || break
+  ./configure --enable-mic > /dev/null 2> /dev/null || break
   if ! grep -q 'GTK_LIBS=.*-lgtk-3' config.mk; then res="gtk+-3.x not found, can't test"; break; fi
   if ! grep -q '^AO_LIBS' config.mk; then res="libao not found, can't test"; break; fi
   if ! grep -q 'RESAMPLE_LIBS' config.mk; then res="lib(av|sw)resample not found, can't test"; break; fi
@@ -35,7 +42,12 @@ while true; do
   if ! grep -q '^SWSCALE_LIBS' config.mk; then res="libswscale not found, can't test"; break; fi
   sed -i -e '/^LIBV4L2_LIBS/d' config.mk
   echo 'CFLAGS+=-DRTMP_DEBUG=1 -Werror' >> config.mk
-  make utils > /dev/null 2> /dev/null || break
+  if ! make utils > /dev/null 2> /dev/null; then
+    sed -i -e 's/-Werror[^ ]*//g' config.mk
+    make utils > /dev/null 2> /dev/null || break
+    res="works but with warnings"
+    break
+  fi
   res="works"
   break
 done