From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: "Stefan Weil" <sw@weilnetz.de>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Dmitry Fleytman" <dmitry.fleytman@gmail.com>,
sheepdog@lists.wpkg.org,
"Pavel Dovgalyuk" <pavel.dovgaluk@ispras.ru>,
"Li Zhijian" <lizhijian@cn.fujitsu.com>,
"David Hildenbrand" <david@redhat.com>,
"Jeff Cody" <jcody@redhat.com>,
"Mark Cave-Ayland" <mark.cave-ayland@ilande.co.uk>,
qemu-devel@nongnu.org, "Alexander Graf" <agraf@suse.de>,
"Markus Armbruster" <armbru@redhat.com>,
"Keith Busch" <keith.busch@intel.com>,
"Max Filippov" <jcmvbkbc@gmail.com>,
"Hannes Reinecke" <hare@suse.com>,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
"Max Reitz" <mreitz@redhat.com>,
"Yongbok Kim" <yongbok.kim@mips.com>,
"Josh Durgin" <jdurgin@redhat.com>,
"Stefano Stabellini" <sstabellini@kernel.org>,
"Alberto Garcia" <berto@igalia.com>,
zhanghailiang <zhang.zhanghailiang@huawei.com>,
"Ben Warren" <ben@skyportsystems.com>,
"Stefan Berger" <stefanb@linux.vnet.ibm.com>,
"Ronnie Sahlberg" <ronniesahlberg@gmail.com>,
"Michael Roth" <mdroth@linux.vnet.ibm.com>,
"Richard W.M. Jones" <rjones@redhat.com>,
"Christian Borntraeger" <borntraeger@de.ibm.com>,
"Hervé Poussineau" <hpoussin@reactos.org>,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
"Shannon Zhao" <zhaoshenglong@huawei.com>,
"Marcel Apfelbaum" <marcel@redhat.com>,
"Liu Yuan" <namei.unix@gmail.com>,
"Richard Henderson" <rth@twiddle.net>,
"Jason Wang" <jasowang@redhat.com>,
"Artyom Tarasenko" <atar4qemu@gmail.com>,
"Alistair Francis" <alistair@alistair23.me>,
"Jiri Pirko" <jiri@resnulli.us>,
"Eduardo Habkost" <ehabkost@redhat.com>,
"Corey Minyard" <minyard@acm.org>, "Amit Shah" <amit@kernel.org>,
"Xie Changlong" <xiechanglong.d@gmail.com>,
"Riku Voipio" <riku.voipio@iki.fi>, "Peter Lieven" <pl@kamp.de>,
"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
"Fabien Chouteau" <chouteau@adacore.com>,
"Greg Kurz" <groug@kaod.org>,
"Anthony Perard" <anthony.perard@citrix.com>,
"Alex Williamson" <alex.williamson@redhat.com>,
qemu-arm@nongnu.org, "Peter Chubb" <peter.chubb@nicta.com.au>,
"Yuval Shaia" <yuval.shaia@oracle.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Zhang Chen" <zhangckid@gmail.com>,
xen-devel@lists.xenproject.org, "John Snow" <jsnow@redhat.com>,
"Fam Zheng" <famz@redhat.com>,
"David Gibson" <david@gibson.dropbear.id.au>,
"Kevin Wolf" <kwolf@redhat.com>,
kvm@vger.kernel.org, qemu-block@nongnu.org,
"Peter Crosthwaite" <crosthwaite.peter@gmail.com>,
"Hitoshi Mitake" <mitake.hitoshi@lab.ntt.co.jp>,
"Wen Congyang" <wencongyang2@huawei.com>,
qemu-s390x@nongnu.org, "Marcelo Tosatti" <mtosatti@redhat.com>,
"Laurent Vivier" <laurent@vivier.eu>,
"Juan Quintela" <quintela@redhat.com>,
"Subbaraya Sundeep" <sundeep.lkml@gmail.com>,
"Michael Walle" <michael@walle.cc>,
"Igor Mammedov" <imammedo@redhat.com>,
qemu-ppc@nongnu.org, "Cornelia Huck" <cohuck@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Andreas Färber" <afaerber@suse.de>,
"Aurelien Jarno" <aurelien@aurel32.net>,
"Philippe Mathieu-Daudé" <f4bug@amsat.org>
Subject: Re: [Qemu-devel] [PATCH] qemu: include generated files with <> and not ""
Date: Tue, 20 Mar 2018 19:49:41 +0200 [thread overview]
Message-ID: <20180320194454-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20180320173401.GG4530@redhat.com>
On Tue, Mar 20, 2018 at 05:34:01PM +0000, Daniel P. Berrangé wrote:
> On Tue, Mar 20, 2018 at 07:10:42PM +0200, Michael S. Tsirkin wrote:
> > On Tue, Mar 20, 2018 at 05:33:42PM +0100, Stefan Weil wrote:
> > > Using <> for system include files and "" for local include files is a
> > > convention, and as far as I know most projects adhere to that
> > > convention. So does QEMU currently. Such conventions are not only
> > > important for humans, but also for tools. There are more tools than the
> > > C preprocessor which handle <> and "" differently. For example the GNU
> > > compiler uses -MD or -MMD to automatically generate dependency rules for
> > > make. While -MD generates dependencies to all include files, -MMD does
> > > so only for user include files, but not for system include files. "user"
> > > and "system" means the different forms how include statements are
> > > written. QEMU still seems to use -MMD:
> > >
> > > rules.mak:QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(@D)/$(*F).d
> >
> > To my knowledge, and according to my limited testing,
> > system headers in this context means
> > the default ones not supplied with -I.
>
> GCC's definition of system header is here:
>
> https://gcc.gnu.org/onlinedocs/cpp/System-Headers.html
>
>
> Regards,
> Daniel
Proves my point, does it not? You will note that it does not refer to
include <> anywhere.
2.8 System Headers
The header files declaring interfaces to the operating system and runtime libraries often cannot be written in strictly conforming C. Therefore, GCC gives code found in system headers special treatment. All warnings, other than those generated by ‘#warning’ (see Diagnostics), are suppressed while GCC is processing a system header. Macros defined in a system header are immune to a few warnings wherever they are expanded. This immunity is granted on an ad-hoc basis, when we find that a warning generates lots of false positives because of code in macros defined in system headers.
Normally, only the headers found in specific directories are considered system headers. These directories are determined when GCC is compiled. There are, however, two ways to make normal headers into system headers:
Header files found in directories added to the search path with the -isystem and -idirafter command-line options are treated as system headers for the purposes of diagnostics.
There is also a directive, #pragma GCC system_header, which tells GCC to consider the rest of the current include file a system header, no matter where it was found. Code that comes before the ‘#pragma’ in the file is not affected. #pragma GCC system_header has no effect in the primary source file.
Conclusion: #include <> is ignored for purposes of determining whether a header is
a system one or not.
> --
> |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
> |: https://libvirt.org -o- https://fstop138.berrange.com :|
> |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2018-03-20 17:50 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-20 1:54 [Qemu-devel] [PATCH] qemu: include generated files with <> and not "" Michael S. Tsirkin
2018-03-20 8:58 ` Laurent Vivier
2018-03-20 9:44 ` Daniel P. Berrangé
2018-03-20 10:01 ` Peter Maydell
2018-03-20 10:27 ` Daniel P. Berrangé
2018-03-20 11:52 ` Michael S. Tsirkin
2018-03-20 12:12 ` Michael S. Tsirkin
2018-03-20 12:18 ` Daniel P. Berrangé
2018-03-20 12:28 ` Michael S. Tsirkin
2018-03-20 12:39 ` Daniel P. Berrangé
2018-03-20 12:44 ` Michael S. Tsirkin
2018-03-20 13:32 ` Gerd Hoffmann
2018-03-20 13:41 ` Daniel P. Berrangé
2018-03-20 13:50 ` Michael S. Tsirkin
2018-03-20 13:58 ` Daniel P. Berrangé
2018-03-20 14:02 ` Michael S. Tsirkin
2018-03-20 13:54 ` Max Reitz
2018-03-20 17:12 ` Michael S. Tsirkin
2018-03-20 13:46 ` Thomas Huth
2018-03-20 13:53 ` Michael S. Tsirkin
2018-03-20 12:05 ` Michael S. Tsirkin
2018-03-21 7:16 ` [Qemu-devel] [Qemu-ppc] " Thomas Huth
2018-03-21 13:08 ` Michael S. Tsirkin
2018-03-21 13:15 ` Stefan Weil
2018-03-21 13:24 ` Michael S. Tsirkin
2018-03-21 13:29 ` Daniel P. Berrangé
2018-03-21 13:42 ` Michael S. Tsirkin
2018-03-20 13:05 ` [Qemu-devel] " Michael S. Tsirkin
2018-03-20 13:10 ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2018-03-20 13:30 ` Michael S. Tsirkin
2018-03-20 16:12 ` [Qemu-devel] " Eric Blake
2018-03-20 16:40 ` Daniel P. Berrangé
2018-03-20 16:51 ` Michael S. Tsirkin
2018-03-20 16:33 ` Stefan Weil
2018-03-20 17:10 ` Michael S. Tsirkin
2018-03-20 17:34 ` Daniel P. Berrangé
2018-03-20 17:49 ` Michael S. Tsirkin [this message]
2018-03-20 17:36 ` Daniel P. Berrangé
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=20180320194454-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=afaerber@suse.de \
--cc=agraf@suse.de \
--cc=alex.williamson@redhat.com \
--cc=alistair@alistair23.me \
--cc=amit@kernel.org \
--cc=anthony.perard@citrix.com \
--cc=armbru@redhat.com \
--cc=atar4qemu@gmail.com \
--cc=aurelien@aurel32.net \
--cc=ben@skyportsystems.com \
--cc=berrange@redhat.com \
--cc=berto@igalia.com \
--cc=borntraeger@de.ibm.com \
--cc=chouteau@adacore.com \
--cc=cohuck@redhat.com \
--cc=crosthwaite.peter@gmail.com \
--cc=david@gibson.dropbear.id.au \
--cc=david@redhat.com \
--cc=dgilbert@redhat.com \
--cc=dmitry.fleytman@gmail.com \
--cc=edgar.iglesias@gmail.com \
--cc=ehabkost@redhat.com \
--cc=f4bug@amsat.org \
--cc=famz@redhat.com \
--cc=groug@kaod.org \
--cc=hare@suse.com \
--cc=hpoussin@reactos.org \
--cc=imammedo@redhat.com \
--cc=jasowang@redhat.com \
--cc=jcmvbkbc@gmail.com \
--cc=jcody@redhat.com \
--cc=jdurgin@redhat.com \
--cc=jiri@resnulli.us \
--cc=jsnow@redhat.com \
--cc=keith.busch@intel.com \
--cc=kraxel@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=kwolf@redhat.com \
--cc=laurent@vivier.eu \
--cc=lizhijian@cn.fujitsu.com \
--cc=marcandre.lureau@redhat.com \
--cc=marcel@redhat.com \
--cc=mark.cave-ayland@ilande.co.uk \
--cc=mdroth@linux.vnet.ibm.com \
--cc=michael@walle.cc \
--cc=minyard@acm.org \
--cc=mitake.hitoshi@lab.ntt.co.jp \
--cc=mreitz@redhat.com \
--cc=mtosatti@redhat.com \
--cc=namei.unix@gmail.com \
--cc=pavel.dovgaluk@ispras.ru \
--cc=pbonzini@redhat.com \
--cc=peter.chubb@nicta.com.au \
--cc=peter.maydell@linaro.org \
--cc=pl@kamp.de \
--cc=qemu-arm@nongnu.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=quintela@redhat.com \
--cc=riku.voipio@iki.fi \
--cc=rjones@redhat.com \
--cc=ronniesahlberg@gmail.com \
--cc=rth@twiddle.net \
--cc=sheepdog@lists.wpkg.org \
--cc=sstabellini@kernel.org \
--cc=stefanb@linux.vnet.ibm.com \
--cc=stefanha@redhat.com \
--cc=sundeep.lkml@gmail.com \
--cc=sw@weilnetz.de \
--cc=wencongyang2@huawei.com \
--cc=xen-devel@lists.xenproject.org \
--cc=xiechanglong.d@gmail.com \
--cc=yongbok.kim@mips.com \
--cc=yuval.shaia@oracle.com \
--cc=zhang.zhanghailiang@huawei.com \
--cc=zhangckid@gmail.com \
--cc=zhaoshenglong@huawei.com \
/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).