diff --git a/ChangeLog b/ChangeLog
index 4db6a8cf7cc6d63942e484f482fc6d2adcd0c66a..0e052e0c3a2154eb32dad6ed321228559538a136 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-12-15  Niels Möller  <nisse@lysator.liu.se>
+
+	From Alon Bar-Lev:
+	* configure.ac: Check for ar program.
+	* config.make.in (AR): Use configured value.
+
 2012-12-13  Niels Möller  <nisse@lysator.liu.se>
 
 	* x86_64/sha3-permute.asm: Rewrote, to keep all state in
diff --git a/config.make.in b/config.make.in
index 58ee19c19af24edd95c0162ae5f735729436216b..f42421fd22376a3afc6cf41b29650090c8f8ee63 100644
--- a/config.make.in
+++ b/config.make.in
@@ -46,7 +46,7 @@ LIBHOGWEED_FORLINK = @LIBHOGWEED_FORLINK@
 LIBHOGWEED_LIBS = @LIBHOGWEED_LIBS@
 LIBHOGWEED_LINK = @LIBHOGWEED_LINK@
 
-AR = ar
+AR = @AR@
 ARFLAGS = cru
 AUTOCONF = autoconf
 AUTOHEADER = autoheader
diff --git a/configure.ac b/configure.ac
index e2ed52b89c91500839199410ba8fa6706c019d86..18208dcd5b62c228511784e144e63607713a3424 100644
--- a/configure.ac
+++ b/configure.ac
@@ -100,6 +100,7 @@ AC_PROG_RANLIB
 AC_CHECK_TOOL(NM, nm, strings)
 # Used only for the GNU-stack configure test.
 AC_CHECK_TOOL(OBJDUMP, objdump, false)
+AC_CHECK_TOOL(AR, ar, false)
 
 if test "x$ac_cv_prog_cc_stdc" = xno ; then
   AC_ERROR([the C compiler doesn't handle ANSI-C]) #'