bug-gnulib
[Top][All Lists]
Advanced

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

Re: [bug-gnulib] gnulib/gnulib-tool shell quoting problem for Solaris /b


From: Mark D. Baushke
Subject: Re: [bug-gnulib] gnulib/gnulib-tool shell quoting problem for Solaris /bin/sh
Date: Wed, 25 Jan 2006 11:47:51 -0800

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Bruno,

Bruno Haible <address@hidden> writes:

> Mark Baushke wrote:
> 
> > Okay, I tried your 'set -x' that and it appears the error message
> > happens just after the func_import () finishes executing.
> > ...
> > + echo   - invoke gl_INIT in ./configure.in.
> >   - invoke gl_INIT in ./configure.in.
> > + exit 0
> > + -
> > ../gnulib/gnulib-tool: -: not found
> 
> I'm trying this patch. Does it work for you?

Yes.

It appears that using any of

   "trap : 0 1 2 3 15"
or
   "trap '' 0 1 2 3 15" 
or
   "trap 0 1 2 3 15"

on line 1179 of gnulib-tool will fix the reported problem on my
Solaris 9 host.

The Solaris 9 man page for sh has the following to say regarding trap:

| trap [ argument n [ n2 ... ]]
|           The command argument is to be read and  executed  when
|           the  shell receives numeric or symbolic signal(s) (n).
|           (Note: argument is scanned once when the trap  is  set
|           and  once  when  the trap is taken.) Trap commands are
|           executed in order of signal  number  or  corresponding
|           symbolic  names. Any attempt to set a trap on a signal
|           that was ignored on entry  to  the  current  shell  is
|           ineffective.  An  attempt to trap on signal 11 (memory
|           fault) produces an error. If argument is  absent,  all
|           trap(s) n are reset to their original values. If argu-
|           ment is the null string, this signal is ignored by the
|           shell  and  by the commands it invokes. If n is 0, the
|           command argument is executed on exit from  the  shell.
|           The  trap  command  with no arguments prints a list of
|           commands associated with each signal number.

FWIW: a Fedora Core 3 GNU/Linux system appears to also do the right
thing with "trap 0 1 2 3 15"

Of course, it appears that an action of '-' SHOULD be accepted as it
is a part of the standard:

 http://www.opengroup.org/onlinepubs/009695399/utilities/trap.html#tag_04_146

So, I will let you folks determine the fix to apply.

        Thank you,
        -- Mark

> 
> 
> 2006-01-25  Bruno Haible  <address@hidden>
> 
>       * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
>       rid of a trap command. For Solaris sh.
>       Reported by Mark D. Baushke <address@hidden>.
> 
> *** gnulib-tool 24 Jan 2006 19:18:45 -0000      1.104
> --- gnulib-tool 25 Jan 2006 14:19:32 -0000
> ***************
> *** 1176,1182 ****
>       func_add_or_update
>     done
>     rm -rf "$tmp"
> !   trap - 0 1 2 3 15
>   
>     # Command-line invocation printed in a comment in generated 
> gnulib-cache.m4.
>     actioncmd="gnulib-tool --import"
> --- 1176,1182 ----
>       func_add_or_update
>     done
>     rm -rf "$tmp"
> !   trap : 0 1 2 3 15
>   
>     # Command-line invocation printed in a comment in generated 
> gnulib-cache.m4.
>     actioncmd="gnulib-tool --import"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFD19XnCg7APGsDnFERAgd8AJ0bLs4DBh+YPooZZpmMmZwLbgVWxwCgtPMQ
imxt/ttTK+s1M6MvGCUEFps=
=MHkA
-----END PGP SIGNATURE-----




reply via email to

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