[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#353693: Looking for a autotools/libtool expert: Unnecessarily linked libraries



On Sat, Mar 04, 2006 at 11:59:05AM +0100, Frank Küster wrote:
> Steve Langasek <vorlon@debian.org> wrote:

> >> >   cd texk
> >> >   libtoolize -f -c
> >> >   cp /usr/share/aclocal/libtool.m4 libtool.m4
> >> >   autoconf
> >
> >> > works, after editing kpathsea/withenable.ac to not try to use
> >> > AM_MAINTAINER_MODE
> [...]
> > I used current sid versions of all packages: libtool 1.5.22-2, autoconf
> > 2.59a-8.
> >
> > I did exactly what I said I did -- edit kpathsea/withenable.ac to remove the
> > AM_MAINTAINER_MODE line, then run all of the commands I listed.  What error
> > do you get?

> If I do just 

> apt-get source tetex-bin
> cd tetex-bin-3.0/texk

> and then the commands cited above, "debian/rules configure" fails even
> earlier, namely when trying to apply patch-libtool.  If I remove that
> patch from the series of patches:

Oh, yes, sorry.  I did this from within a build tree, so patch-libtool was
already applied and I merely refreshed it afterwards.

So, here's the full set of commands:

export QUILT_PATCHES=./debian/patches
quilt push patch-libtool
quilt add texk/config.* texk/kpathsea/withenable.ac texk/ltmain.sh
cd texk
perl -ni -e'print unless /AM_MAINTAINER_MODE/' kpathsea/withenable.ac
libtoolize -f -c
cp /usr/share/aclocal/libtool.m4 libtool.m4
autoconf
cd ..
quilt refresh

> and then "cd texk" and your commands, configure fails like this:

> [...]
> configuring in texk
> running /bin/sh ./configure  --prefix=/usr --enable-ipc --disable-multiplatform --enable-shared --without-dialog --without-texinfo --without-t1utils --without-dvipng --without-lcdf-typetools --without-psutils --without-dvi2tty --without-dvidvi --without-lacheck --without-musixflx --without-texi2html --with-cjkutils --with-detex --with-dtl --with-dviljk --with-seetexk --with-x --with-xdvi-x-toolkit=xaw --with-mf-x-toolkit --with-system-ncurses --with-system-zlib --with-system-pnglib --with-system-tifflib --with-system-wwwlib --with-system-t1lib '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' --srcdir=.
> checking whether make sets $(MAKE)... yes
> checking for gcc... gcc
> checking for C compiler default output file name... a.out
> checking whether the C compiler works... yes
> checking whether we are cross compiling... no
> checking for suffix of executables... 
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ANSI C... none needed
> checking for library containing strerror... none required
> checking whether ln -s works... yes
> checking for a BSD-compatible install... /usr/bin/install -c
> ./configure: line 3441: AM_MAINTAINER_MODE: command not found
> checking for loader (symbol LD)... ld
> checking for archiver (symbol AR)... ar
> checking for archiver options (symbol ARFLAGS)... rc
> checking where the main texmf tree is located... "${prefix}/share/texmf"
> ./configure: line 20631: syntax error: unexpected end of file
> configure: error: ./configure failed for texk
> make: *** [configure-stamp] Error 1

Uh... You're right.  I don't know how this worked for me before, but it
doesn't now.  There's an underquoted macro in texk/web2c/withenable.ac; the
AC_ARG_ENABLE(ipc) needs to have brackets around the commands, like so:

AC_ARG_ENABLE(ipc,
[  --enable-ipc            enable TeX's --ipc option, i.e., pipe to a program],
[if test "x$enableval" = xyes; then
  AC_DEFINE(IPC)
  # -lsocket is needed on Solaris, at least.  Maybe -lnsl on SCO, too?
  # See ac_path_xtra.
  AC_CHECK_FUNC(connect)
  if test x$ac_cv_func_connect = xno; then
    AC_CHECK_LIB(socket, connect, socketlibs="-lsocket $socketlibs")
  fi
fi]
)

But even after fixing this, tetex-bin seems to be using some obscure and
obsolete feature of autoconf 2.13 that replaces "ac_include $file" in
Makefile.in with the contents of that file in the output Makefile.  Seems
like this setup needs to be completely retooled for automake in order to
switch to modern autoconf...

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
vorlon@debian.org                                   http://www.debian.org/

Attachment: signature.asc
Description: Digital signature


Reply to: