[Buildroot] uboot.pbl - make 'include' issue

Yann E. MORIN yann.morin.1998 at free.fr
Wed Apr 30 22:39:10 UTC 2014


Ryan, Thomas, All,

On 2014-04-30 16:20 -0500, Ryan Barnett spake thusly:
> I have recently been working on trying to get support for the u-boot.pbl 
> image format into buildroot. I submitted an initial patch set back in 
> October and was given feedback to break out the boot/uboot/uboot.mk into 
> processor specific architectures. Thomas Petazzoni and I did some initial 
> work to split these out and he provide an example. I have been trying to 
> take this work that he did and submit an updated patch set. However, I 
> have hit a roadblock for which I can't seem to debug or figure out what is 
> going wrong.
> 
> When I breakout defines and variables in boot/uboot/uboot.mk into separate 
> files and add the following line:
> 
> include boot/uboot/*/*.mk
> 
> Once I add this to uboot.mk, the rules for uboot no longer work. Using any 
> configuration, I can no longer do anything like this:
> 
> make uboot
> make uboot-dirclean
> 
> Running the above yields the following error:
> 
> make[1]: *** No rule to make target `uboot'.  Stop.
> make: *** [_all] Error 2

Yes, that's not so surprising:

  - the $(eval $(generic-package)) use the $(pkgname) macro, which uses
    the $(pkgdir) macro

  - the $(pkgdir) macro is defined as thus:
        pkgdir = $(dir $(lastword $(MAKEFILE_LIST)))

  - and $(MAKEFILE_LIST) contains the _last_ Makefile that was parsed

  - but the pkg-inra expects that the last Makefile parsed be the
    current Makefile

Since you include other Makefiles from uboot.mk:
    boot/uboot/ppc-freescale/uboot-ppc-freescale.mk

then $(MAKEFILE_LIST) will end up with that when you call the usual eval
above, from which the generic-package derives the $(pkgdir) to be
"boot/uboot/ppc-freescale", and thus the $(pkgname) to be
"ppc-freescale", and not the "uboot" you expect.

So I'm afraid this approach won't work.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'


More information about the buildroot mailing list