[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH] qemu: include generated files with <> and not ""
- To: "Michael S. Tsirkin" <mst@xxxxxxxxxx>, qemu-devel@xxxxxxxxxx
- From: Eric Blake <eblake@xxxxxxxxxx>
- Date: Tue, 20 Mar 2018 11:12:00 -0500
- Cc: Peter Maydell <peter.maydell@xxxxxxxxxx>, Dmitry Fleytman <dmitry.fleytman@xxxxxxxxx>, sheepdog@xxxxxxxxxxxxxx, 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>, Yongbok Kim <yongbok.kim@xxxxxxxx>, 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>, Stefan Berger <stefanb@xxxxxxxxxxxxxxxxxx>, Markus Armbruster <armbru@xxxxxxxxxx>, Christian Borntraeger <borntraeger@xxxxxxxxxx>, kvm@xxxxxxxxxxxxxxx, Hervé Poussineau <hpoussin@xxxxxxxxxxx>, Shannon Zhao <zhaoshenglong@xxxxxxxxxx>, Anthony Perard <anthony.perard@xxxxxxxxxx>, Marc-André Lureau <marcandre.lureau@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>, Marcel Apfelbaum <marcel@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 16:12:51 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On 03/19/2018 08:54 PM, Michael S. Tsirkin wrote:
QEMU coding style at the moment asks for all non-system
include files to be used with #include "foo.h".
[I'm replying without having read the rest of the thread, so bear with
me if I repeat some of the other comments that have already been made]
And Markus even just did a cleanup along those lines.
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.
It's also nice when "file" means file belonging to our project, and
<file> means 3rd-party file. So we have to choose which semantics are
easier; perhaps better Makefile rules that prevent us from seeing stale
files is a better solution than figuring out which files are generated.
As generated files are not in the search directory (unless the build
directory happens to match the source directory),
Why can't we fix Makefile to include BOTH the build and the source
directories (to pick up generated files first, and then
version-controlled files), and possibly include logic to simplify to a
single -I instead of two when doing in-tree builds?
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.
I'm not sure I'm a fan of this patch yet, if there may be other
alternatives that solve the real issue of stale generated files breaking
incremental builds.
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|