qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] buildbot failure in qemu on disable_kvm_x86_64_debian_5


From: Stefan Weil
Subject: Re: [Qemu-devel] buildbot failure in qemu on disable_kvm_x86_64_debian_5_0
Date: Mon, 04 Jul 2011 18:33:10 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110424 Thunderbird/3.1.10

Am 04.07.2011 11:21, schrieb Alexander Graf:

On 04.07.2011, at 07:51, Stefan Weil wrote:

Am 04.07.2011 06:23, schrieb Stefan Hajnoczi:
On Mon, Jul 4, 2011 at 12:47 AM, Alexander Graf <address@hidden> wrote:

On 04.07.2011, at 02:04, address@hidden wrote:

The Buildbot has detected a new failure on builder disable_kvm_x86_64_debian_5_0 while building qemu.
Full details are available at:
http://buildbot.b1-systems.de/qemu/builders/disable_kvm_x86_64_debian_5_0/builds/148

Buildbot URL: http://buildbot.b1-systems.de/qemu/

Buildslave for this Build: b1_qemu_1

Build Reason: The Nightly scheduler named 'nightly_disable_kvm' triggered this build
Build Source Stamp: [branch master] HEAD
Blamelist:

BUILD FAILED: failed compile

In file included from /usr/include/png.h:438,
from ui/vnc-enc-tight.c:40:
/usr/include/pngconf.h:326: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token /usr/include/pngconf.h:327: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'include'
make: *** [ui/vnc-enc-tight.o] Error 1

program finished with exit code 2


Not sure what exactly is missing, but the last change in that code was from Stefan Weil (2fb0c09f4ff036f68474277ed4edc036f6529de8).

Daniel,
Would it be possible to post the contents of /usr/include/pngconf.h
from b1_qemu_1? I checked my local copy and I don't understand these
compiler errors. Perhaps you have a different version of the file.

Thanks,
Stefan

The compiler errors come again from the setjmp check in pngconf.h:

__pngconf.h__ in libpng already includes setjmp.h;
__dont__ include it again.;

The buildbot runs Debian Lenny which includes an old version of libpng.
That version does not use PNG_SKIP_SETJMP_CHECK to skip the setjmp check.
Defining PNG_SETJMP_NOT_SUPPORTED might help with this
version, but I still have to test that.

Updating the buildbot to Debian Squeeze would also work.

So it's a real bug and a good thing the buildbot is running on Lenny. Maybe we should add the define and #include setjmp.h to configure, so at least that one fails when compilation wouldn't work either?


Alex

It's a real bug, or at least an incompatibility with libpng.
It can be fixed in several ways, for example these:

1 Don't use libpng because it restricts usage of setjmp.h
  and raises confusing compiler errors instead of a clear #error.
  Code which needs libpng would have to be removed.

2 Don't use libpng if it fails to accepts the current code
  (setjmp.h before png.h). This needs a small modification
  of the libpng check in configure.

3 Define PNG_SETJMP_NOT_SUPPORTED, so Debian Lenny's libpng
  works, too. Enhancing the libpng in check in configure
  would be reasonable to avoid more surprises with other
  variants of libpng.

4 Remove setjmp.h from qemu-common.h. I expected that I would
  have to add setjmp.h in some source files after this operation,
  but was surprised that this was not needed.

I suggest solution 4 because it is simple, and it also avoids
an unnecessary inclusion of setjmp.h in nearly all compiler
invocations. Optionally, commit 2fb0c09f4ff036f68474277ed4edc036f6529de8
can be reverted then to detect any use of setjmp.h before png.h.

Regards,
Stefan




reply via email to

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