libtool-patches
[Top][All Lists]
Advanced

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

Re: Feature request: setting env vars for binary wrappers


From: Gary V. Vaughan
Subject: Re: Feature request: setting env vars for binary wrappers
Date: Thu, 15 Jun 2006 11:57:42 +0100
User-agent: Thunderbird 1.5.0.2 (X11/20060519)

Hallo Ralf!

Ralf Wildenhues wrote:
> * Gary V. Vaughan wrote on Thu, Jun 15, 2006 at 12:03:40PM CEST:
>> Ralf Wildenhues wrote:
>>> * Gary V. Vaughan wrote on Wed, Jun 14, 2006 at 01:11:45PM CEST:
>>>> I have no problem with the principle, but as the patch stands there are
>>>> idiosyncracies that need ironing out before it is complete.
>>> Care to list them, so this can be fixed?
>> The conceptual problems you listed yourself in the mail I replied to!
> 
> Parse error.  I described what led me to the solution I posted, and to
> pose the restrictions that the patch does pose for the user.  AFAIK the
> patch does exactly what it should, and has enough functionality to be
> useful, and fulfills exactly the request Behdad asked for.
> 
> So could you please list the technical problems you see with this patch,
> so I can fix them, if any?

Starting to add new features on this side of the 2.0 release is like
the road to hell (paved with good intentions, yet doesn't lead to
somewhere we want to be).

I don't strongly object to the patch.  However, CVS M4 achieves exactly
this in a much more elegant fashion by simply including its own wrapper
script to set the module load path for uninstalled m4 to load modules
from the build tree.  It also sanitises the error output to make writing
tests easier (something libtool wrapper scripts shouldn't do), and can
be easily extended without adding complexity to the libtool code.

m4--main--0/tests/m4.in:

  #! /bin/sh
  # @configure_input@
  # Wrapper around a non installed m4 to make it work as an installed one.

  "@abs_top_builddir@/src/m4" \
      --module-directory="@abs_top_builddir@/modules" \
      ${1+"$@"} 2>/tmp/m4-$$
  status=$?
  # Normalize stderr.
  # - If configure --disable-shared, then src/m4 is a real program,
  #   neutralize the full path display
  # - otherwise, it is a  libtool wrapper, relying on PATH to execute the
  #   actual program, either lt-m4, or m4.
  #
  # - In both cases, beware of .exe.
  sed 's,^[^:]*[lt-]*m4[.ex]*:,m4:,' /tmp/m4-$$ >&2
  rm /tmp/m4-$$

  exit $status


configure.ac:

  AC_CONFIG_FILES([tests/m4], [chmod +x tests/m4])

Cheers,
        Gary.
-- 
Gary V. Vaughan      ())_.  address@hidden,gnu.org}
Research Scientist   ( '/   http://blog.azazil.net
GNU Hacker           / )=   http://trac.azazil.net/projects/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]