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 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).