title: Library fails to build if "autoreconf -i" is run before ./configure
body: <p>I'm working with a tool that is supposed to simplify the build process of Unix-based apps. One of the things it does automatically is run "autoreconf -i" before doing "./configure". However, when it tries to build the <a href="http://sourceforge.net/projects/expat/" rel="nofollow">expat</a> library on OSX (Lion), the build fails:</p>
  
  <pre><code>$ tar xfz expat-2.0.1.tar.gz; cd expat-2.0.1
  $ autoreconf -i
  glibtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `conftools'.
  glibtoolize: copying file `conftools/ltmain.sh'
  glibtoolize: You should add the contents of the following files to `aclocal.m4':
  glibtoolize:   `/usr/bin/../share/aclocal/libtool.m4'
  glibtoolize:   `/usr/bin/../share/aclocal/ltoptions.m4'
  glibtoolize:   `/usr/bin/../share/aclocal/ltversion.m4'
  glibtoolize:   `/usr/bin/../share/aclocal/ltsugar.m4'
  glibtoolize:   `/usr/bin/../share/aclocal/lt~obsolete.m4'
  glibtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and
  glibtoolize: rerunning glibtoolize, to keep the correct libtool macros in-tree.
  glibtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
  $ ./configure
  (Lots of output here)
  configure: creating ./config.status
  config.status: creating Makefile
  config.status: WARNING:  Makefile.in seems to ignore the --datarootdir setting
  config.status: creating expat_config.h    
  $ make
  bin/sh ./libtool --silent --mode=compile gcc -std=gnu99 -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o lib/xmlparse.lo -c lib/xmlparse.c
  ./libtool: line 473: CDPATH: command not found
  ./libtool: line 1297: func_opt_split: command not found
  libtool: Version mismatch error.  This is libtool 2.2.10, but the
  libtool: definition of this LT_INIT comes from an older release.
  libtool: You should recreate aclocal.m4 with macros from libtool 2.2.10
  libtool: and run autoconf again.
  </code></pre>
  
  <p>On the other hand, if I don't do autoreconf first, it build just fiine:</p>
  
  <pre><code>$ cd ..; rm -r expat-2.0.1; tar xfz expat-2.0.1.tar.gz; cd expat-2.0.1
  $ ./configure
  (Lots of output here)
  configure: creating ./config.status
  config.status: creating Makefile
  config.status: creating expat_config.h    
  $ make
  /bin/sh ./libtool --silent --mode=compile gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o lib/xmlparse.lo -c lib/xmlparse.c
  /bin/sh ./libtool --silent --mode=compile gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o lib/xmltok.lo -c lib/xmltok.c
  /bin/sh ./libtool --silent --mode=compile gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o lib/xmlrole.lo -c lib/xmlrole.c
  /bin/sh ./libtool --silent --mode=link gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -no-undefined -version-info 6:2:5 -rpath /usr/local/lib  -o libexpat.la lib/xmlparse.lo lib/xmltok.lo lib/xmlrole.lo
  gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o xmlwf/xmlwf.o -c xmlwf/xmlwf.c
  gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o xmlwf/xmlfile.o -c xmlwf/xmlfile.c
  gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o xmlwf/codepage.o -c xmlwf/codepage.c
  gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -o xmlwf/unixfilemap.o -c xmlwf/unixfilemap.c
  /bin/sh ./libtool --silent --mode=link gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H  -o xmlwf/xmlwf xmlwf/xmlwf.o xmlwf/xmlfile.o xmlwf/codepage.o xmlwf/unixfilemap.o libexpat.la
  </code></pre>
  
  <p>What is "autoreconf -i" doing, and why is it causing the build to fail?</p>