From: Gerd Hoffmann <kraxel@redhat.com>
To: Christoph Hellwig <hch@lst.de>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 1/4] add byteordered types to qemu.
Date: Thu, 02 Oct 2008 16:08:05 +0200 [thread overview]
Message-ID: <48E4D5C5.8080107@redhat.com> (raw)
In-Reply-To: <20081002131753.GA7838@lst.de>
[-- Attachment #1: Type: text/plain, Size: 505 bytes --]
Christoph Hellwig wrote:
> cgcc is a drop-in wrapper that calls both gcc and sparse. So you just
> set your compiler to cgcc before configure or in the Makefile and then
> both sparse and gcc get run.
The attached configure patch enabled that in case sparse is installed.
Should also get cross-builds right. Only buildsystem stuff for now, no
bitwise annotations (yet).
Oh joy, I get sparse warnings and errors(!) for the system headers then.
Disabled the most noisy stuff for now.
Comments?
Gerd
[-- Attachment #2: qemu-sparse.diff --]
[-- Type: text/plain, Size: 1887 bytes --]
diff --git a/configure b/configure
index 9c8ed81..3f3e0f7 100755
--- a/configure
+++ b/configure
@@ -85,6 +85,7 @@ case "$cpu" in
;;
esac
gprof="no"
+sparse="yes"
bigendian="no"
mingw32="no"
EXESUF=""
@@ -286,6 +287,8 @@ for opt do
;;
--audio-drv-list=*) audio_drv_list="$optarg"
;;
+ --disable-sparse) sparse="no"
+ ;;
--disable-vnc-tls) vnc_tls="no"
;;
--disable-slirp) slirp="no"
@@ -425,6 +428,7 @@ echo " --host-cc=CC use C compiler CC [$host_cc] for dyngen etc."
echo " --make=MAKE use specified make [$make]"
echo " --install=INSTALL use specified install [$install]"
echo " --static enable static build [$static]"
+echo " --disable-sparse disable sparse checker"
echo " --disable-werror disable compilation abort on warning"
echo " --disable-sdl disable SDL"
echo " --enable-cocoa enable COCOA (Mac OS X only)"
@@ -536,6 +540,10 @@ EOF
fi
fi
+if test ! -x "$(which cgcc 2>/dev/null)"; then
+ sparse="no"
+fi
+
#
# Solaris specific configure tool chain decisions
#
@@ -1007,6 +1015,7 @@ echo "host CPU $cpu"
echo "host big endian $bigendian"
echo "target list $target_list"
echo "gprof enabled $gprof"
+echo "sparse enabled $sparse"
echo "profiler $profiler"
echo "static build $static"
echo "-Werror enabled $werror"
@@ -1156,6 +1165,11 @@ case "$cpu" in
exit 1
;;
esac
+if test "$sparse" = "yes" ; then
+ echo "CC := REAL_CC=\"\$(CC)\" cgcc" >> $config_mak
+ echo "HOST_CC := REAL_CC=\"\$(HOST_CC)\" cgcc" >> $config_mak
+ echo "CFLAGS += -Wbitwise -Wno-transparent-union -Wno-old-initializer -Wno-non-pointer-null" >> $config_mak
+fi
if test "$bigendian" = "yes" ; then
echo "WORDS_BIGENDIAN=yes" >> $config_mak
echo "#define WORDS_BIGENDIAN 1" >> $config_h
next prev parent reply other threads:[~2008-10-02 14:08 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-01 14:12 [Qemu-devel] [PATCH 1/4] add byteordered types to qemu Gerd Hoffmann
2008-10-01 14:12 ` [Qemu-devel] [PATCH 2/4] pci: add config space struct (from qemu-xen) Gerd Hoffmann
2008-10-01 14:12 ` [Qemu-devel] [PATCH 3/4] pci: add default pci subsystem id for all devices Gerd Hoffmann
2008-10-01 14:12 ` [Qemu-devel] [PATCH 4/4] pci: use pci_config_header in pci.c Gerd Hoffmann
2008-10-01 16:30 ` Anthony Liguori
2008-10-01 19:09 ` Gerd Hoffmann
2008-10-01 19:27 ` Anthony Liguori
2008-10-02 7:56 ` Gerd Hoffmann
2008-10-02 15:52 ` Anthony Liguori
2008-10-06 16:04 ` Gerd Hoffmann
2008-10-02 8:21 ` [Qemu-devel] [PATCH 1/4] add byteordered types to qemu Christoph Hellwig
2008-10-02 12:46 ` Gerd Hoffmann
2008-10-02 12:55 ` Christoph Hellwig
2008-10-02 13:15 ` Gerd Hoffmann
2008-10-02 13:17 ` Christoph Hellwig
2008-10-02 14:08 ` Gerd Hoffmann [this message]
2008-10-02 15:55 ` Anthony Liguori
2008-10-06 16:07 ` Gerd Hoffmann
-- strict thread matches above, loose matches on Subject: below --
2008-09-10 11:45 Gerd Hoffmann
2008-08-28 8:36 Gerd Hoffmann
2008-08-28 20:08 ` Anthony Liguori
2008-08-28 20:33 ` Anthony Liguori
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=48E4D5C5.8080107@redhat.com \
--to=kraxel@redhat.com \
--cc=hch@lst.de \
--cc=qemu-devel@nongnu.org \
/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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.