Do not cache results of checks with side effects.

diff --git a/configure b/configure
index a79cd63..313c7af 100755
--- a/configure
+++ b/configure
@@ -10007,17 +10007,12 @@
 
 if test "$ac_cv_header_unicode_ubidi_h" = "yes"
 then
-    echo "$as_me:$LINENO: checking whether we can statically link the ICU libraries" >&5
-echo $ECHO_N "checking whether we can statically link the ICU libraries... $ECHO_C" >&6
-if test "${ac_cv_lib_icu+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  saved_libs="$LIBS"
-         ICU_LIB_DIR="${ICU_LIB_DIR-/usr/lib}"
-         ICUUC_LIB="${ICUUC_LIB-$ICU_LIB_DIR/libicuuc.a}"
-         ICUDATA_LIB="${ICUDATA_LIB-$ICU_LIB_DIR/libicudata.a}"
-         LIBS="$LIBS $ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s"
-         cat >conftest.$ac_ext <<_ACEOF
+    saved_libs="$LIBS"
+    ICU_LIB_DIR="${ICU_LIB_DIR-/usr/lib}"
+    ICUUC_LIB="${ICUUC_LIB-$ICU_LIB_DIR/libicuuc.a}"
+    ICUDATA_LIB="${ICUDATA_LIB-$ICU_LIB_DIR/libicudata.a}"
+    LIBS="$LIBS $ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s"
+    cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
 _ACEOF
 cat confdefs.h >>conftest.$ac_ext
@@ -10053,29 +10048,21 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  ac_cv_lib_icu="yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_icu="no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-        LIBS="$saved_libs"
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_icu" >&5
-echo "${ECHO_T}$ac_cv_lib_icu" >&6
-    if test "$ac_cv_lib_icu" = "yes"
-    then
 
 cat >>confdefs.h <<\_ACEOF
 #define HAVE_ICU 1
 _ACEOF
 
-        ICULIBS="$ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s"
+                 ICULIBS="$ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s"
 
-    fi
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext \
+      conftest$ac_exeext conftest.$ac_ext
+    LIBS="$saved_libs"
 fi
 
 echo "$as_me:$LINENO: checking for FT_Init_FreeType in -lfreetype" >&5
@@ -11210,35 +11197,23 @@
 echo "${ECHO_T}no" >&6
 fi
 
-echo "$as_me:$LINENO: checking for aRts Sound server" >&5
-echo $ECHO_N "checking for aRts Sound server... $ECHO_C" >&6
-if test "${ac_cv_c_artsserver+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test x$ARTSCCONFIG = x -o x$ARTSCCONFIG = x'"$ARTSCCONFIG"';
-        then
-            ac_cv_c_artsserver=no
-        else
-            ARTSC_CFLAGS=`$ARTSCCONFIG --cflags`
-            ARTSC_LIBS=`$ARTSCCONFIG --libs`
-            ac_cv_c_artsserver=no
-            save_CFLAGS="$CFLAGS"
-            CFLAGS="$CFLAGS $ARTSC_CFLAGS"
-            cat >conftest.$ac_ext <<_ACEOF
+if test x$ARTSCCONFIG != x -a x$ARTSCCONFIG != x'"$ARTSCCONFIG"';
+then
+    ARTSC_CFLAGS=`$ARTSCCONFIG --cflags`
+    ARTSC_LIBS=`$ARTSCCONFIG --libs`
+    save_CFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS $ARTSC_CFLAGS"
+    cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
 _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-
-             #include <artsc.h>
-
+#include <artsc.h>
 int
 main ()
 {
-
-             arts_stream_t stream;
-
+arts_stream_t stream;
   ;
   return 0;
 }
@@ -11264,8 +11239,14 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
+  ARTSLIBS=$ARTSC_LIBS
 
-            ac_cv_c_artsserver=yes
+         ARTSINCL=$ARTSC_CFLAGS
+
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_ARTS 1
+_ACEOF
 
 else
   echo "$as_me: failed program was:" >&5
@@ -11273,24 +11254,7 @@
 
 fi
 rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-            CFLAGS="$save_CFLAGS"
-        fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_artsserver" >&5
-echo "${ECHO_T}$ac_cv_c_artsserver" >&6
-
-if test "$ac_cv_c_artsserver" = "yes"
-then
-    ARTSLIBS=$ARTSC_LIBS
-
-    ARTSINCL=$ARTSC_CFLAGS
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ARTS 1
-_ACEOF
-
+    CFLAGS="$save_CFLAGS"
 fi
 
 ALSALIBS=""
