For users that have an old style configure.in without AC_CONFIG_MACRO_DIR, and who don't use Automake (hence no `ACLOCAL_AMFLAGS = -I m4'), libtoolize currently refuses to copy any of libtool's Autoconf macros. This changeset reverts to the 1.5.x behaviour of dropping them in the current directory in that case.
I've also added another diagnostic that will remind the user that modern autoconfiscated projects should use AC_CONFIG_MACRO_DIR to keep these macros in a subdirectory. libtoolize.m4sh | 19 +++++++++++++++---- 1 files changed, 15 insertions(+), 4 deletions(-) Index: libtool--devo--1.0/ChangeLog from Gary V. Vaughan <[EMAIL PROTECTED]> * libtoolize.m4sh (func_scan_files): Support projects that have upgraded libtool, but still use an old autoconf. When the libtool macros are not copied (because of missing ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree for files to manually copy into acinclude.m4 or aclocal.m4. Index: libtool--devo--1.0/libtoolize.m4sh =================================================================== --- libtool--devo--1.0.orig/libtoolize.m4sh +++ libtool--devo--1.0/libtoolize.m4sh @@ -368,7 +368,7 @@ func_scan_files () s,^.*AC_CONFIG_AUX_DIR([[[ ]*\([^])]]*\).*$,auxdir=\1,; p; }; /AC_CONFIG_MACRO_DIR(/ { - s,^.*AC_CONFIG_MACRO_DIR([[[ ]*\([^])]]*\).*$,m4dir=\1,; p; + s,^.*AC_CONFIG_MACRO_DIR([[[ ]*\([^])]]*\).*$,macrodir=\1,; p; }; /A[[CM]]_PROG_LIBTOOL/ { s,^.*$,seen_libtool=:,; p; }; /LT_INIT/ { s,^.*$,seen_libtool=:,; p; }; @@ -421,6 +421,7 @@ func_scan_files () my_sed_aclocal_flags='/^[[ ]]*ACLOCAL_[[A-Z_]]*FLAGS[[ ]]*=/ { s,^[[^=]]*=[[ ]]*\(.*\), \1,; q; }; d' + m4dir="$macrodir" if test ! -n "$m4dir" && test -f Makefile.am; then my_m4dir_is_next=false for arg in `$SED "$my_sed_aclocal_flags" Makefile.am`; do @@ -629,11 +630,11 @@ func_serial_update () # Do this after the copy for hand maintained `aclocal.m4', incase # it has `m4_include([DESTFILE])', so the copy effectively already # updated `aclocal.m4'. - $use_aclocal || if test -f aclocal.m4; then + if test -f aclocal.m4; then func_serial_max \ "$my_src_serial" `func_serial aclocal.m4 "$my_macro_regex"` test "X$my_src_serial" = "X$func_serial_max_result" \ - && func_echo "You should add the contents of \'$my_destfile' to \`aclocal.m4'." + && func_echo "You should add the contents of \`$my_destfile' to \`aclocal.m4'." fi return $my_return_status @@ -948,9 +949,19 @@ func_nonemptydir_p () func_copy_some_files "$pkgmacro_files" "$aclocaldir" \ "$m4dir" func_serial_update else - func_verbose "AC_CONFIG_MACRO_DIR not defined, not copying libtool macro files." + $opt_quiet || func_echo "You should add the contents of \`$aclocaldir/libtool.m4' to \`aclocal.m4'." fi + # Suggest modern idioms for storing autoconf macros: + $opt_quiet || \ + if test -z "$macrodir$ltdldir" && $seen_autoconf; then + if test x"$m4dir" = x.; then + func_echo "add \`AC_CONFIG_MACRO_DIR([m4])' to $configure_ac to store autoconf macros" + else + func_echo "consider adding \`AC_CONFIG_MACRO_DIR([$m4dir])'to $configure.ac" + fi + fi + # Offer some suggestions for avoiding duplicate files in a project # that uses libltdl: if test -n "$ltdldir" && $seen_autoconf; then -- Gary V. Vaughan ())_. [EMAIL PROTECTED],gnu.org} Research Scientist ( '/ http://tkd.kicks-ass.net GNU Hacker / )= http://www.gnu.org/software/libtool Technical Author `(_~)_ http://sources.redhat.com/autobook