[U-Boot] [PATCH] Makefile: use $(shell ...) for determining file_size

Chris Packham judge.packham at gmail.com
Thu Jul 24 07:14:26 CEST 2014


Hi Simon,

On Wed, Jul 23, 2014 at 10:27 PM, Simon Glass <sjg at chromium.org> wrote:
> On 22 July 2014 18:08, Chris Packham <judge.packham at gmail.com> wrote:
>> file_size was being calculated using back-ticks but map_size uses
>> $(shell ...). Update the file_size calculation to use $(shell ...).
>>
>> Signed-off-by: Chris Packham <judge.packham at gmail.com>
>
> Acked-by: Simon Glass <sjg at chromium.org>
>
> But you might want to look at this.
>
> http://patchwork.ozlabs.org/patch/371936/
>

Thanks. I've re-submitted a version with Jeroen's change included and
it seems a v2 of his patch is imminent too. Either way I'm not fussed.

But this has highlighted another issue I'm experiencing related to
this code. Originally I thought it was because I was doing something a
bit weird with a custom u-boot.lds but actually the problem is my
u-boot is setup so that it finishes exactly at the end of a 32bit
address space so _image_binary_end is just off the end of it which
screws up the size calculation.

  $ grep _image_binary_end u-boot.map
                0x0000000100000000                _image_binary_end = .

  $ grep _image_binary_end System.map
  00000000 A _image_binary_end

  $ make binary_size_check
  ...
  System.map shows a binary size of -4294180864
    but u-boot.bin shows 786432
  make: *** [binary_size_check] Error 1

I think it should be possible to change binary_size_check to use
u-boot.map instead of System.map but would that be OK for all
architectures?


More information about the U-Boot mailing list