[OpenAFS-devel] Autoconf 2.60 requirement

Andrew Deason adeason@sinenomine.net
Thu, 6 May 2010 18:06:07 -0500


A little while ago while implementing some positional I/O enhancements
for the volume package, the non-Windows build system started using
AC_USE_SYSTEM_EXTENSIONS. (In the specific case of the positional I/O
stuff, it was for pread/pwrite prototypes, but it does other things.)
AC_USE_SYSTEM_EXTENSIONS only exists in autoconf 2.60 and newer.

For me, and the few people discussing this at the time, this isn't much
of a problem; usually we run regen.sh on systems with newish autoconf's.
But doing this means that running regen.sh will not work (by default)
on, for example, RHEL5. Debian Lenny is fine, as is at least OS X 10.6,
and Solaris with OpenCSW. I assume modern Fedora, OpenSuSE (not SLES),
OpenSolaris, etc are fine, too.

Running regen.sh can occur on any machine before you build, but it can
get a bit annoying if you're used to just pulling from git and building
on systems with older autoconf's. This email serves to publicly notify
people that this has happened, and to welcome any objections people may
have. This probably should have been sent out before we made the move to
require 2.60, but when AC_USE_SYSTEM_EXTENSIONS was first added, I
didn't realize it was a new autoconf addition. 'Oops'

Although right now git master requires autoconf 2.60 to regen, it's
still pretty easy to switch it back. If nobody objects, we're going to
keep using more autoconf features that require 2.60, so it will become
more difficult to switch it back over time. So, if you build on
non-Windows directly from git often, and this bothers you, it would be
best to speak up now before we can't change it back.

-- 
Andrew Deason
adeason@sinenomine.net