
On di, 2014-06-17 at 22:25 -0700, Simon Glass wrote:
Hi Jeroen,
On 12 June 2014 13:27, Jeroen Hofstee jeroen@myspectrum.nl wrote:
commit 18b06652cd "tools: include u-boot version of sha256.h" unconditionally forced the sha256.h from u-boot to be used for tools instead of the host version. This is fragile though as it will also include the host version. Therefore move it to include/u-boot to join u-boot/md5.h etc which were renamed for the same reason.
cc: Simon Glass sjg@chromium.org Signed-off-by: Jeroen Hofstee jeroen@myspectrum.nl
This seems like a much better solution. But I think you should keep the sort order - so u-boot/xxx should go after asm/xxx in the #includes I think.
I considered it, but e.g. common/image.c contains this before this patch:
#include <u-boot/md5.h> #include <sha1.h> #include <asm/errno.h> #include <asm/io.h>
While I can rearrange them, I think it should be a separate patch, since it is not sorted in the first place. Furthermore if possible I would prefer this commit to go into the current release and hence want to keep it as short as possible. What I hadn't realized with the original patch is that we don't replace the header but include them all.
On FreeBSD u-boot/sha256.h is included because the makefile said so, but the host version of sha256.h is included as well by the source code and the openssl/* will include similar headers again. And hence fails to compile in the end.
Likely the same holds for libfdt_env.h, but this likely works for the time being, since they have the same include guard.
Regards, Jeroen