
Hi Simon,
2015-12-28 13:29 GMT+09:00 Simon Glass sjg@chromium.org:
Hi Masahiro,
On 22 December 2015 at 20:52, Masahiro Yamada yamada.masahiro@socionext.com wrote:
Hi Simon,
BTW, the "Include file order" in http://www.denx.de/wiki/U-Boot/CodingStyle
Is this your opinion? Or community's opinion.
Did anybody review it?
This came from Mike Frysinger some years ago on the mailing list and I have followed it since. I took it to be a U-Boot standard and added it to the Wiki at some point. Linux perhaps has linux/ above asm/ for its own reasons (e.g. because it is Linux and needs its headers first) but I don't think that is a good idea for U-Boot. It is unnecessary and makes the sort order more confusing.
OK, but I want to know the reason. Do you remember why Mike Frysinger suggested so?
I guess Linux sorts headers from global to local.
#include <linux/*.h> global in the project #include <asm/*.h> arch-specific #include "foo.h" local in the directory
Likewise, the following makes sense for U-Boot
#include <common.h> #include <*.h> global in the project (U-boot orignal) #include <linux/*.h> global in the project (come from Linux) #include <asm/*.h> arch-specific #include <asm/arch/*.h> SoC-specific #include "foo.h" local in the directory
if I am not missing something...
The only difference here seems to be the position of the linux headers. I don't think it is a big deal to change it if you like. The only think I don't like so much is that it seems easier to put 'linux' after 'asm', since it matches the alphabetical order and may avoid confusion. But it's not important to me - mostly we just need to be consistent. If you want to do this, perhaps get an ack from Tom and then update the wiki?
OK.
Perhaps, we can continue this discussion in a more suitable subject.