qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Bug 636315] [NEW] configure and build errors on Solari


From: blueswirl
Subject: Re: [Qemu-devel] [Bug 636315] [NEW] configure and build errors on Solaris 10 due to /bin/sh usage
Date: Tue, 14 Sep 2010 16:34:29 -0000

On Sun, Sep 12, 2010 at 10:02 PM, Andreas Färber <address@hidden> wrote:
> Am 12.09.2010 um 23:05 schrieb Blue Swirl:
>
>> On Sun, Sep 12, 2010 at 5:58 PM, Andreas Färber <address@hidden>
>> wrote:
>>>
>>> Am 12.09.2010 um 19:47 schrieb Blue Swirl:
>>>>
>>>>       nfields=$((nfields + 1))
>>>
>>> ./tracetool: syntax error at line 53: `nfields=$' unexpected
>>
>> That looks like fully standards compliant, so Solaris' /bin/sh is not.
>> Can you try what happens with /usr/xpg4/bin/sh?
>
> Works fine! Must've done something wrong when testing that earlier today.
>
> configure, create_config and tracetool with your fix are silent when
> /usr/xpg4/bin is in the $PATH.
> If you commit it, we can close this ticket. Thanks for your help, Blue.

Does /usr/xpg4/bin/sh work without the patch?

-- 
configure and build errors on Solaris 10 due to /bin/sh usage
https://bugs.launchpad.net/bugs/636315
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.

Status in QEMU: New

Bug description:
Running `LANG=C LC_ALL=C ./configure --prefix=... --install=/usr/ucb/install` 
on Solaris 10 amd64 results in the following errors:

./configure: bad substitution
./configure: !: not found
./configure: curl-config: not found
./configure: curl-config: not found

Error: invalid trace backend
Please choose a supported trace backend.


Unfortunately it doesn't print the line numbers of the errors. It must be 
somewhere after the check for `install`.

The first few can be resolved by running `bash ./configure ...` instead. 

The "check if trace backend exists" hardcodes `sh "$source_path/tracetool" ...` 
in configure. Replacing sh with bash makes it work.

`gmake` complains "Makefile:331: no file name for -include", which is a filter 
for *.d files.
`create_config` gets the 'bad substitution' error as well. Replacing sh with 
bash in rules.mak works.
etc.

To sum it up,
a) there are shell script incompatibilities with Solaris 10's /bin/sh shell, and
b) hardcoding 'sh' in configure or Makefiles seems like a bad idea.

QEMU Git 73d7434279e3905164afd02360eebe4b43c7fa (ESP: fix ESP DMA access...)

$ uname -a
SunOS sonnengoettin 5.10 Generic_142901-03 i86pc i386 i86pc

# No banner output for /bin/sh

$ bash --version
GNU bash, version 3.00.16(1)-release (i386-pc-solaris2.10)
Copyright (C) 2004 Free Software Foundation, Inc.





reply via email to

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