zsh-workers
 help / color / mirror / code / Atom feed
From: DervishD <zsh@dervishd.net>
To: Zsh-workers <zsh-workers@sunsite.dk>
Subject: Re: Libtool/zsh quoting problem
Date: Fri, 10 Feb 2006 09:46:30 +0100	[thread overview]
Message-ID: <20060210084630.GA189@DervishD> (raw)
In-Reply-To: <20060209233201.GA5875@fargo>

    Hi David :)

 * David <david@pleyades.net> dixit:
> From some time till now i was having problems compiling certaing
> packages, in particular those ones that used macros in the command
> with spaces in it. I thought it was a libtool problem, but the
> culprit seems zsh ;).

    It's not exactly a "culprit" ;) In fact zsh is behaving
correctly according to the SUS standard, as far as I know. More
below.
 
> A example, with the littlecms source (http://www.littlecms.com):
[Non relevant parts of the command stripped]
> if /bin/sh ../libtool [...] -DPACKAGE_STRING=\"lcms\ 1.15\" 
>  gcc [...] -DPACKAGE_STRING=\"lcms 1.15\" cmscnvrt.c -o .libs/cmscnvrt.o
>  gcc: 1.15": No such file or directory
[...]
> Where -DPACKAGE_STRING=\"lcms 1.15\" in the gcc command should be
> quoted to avoid the error.

    Exactly. If it is not quoted (I mean, with additional double
quotes or something like that), gcc will do the above. The problem is
that libtool may be using some bash-only construct to do the
additional quoting. That's the standard (SUS/POSIX) behaviour: by
default unquoted strings are splitted in spaces.

    But the problem is a bit more subtle ;) Look at the "libtool"
invocation: there, the space is properly quoted with a backslash
that, after that, is lost. The "gcc" invocation no longer has that
backslash.

    This may be a problem in libtool, which is not correctly
propagating that backslash, or in the makefile, which is passing that
backslash to the shell invoking libtool so it is lost (the shell
strips it after processing the command line, so if the same string is
passed, unquoted, to another command (gcc in this case), it is
interpreted as TWO arguments.
 
> Is there any option in zsh to avoid this problem?

    Not that I know of, because I think that SH_WORDSPLIT doesn't
apply here.

    I can investigate (if you want), where the problem lies and why
Bash behaves differently from zsh to see if the culprit is zsh, bash
or libtool. I recently discovered that bash was the culprit because
it violates the standard and I thought that the problem was in zsh
O:)

    Raúl Núñez de Arenas Coronado

-- 
Linux Registered User 88736 | http://www.dervishd.net
http://www.pleyades.net & http://www.gotesdelluna.net
It's my PC and I'll cry if I want to... RAmen!


  reply	other threads:[~2006-02-10  8:45 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-09 23:32 David Gómez
2006-02-10  8:46 ` DervishD [this message]
2006-02-10  9:48   ` David Gómez
2006-02-10 11:34     ` DervishD
2006-02-10 12:56       ` David Gómez
2006-02-10 14:25         ` DervishD
2006-02-10 18:27           ` David Gómez
2006-02-10 19:31             ` DervishD
2006-02-11  9:36 ` [SOLVED] Libtool/zsh quoting problem: a zsh... bug? DervishD
2006-02-11 10:21   ` Andrey Borzenkov
2006-02-11 11:06     ` DervishD
2006-02-11 11:33       ` David Gómez
2006-02-11 12:06         ` DervishD
2006-02-11 12:28       ` Andrey Borzenkov
2006-02-11 18:07         ` DervishD
2006-02-11 12:21     ` DervishD
2006-02-11 18:14     ` Wayne Davison
2006-02-11 18:22       ` DervishD
2006-02-11 18:58         ` Wayne Davison
2006-02-11 19:42       ` Bart Schaefer
2006-02-12  4:50         ` Wayne Davison
2006-02-12 20:28           ` Peter Stephenson
2006-02-13 10:56             ` Peter Stephenson
2006-02-12  7:46       ` Andrey Borzenkov
2006-02-12  7:54         ` Andrey Borzenkov
2006-02-12 20:26       ` Peter Stephenson
2006-02-13 10:53         ` PATCH: fixing ${1+"$@"} when word-splitting Wayne Davison
2006-02-13 11:34           ` Peter Stephenson
2006-02-13 17:43             ` Wayne Davison
2006-02-13 18:08               ` Peter Stephenson
2006-02-13 19:00                 ` Wayne Davison
2006-02-13 19:33                   ` Wayne Davison
2006-02-13 19:33                   ` Peter Stephenson
2006-02-13 20:11                     ` Wayne Davison
2006-02-13 19:48               ` Wayne Davison
2006-02-13 11:40           ` DervishD
2006-02-14  7:14           ` Wayne Davison
2006-02-15 10:31             ` Wayne Davison
2006-02-15 11:35             ` Wayne Davison

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060210084630.GA189@DervishD \
    --to=zsh@dervishd.net \
    --cc=zsh-workers@sunsite.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).