diff --git a/configure.ac b/configure.ac
index 6275b63..ccebdb7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -416,20 +416,15 @@
 AC_CHECK_HEADERS(unicode/ubidi.h)
 if test "$ac_cv_header_unicode_ubidi_h" = "yes"
 then
-    AC_CACHE_CHECK([whether we can statically link the ICU libraries], ac_cv_lib_icu,
-        [saved_libs="$LIBS"
-         ICU_LIB_DIR="${ICU_LIB_DIR-/usr/lib}"
-         ICUUC_LIB="${ICUUC_LIB-$ICU_LIB_DIR/libicuuc.a}"
-         ICUDATA_LIB="${ICUDATA_LIB-$ICU_LIB_DIR/libicudata.a}"
-         LIBS="$LIBS $ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s"
-         AC_TRY_LINK([#include <unicode/ubidi.h>],[ubidi_open()],
-                     [ac_cv_lib_icu="yes"],[ac_cv_lib_icu="no"])
-        LIBS="$saved_libs"])
-    if test "$ac_cv_lib_icu" = "yes"
-    then
-        AC_DEFINE(HAVE_ICU,1,[Define to 1 if the ICU libraries are installed])
-        AC_SUBST(ICULIBS,"$ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s")
-    fi
+    saved_libs="$LIBS"
+    ICU_LIB_DIR="${ICU_LIB_DIR-/usr/lib}"
+    ICUUC_LIB="${ICUUC_LIB-$ICU_LIB_DIR/libicuuc.a}"
+    ICUDATA_LIB="${ICUDATA_LIB-$ICU_LIB_DIR/libicudata.a}"
+    LIBS="$LIBS $ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s"
+    AC_TRY_LINK([#include <unicode/ubidi.h>],[ubidi_open()],
+                [AC_DEFINE(HAVE_ICU,1,[Define to 1 if the ICU libraries are installed])
+                 AC_SUBST(ICULIBS,"$ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s")])
+    LIBS="$saved_libs"
 fi
 
 dnl **** Check for FreeType 2 ****
@@ -605,33 +600,17 @@
 
 dnl **** Check for aRts Sound Server ****
 AC_PATH_PROG(ARTSCCONFIG, artsc-config)
-AC_CACHE_CHECK([for aRts Sound server],
-        ac_cv_c_artsserver,
-        if test x$ARTSCCONFIG = x -o x$ARTSCCONFIG = x'"$ARTSCCONFIG"';
-        then
-            ac_cv_c_artsserver=no
-        else
-            ARTSC_CFLAGS=`$ARTSCCONFIG --cflags`
-            ARTSC_LIBS=`$ARTSCCONFIG --libs`
-            ac_cv_c_artsserver=no
-            save_CFLAGS="$CFLAGS"
-            CFLAGS="$CFLAGS $ARTSC_CFLAGS"
-            AC_TRY_COMPILE([
-             #include <artsc.h>
-            ],[
-             arts_stream_t stream;
-            ],[
-            ac_cv_c_artsserver=yes
-            ])
-            CFLAGS="$save_CFLAGS"
-        fi)
-
-if test "$ac_cv_c_artsserver" = "yes"
+if test x$ARTSCCONFIG != x -a x$ARTSCCONFIG != x'"$ARTSCCONFIG"';
 then
-    AC_SUBST(ARTSLIBS, $ARTSC_LIBS)
-    AC_SUBST(ARTSINCL, $ARTSC_CFLAGS)
-
-    AC_DEFINE(HAVE_ARTS, 1, [Define if you have ARTS sound server])
+    ARTSC_CFLAGS=`$ARTSCCONFIG --cflags`
+    ARTSC_LIBS=`$ARTSCCONFIG --libs`
+    save_CFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS $ARTSC_CFLAGS"
+    AC_TRY_COMPILE([#include <artsc.h>],[arts_stream_t stream;],
+        [AC_SUBST(ARTSLIBS, $ARTSC_LIBS)
+         AC_SUBST(ARTSINCL, $ARTSC_CFLAGS)
+         AC_DEFINE(HAVE_ARTS, 1, [Define if you have ARTS sound server])])
+    CFLAGS="$save_CFLAGS"
 fi
 
 dnl **** Check for ALSA ****