[Expat-discuss] buildconf.sh / removing autotools warnings

David Byron dbyron at dbyron.com
Mon Jun 22 21:48:31 CEST 2009


I grabbed source from cvs with a goal of building expat with current
autotools (specifically libtool from cvs, currently called 2.2.7a).

I see there's a buildconf.sh script which may no longer be necessary if
people run autoreconf.  I tried running it but got this output:

dbyron at tuneup:~/src/expat/expat> ./buildconf.sh
found: autoconf version 2.63 (ok)
./buildconf.sh: line 41: test: 3105 2009-06-19) 2: integer expression
expected
found: libtool version 1.3105 2009-06-19) 2.2.7a
2003

2009 Free Software Foundation, Inc. (ok)
Copying libtool helper files ...
Using libtool.m4 from /home/dbyron/share/aclocal/libtool.m4.
Creating expat_config.h.in ...
configure.in:57: warning: LTOPTIONS_VERSION is m4_require'd but not
m4_defun'd
conftools/libtool.m4:102: LT_INIT is expanded from...
conftools/libtool.m4:105: AC_PROG_LIBTOOL is expanded from...
configure.in:57: the top level
configure.in:57: warning: LTSUGAR_VERSION is m4_require'd but not m4_defun'd
configure.in:57: warning: LTVERSION_VERSION is m4_require'd but not
m4_defun'd
configure.in:57: warning: LTOBSOLETE_VERSION is m4_require'd but not
m4_defun'd
Creating configure ...
configure.in:57: warning: LTOPTIONS_VERSION is m4_require'd but not
m4_defun'd
conftools/libtool.m4:102: LT_INIT is expanded from...
conftools/libtool.m4:105: AC_PROG_LIBTOOL is expanded from...
configure.in:57: the top level
configure.in:57: warning: LTSUGAR_VERSION is m4_require'd but not m4_defun'd
configure.in:57: warning: LTVERSION_VERSION is m4_require'd but not
m4_defun'd
configure.in:57: warning: LTOBSOLETE_VERSION is m4_require'd but not
m4_defun'd
configure.in:56: error: possibly undefined macro: AC_LIBTOOL_WIN32_DLL
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
configure:3025: error: possibly undefined macro: m4_ifval
configure:7359: error: possibly undefined macro: _LT_SET_OPTIONS
configure:7359: error: possibly undefined macro: LT_INIT
dbyron at tuneup:~/src/expat/expat> echo $?
0

I went ahead and ran autoreconf -fvi (on a fresh cvs checkout) to see what
would happen:

It works better, but still has some warnings:

libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and
libtoolize: rerunning libtoolize, to keep the correct libtool macros
in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.

The warning about Makefile.am I consider a libtool bug since expat doesn't
use a file with that name.  The warning about AC_CONFIG_MACRO_DIR is easy to
make go away.  autoconf's NEWS file says it was introduced in autoconf 2.58
(released in 2003) so it means changing the AC_PREREQ call but hopefully
that's OK.

Here's a patch to configure.in to pull this off.  I didn't delete
buildconf.sh, nor did I modify make-release.sh to call autoreconf instead of
buildconf.sh.  If people are interested, I'll go ahead with that part.

-DB

dbyron at tuneup:~/src/expat/expat> cvs diff -u configure.in
Index: configure.in
===================================================================
RCS file: /cvsroot/expat/expat/configure.in,v
retrieving revision 1.46
diff -u -r1.46 configure.in
--- configure.in 3 Sep 2007 17:26:20 -0000 1.46
+++ configure.in 22 Jun 2009 19:47:56 -0000
@@ -10,8 +10,8 @@
 dnl   in the file COPYING that comes with this distribution.
 dnl

-dnl Ensure that Expat is configured with autoconf 2.52 or newer
-AC_PREREQ(2.52)
+dnl Ensure that Expat is configured with autoconf 2.58 or newer
+AC_PREREQ(2.58)

 dnl Get the version number of Expat, using m4's esyscmd() command to run
 dnl the command at m4-generation time. This allows us to create an m4
@@ -31,6 +31,7 @@

 AC_CONFIG_SRCDIR(Makefile.in)
 AC_CONFIG_AUX_DIR(conftools)
+AC_CONFIG_MACRO_DIR([m4])


 dnl



More information about the Expat-discuss mailing list