diff --git a/test/run-tests.sh b/test/run-tests.sh
index 132434019f2be4ec55f5e8e47b3b1c1f18ee6a4e..61244645a163beaa5e2c9a8bd82a5168b4e3cd3d 100755
--- a/test/run-tests.sh
+++ b/test/run-tests.sh
@@ -270,9 +270,9 @@ extract_tagged_asdf () {
             1.*|2.0*|2.2[0-6]|2.26.61)
                 git show ${tag}:asdf.lisp > $file ;;
             2.2*|3.*)
-                mkdir -p build/old/
+                mkdir -p build/old/build
                 git archive ${tag} Makefile '*.lisp' | (cd build/old/ ; tar xf -)
-                cd build/old ; make
+                make -C build/old
                 mv build/old/build/asdf.lisp build/asdf-${tag}.lisp
                 rm -rf build/old
                 ;;