[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH] qemu: include generated files with <> and not ""
- To: qemu-devel@xxxxxxxxxx
- From: "Michael S. Tsirkin" <mst@xxxxxxxxxx>
- Date: Tue, 20 Mar 2018 15:05:00 +0200
- Cc: Peter Maydell <peter.maydell@xxxxxxxxxx>, Dmitry Fleytman <dmitry.fleytman@xxxxxxxxx>, Stefan Hajnoczi <stefanha@xxxxxxxxxx>, Li Zhijian <lizhijian@xxxxxxxxxxxxxx>, David Hildenbrand <david@xxxxxxxxxx>, Jeff Cody <jcody@xxxxxxxxxx>, Zhang Chen <zhangckid@xxxxxxxxx>, Mark Cave-Ayland <mark.cave-ayland@xxxxxxxxxxxx>, BALATON Zoltan <balaton@xxxxxxxxxx>, Keith Busch <keith.busch@xxxxxxxxx>, Max Filippov <jcmvbkbc@xxxxxxxxx>, Laurent Vivier <laurent@xxxxxxxxx>, Gerd Hoffmann <kraxel@xxxxxxxxxx>, "Edgar E. Iglesias" <edgar.iglesias@xxxxxxxxx>, Jiri Pirko <jiri@xxxxxxxxxxx>, Subbaraya Sundeep <sundeep.lkml@xxxxxxxxx>, Eric Blake <eblake@xxxxxxxxxx>, Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>, Marcelo Tosatti <mtosatti@xxxxxxxxxx>, Josh Durgin <jdurgin@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Alberto Garcia <berto@xxxxxxxxxx>, zhanghailiang <zhang.zhanghailiang@xxxxxxxxxx>, Ben Warren <ben@xxxxxxxxxxxxxxxxxx>, Marcel Apfelbaum <marcel@xxxxxxxxxx>, Yongbok Kim <yongbok.kim@xxxxxxxx>, Markus Armbruster <armbru@xxxxxxxxxx>, Stefan Berger <stefanb@xxxxxxxxxxxxxxxxxx>, Christian Borntraeger <borntraeger@xxxxxxxxxx>, kvm@xxxxxxxxxxxxxxx, Hervé Poussineau <hpoussin@xxxxxxxxxxx>, Shannon Zhao <zhaoshenglong@xxxxxxxxxx>, Anthony Perard <anthony.perard@xxxxxxxxxx>, Liu Yuan <namei.unix@xxxxxxxxx>, David Gibson <david@xxxxxxxxxxxxxxxxxxxxx>, Andrzej Zaborowski <balrogg@xxxxxxxxx>, Jason Wang <jasowang@xxxxxxxxxx>, Artyom Tarasenko <atar4qemu@xxxxxxxxx>, Riku Voipio <riku.voipio@xxxxxx>, Fam Zheng <famz@xxxxxxxxxx>, Eduardo Habkost <ehabkost@xxxxxxxxxx>, Corey Minyard <minyard@xxxxxxx>, Amit Shah <amit@xxxxxxxxxx>, Pavel Dovgalyuk <pavel.dovgaluk@xxxxxxxxx>, Stefan Weil <sw@xxxxxxxxxxx>, Xie Changlong <xiechanglong.d@xxxxxxxxx>, Alistair Francis <alistair@xxxxxxxxxxxxx>, Peter Lieven <pl@xxxxxxx>, "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>, Fabien Chouteau <chouteau@xxxxxxxxxxx>, Greg Kurz <groug@xxxxxxxx>, Marc-André Lureau <marcandre.lureau@xxxxxxxxxx>, Alex Williamson <alex.williamson@xxxxxxxxxx>, qemu-arm@xxxxxxxxxx, Peter Chubb <peter.chubb@xxxxxxxxxxxx>, Yuval Shaia <yuval.shaia@xxxxxxxxxx>, Ronnie Sahlberg <ronniesahlberg@xxxxxxxxx>, Paolo Bonzini <pbonzini@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx, John Snow <jsnow@xxxxxxxxxx>, Richard Henderson <rth@xxxxxxxxxxx>, Kevin Wolf <kwolf@xxxxxxxxxx>, Alexander Graf <agraf@xxxxxxx>, Daniel P. Berrangé <berrange@xxxxxxxxxx>, qemu-block@xxxxxxxxxx, Peter Crosthwaite <crosthwaite.peter@xxxxxxxxx>, Hitoshi Mitake <mitake.hitoshi@xxxxxxxxxxxxx>, Wen Congyang <wencongyang2@xxxxxxxxxx>, qemu-s390x@xxxxxxxxxx, Cornelia Huck <cohuck@xxxxxxxxxx>, "Richard W.M. Jones" <rjones@xxxxxxxxxx>, Juan Quintela <quintela@xxxxxxxxxx>, Max Reitz <mreitz@xxxxxxxxxx>, Michael Walle <michael@xxxxxxxx>, qemu-ppc@xxxxxxxxxx, Andreas Färber <afaerber@xxxxxxx>, Igor Mammedov <imammedo@xxxxxxxxxx>, Hannes Reinecke <hare@xxxxxxxx>, Aurelien Jarno <aurelien@xxxxxxxxxxx>, Philippe Mathieu-Daudé <f4bug@xxxxxxxxx>
- Delivery-date: Tue, 20 Mar 2018 13:05:30 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On Tue, Mar 20, 2018 at 03:54:36AM +0200, Michael S. Tsirkin wrote:
> QEMU coding style at the moment asks for all non-system
> include files to be used with #include "foo.h".
> However this rule actually does not make sense and
> creates issues for when the included file is generated.
>
> In C, include "file" means look in current directory,
> then on include search path. Current directory here
> means the source file directory.
> By comparison include <file> means look on include search path.
>
> As generated files are not in the search directory (unless the build
> directory happens to match the source directory), it does not make sense
> to include them with "" - doing so is merely more work for preprocessor
> and a source or errors if a stale file happens to exist in the source
> directory.
>
> This changes include directives for all generated files, across the
> tree. The idea is to avoid sending a huge amount of email. But when
> merging, the changes will be split with one commit per file, e.g. for
> ease of bisect in case of build failures, and to ease merging.
>
> Note that should some generated files be missed by this tree-wide
> refactoring, it isn't a big deal - this merely maintains the status quo,
> and this can be addressed by a separate patch on top.
>
> Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
For the record, the stated advantage is that one can
have a header file that happens to match the system
header.
To put it bluntly that does not work as designed.
For example, if a system header foo.h somewhere has #include <trace.h>
then the compiler will happily pull in our own version (since that is in
the -I path) and completely ignore the system one, breaking things in
the process.
When does it make sense to use include ""? When the header is
a directory-specific one, located with the source.
This approach would both be enforced by the compiler
and help people know where to find the header.
--
MST
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|