Hi, One thing is annoying about gnulib-tool's --libtool option: It defaults to using --libtool if the configure.ac invokes AC_PROG_LIBTOOL. That's a good guess, but it should be able to override it. Currently, the only way to do so it to hand-edit gnulib-cache.m4; it is not possible from the command line.
GNU libiconv has an AC_PROG_LIBTOOL but needs to build its gnulib portion without libtool, because the installation rules for the 'iconv' program are special and need to access srclib/libicrt.a directly. I'm adding an option --no-libtool. 2006-07-29 Bruno Haible <[EMAIL PROTECTED]> * gnulib-tool (func_usage): Document option --no-libtool. Handle option --no-libtool. (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update for changed semantics of $libtool variable. (func_import): Likewise. If libtool is not used, show this through an option --no-libtool. (func_create_testdir): Update. 2006-07-29 Bruno Haible <[EMAIL PROTECTED]> * gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option. *** gnulib-tool.bak 2006-07-29 15:29:02.000000000 +0200 --- gnulib-tool 2006-07-30 01:14:26.000000000 +0200 *************** *** 135,140 **** --- 135,141 ---- --lgpl Abort if modules aren't available under the LGPL. Also modify license template from GPL to LGPL. --libtool Use libtool rules. + --no-libtool Don't use libtool rules. --macro-prefix=PREFIX Specify the prefix of the macros 'gl_EARLY' and 'gl_INIT'. Default is 'gl'. --no-changelog don't update or create ChangeLog files *************** *** 258,264 **** # - inctests true if --with-tests was given, blank otherwise # - avoidlist list of modules to avoid, from --avoid # - lgpl true if --lgpl was given, blank otherwise ! # - libtool true if --libtool was given, blank otherwise # - macro_prefix from --macro-prefix # - autoconf_minversion minimum supported autoconf version # - do_changelog false if --no-changelog was given, : otherwise --- 259,266 ---- # - inctests true if --with-tests was given, blank otherwise # - avoidlist list of modules to avoid, from --avoid # - lgpl true if --lgpl was given, blank otherwise ! # - libtool true if --libtool was given, false if --no-libtool was ! # given, blank otherwise # - macro_prefix from --macro-prefix # - autoconf_minversion minimum supported autoconf version # - do_changelog false if --no-changelog was given, : otherwise *************** *** 405,410 **** --- 407,415 ---- --libtool ) libtool=true shift ;; + --no-libtool ) + libtool=false + shift ;; --macro-prefix ) shift if test $# = 0; then *************** *** 835,845 **** # Input: # - modules list of modules, including dependencies # - libname library name ! # - libtool true if libtool will be used, blank otherwise # - actioncmd (optional) command that will reproduce this invocation func_emit_lib_Makefile_am () { ! if test -n "$libtool"; then libext=la perhapsLT=LT else --- 840,850 ---- # Input: # - modules list of modules, including dependencies # - libname library name ! # - libtool true if libtool will be used, false or blank otherwise # - actioncmd (optional) command that will reproduce this invocation func_emit_lib_Makefile_am () { ! if test "$libtool" = true; then libext=la perhapsLT=LT else *************** *** 909,921 **** # Input: # - modules list of modules, including dependencies # - libname library name ! # - libtool true if libtool will be used, blank otherwise # - sourcebase relative directory containing lib source code # - m4base relative directory containing autoconf macros # - testsbase relative directory containing unit test code func_emit_tests_Makefile_am () { ! if test -n "$libtool"; then libext=la else libext=a --- 914,926 ---- # Input: # - modules list of modules, including dependencies # - libname library name ! # - libtool true if libtool will be used, false or blank otherwise # - sourcebase relative directory containing lib source code # - m4base relative directory containing autoconf macros # - testsbase relative directory containing unit test code func_emit_tests_Makefile_am () { ! if test "$libtool" = true; then libext=la else libext=a *************** *** 996,1003 **** # - inctests true if --with-tests was given, blank otherwise # - avoidlist list of modules to avoid, from --avoid # - lgpl true if library's license shall be LGPL, blank otherwise ! # - libtool true if libtool will be used, blank otherwise ! # - guessed_libtool true if the configure.ac file uses libtool, blank otherwise # - macro_prefix prefix of gl_EARLY, gl_INIT macros to use # - autoconf_minversion minimum supported autoconf version # - doit : if actions shall be executed, false if only to be printed --- 1001,1009 ---- # - inctests true if --with-tests was given, blank otherwise # - avoidlist list of modules to avoid, from --avoid # - lgpl true if library's license shall be LGPL, blank otherwise ! # - libtool true if --libtool was given, false if --no-libtool was ! # given, blank otherwise ! # - guessed_libtool true if the configure.ac file uses libtool, false otherwise # - macro_prefix prefix of gl_EARLY, gl_INIT macros to use # - autoconf_minversion minimum supported autoconf version # - doit : if actions shall be executed, false if only to be printed *************** *** 1017,1022 **** --- 1023,1029 ---- cached_macro_prefix= cached_files= if test -f "$destdir"/$m4base/gnulib-cache.m4; then + cached_libtool=false my_sed_traces=' s,#.*$,, s,^dnl .*$,, *************** *** 1376,1383 **** if test -n "$lgpl"; then actioncmd="$actioncmd --lgpl" fi ! if test -n "$libtool"; then actioncmd="$actioncmd --libtool" fi actioncmd="$actioncmd --macro-prefix=$macro_prefix" actioncmd="$actioncmd `echo $specified_modules`" --- 1383,1392 ---- if test -n "$lgpl"; then actioncmd="$actioncmd --lgpl" fi ! if test "$libtool" = true; then actioncmd="$actioncmd --libtool" + else + actioncmd="$actioncmd --no-libtool" fi actioncmd="$actioncmd --macro-prefix=$macro_prefix" actioncmd="$actioncmd `echo $specified_modules`" *************** *** 1431,1437 **** echo "gl_TESTS_BASE([$testsbase])" echo "gl_LIB([$libname])" test -z "$lgpl" || echo "gl_LGPL" ! test -z "$libtool" || echo "gl_LIBTOOL" echo "gl_MACRO_PREFIX([$macro_prefix])" ) > "$tmpfile" if test -f "$destdir"/$m4base/gnulib-cache.m4; then --- 1440,1448 ---- echo "gl_TESTS_BASE([$testsbase])" echo "gl_LIB([$libname])" test -z "$lgpl" || echo "gl_LGPL" ! if test "$libtool" = true; then ! echo "gl_LIBTOOL" ! fi echo "gl_MACRO_PREFIX([$macro_prefix])" ) > "$tmpfile" if test -f "$destdir"/$m4base/gnulib-cache.m4; then *************** *** 1495,1504 **** echo "# \"Check for header files, types and library functions\"." echo "AC_DEFUN([${macro_prefix}_INIT]," echo "[" ! if test -z "$libtool"; then ! echo " AM_CONDITIONAL([GL_COND_LIBTOOL], [false])" ! else echo " AM_CONDITIONAL([GL_COND_LIBTOOL], [true])" fi if test "$auxdir" != "build-aux"; then sed_replace_build_aux=' --- 1506,1515 ---- echo "# \"Check for header files, types and library functions\"." echo "AC_DEFUN([${macro_prefix}_INIT]," echo "[" ! if test "$libtool" = true; then echo " AM_CONDITIONAL([GL_COND_LIBTOOL], [true])" + else + echo " AM_CONDITIONAL([GL_COND_LIBTOOL], [false])" fi if test "$auxdir" != "build-aux"; then sed_replace_build_aux=' *************** *** 1518,1524 **** | sed -e '/^$/d;' -e 's/^/ /' \ -e 's/AM_GNU_GETTEXT(\[external\])/dnl you must add AM_GNU_GETTEXT([external]) or similar to configure.ac./' \ -e "$sed_replace_build_aux" ! if test "$module" = 'alloca' && test -n "$libtool"; then echo 'changequote(,)dnl' echo 'LTALLOCA=`echo "$ALLOCA" | sed '"'"'s/\.[^.]* /.lo /g;s/\.[^.]*$/.lo/'"'"'`' echo 'changequote([, ])dnl' --- 1529,1535 ---- | sed -e '/^$/d;' -e 's/^/ /' \ -e 's/AM_GNU_GETTEXT(\[external\])/dnl you must add AM_GNU_GETTEXT([external]) or similar to configure.ac./' \ -e "$sed_replace_build_aux" ! if test "$module" = 'alloca' && test "$libtool" = true; then echo 'changequote(,)dnl' echo 'LTALLOCA=`echo "$ALLOCA" | sed '"'"'s/\.[^.]* /.lo /g;s/\.[^.]*$/.lo/'"'"'`' echo 'changequote([, ])dnl' *************** *** 1748,1757 **** echo "gl_LOCK" echo fi ! if test -z "$libtool"; then ! echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [false])" ! else echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [true])" fi if test "$auxdir" != "build-aux"; then sed_replace_build_aux=' --- 1759,1768 ---- echo "gl_LOCK" echo fi ! if test "$libtool" = true; then echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [true])" + else + echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [false])" fi if test "$auxdir" != "build-aux"; then sed_replace_build_aux=' *************** *** 1829,1838 **** echo "gl_LOCK" echo fi ! if test -z "$libtool"; then ! echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [false])" ! else echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [true])" fi if test "$auxdir" != "build-aux"; then sed_replace_build_aux=' --- 1840,1849 ---- echo "gl_LOCK" echo fi ! if test "$libtool" = true; then echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [true])" + else + echo "AM_CONDITIONAL([GL_COND_LIBTOOL], [false])" fi if test "$auxdir" != "build-aux"; then sed_replace_build_aux=' *************** *** 1976,1982 **** # Analyze configure.ac. guessed_auxdir="." ! guessed_libtool= my_sed_traces=' s,#.*$,, s,^dnl .*$,, --- 1987,1993 ---- # Analyze configure.ac. guessed_auxdir="." ! guessed_libtool=false my_sed_traces=' s,#.*$,, s,^dnl .*$,, *** doc/gnulib-tool.texi.bak 2006-07-11 13:54:17.000000000 +0200 --- doc/gnulib-tool.texi 2006-07-30 01:16:31.000000000 +0200 *************** *** 289,295 **** @item gl_LIBTOOL The presence of this macro corresponds to the @samp{--libtool} command line ! argument. It takes no arguments. @item gl_MACRO_PREFIX The argument is the prefix to use for macros in the @file{gnulib-comp.m4} --- 289,296 ---- @item gl_LIBTOOL The presence of this macro corresponds to the @samp{--libtool} command line ! argument and to the absence of the @samp{--no-libtool} command line argument. ! It takes no arguments. @item gl_MACRO_PREFIX The argument is the prefix to use for macros in the @file{gnulib-comp.m4}