diff --git a/var/spack/repos/builtin/packages/autoconf/package.py b/var/spack/repos/builtin/packages/autoconf/package.py
index 9e95af8a95a8833677d98959a74eb664f2294f17..28be74890c89a1232753af1c4d8d9f63826227d6 100644
--- a/var/spack/repos/builtin/packages/autoconf/package.py
+++ b/var/spack/repos/builtin/packages/autoconf/package.py
@@ -3,7 +3,7 @@
 #
 # SPDX-License-Identifier: (Apache-2.0 OR MIT)
 
-from spack import *
+import re
 
 
 class Autoconf(AutotoolsPackage, GNUMirrorPackage):
@@ -24,6 +24,17 @@ class Autoconf(AutotoolsPackage, GNUMirrorPackage):
 
     build_directory = 'spack-build'
 
+    executables = [
+        '^autoconf$', '^autoheader$', '^autom4te$', '^autoreconf$',
+        '^autoscan$', '^autoupdate$', '^ifnames$'
+    ]
+
+    @classmethod
+    def determine_version(cls, exe):
+        output = Executable(exe)('--version', output=str, error=str)
+        match = re.search(r'\(GNU Autoconf\)\s+(\S+)', output)
+        return match.group(1) if match else None
+
     def patch(self):
         # The full perl shebang might be too long; we have to fix this here
         # because autom4te is called during the build