misbuilds when /bin/sh -> bash

Bug #299931 reported by Colin Watson
2
Affects Status Importance Assigned to Milestone
libtool (Ubuntu)
Triaged
Low
Unassigned

Bug Description

Binary package hint: libtool

When /bin/sh is a symlink to bash, libtool finds that /bin/sh supports the features it needs and hence hardcodes it as the #! line of /usr/bin/libtool. If /bin/sh is later changed to be a symlink to dash, this breaks because dash does not support "var+=value" syntax. This broke dictd during the Ubuntu armel bootstrap:

  http://launchpadlibrarian.net/19676627/buildlog_ubuntu-jaunty-armel.dictd_1.10.11.dfsg-2ubuntu2_FAILEDTOBUILD.txt.gz

libtool --tag=CC --mode=link gcc -o dict -static \
  dict.o net.o clientscan.o clientparse.o md5.o wcrtomb.o wctomb.o mbrlen.o mbrtowc.o mbstowcs.o mbtowc.o iswspace.o iswalnum.o towlower.o strlcpy.o strlcat.o parse.o \
   -Wl,-z,defs -Wl,--as-needed -Llibmaa -lmaa -ldl -lz
eval: 1: libtool_args+=: not found
[...]

I worked around this as follows:

libtool (2.2.4-0ubuntu5) jaunty; urgency=low

  * Force /bin/bash as the shell for the generated libtool script, even if
    /bin/sh happens to be bash on the build system.

 -- Colin Watson <email address hidden> Wed, 19 Nov 2008 12:26:34 +0000

... but it perhaps needs a proper fix in libtool to detect this at run-time.

This sort of reminds me of http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=447022, but I thought we already had the relevant fakeroot fix in Ubuntu.

Changed in libtool (Ubuntu):
status: New → Confirmed
importance: Undecided → Low
status: Confirmed → Triaged
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.