[poky] Impressions of using Poky to create a BSP

Holger Freyther holger at freyther.de
Fri May 27 10:42:40 PDT 2011


Hi all,

I hope these impressions are useful. In the last two days I added a BSP for a
TI Davinci based system and I am afraid it was a bit harder than I think it
should be. This is a summary of the underlying issues (without them being
debugged or completely understood).

meta-skeleton and BBFILES:
   - Maybe it would be nice if the file glob would list *.bbappend as I think
     many people want to use it.

BBLAYERs and dependencies:
    - I had changed BBFILES to list *.bbappend but the change didn't take
      effect. I had to touch conf/local.conf to force a re-parse. So somehow
      the layers config didn't end up in dependencies.

fetch vs. fetch2:
    - I wanted to fetch my kernel from my internal git/ssh repository. I was
      not sure where to put the username (git://foo@bar or git://bar;user=foo)
      so I was experimenting a bit. This triggered me being banned from my
      server (fail2ban) so the git process on the buildhost got stuck and I
      backgrounded bitbake with CTRL+Z.

    - Then I tried bitbake -cfetch virtual/kernel again and it didn't do anything,
      it took me a while to think that it might wait on a lock. I think it would be
      great if this could be printed somewhere (if my understanding of this is
      correct).

    - Also it was not obvious to find out which of the two fetchers are used..


Adding a kernel:
     - So by default the linuxdummy is used, but I wanted to build my kernel,
       I started off by copying the yocto kernel recipes. This creates a very funny
       bug. My kernel didn't have the meta branch, the task to test the branches
       executes git log for the branch and this is failing.
       The symptoms are not obvious at all. An empty log file is left behind.

     - I was using the yocto kernel recipes incorrectly and ended up with a logfile
       that pointed to itself for details but nothing else.

     - In the end I used a minimal kernel recipe, it would be nice to either have
       an easy way to 'produce' a yocto like kernel of a simple kernel recipe in
       the skeletons.

Python Exceptions:
     - Building something that is not provided gives a python exception
     - Adding a task that does not exist gives a python exception
     - I think it would be nice to have meaningful error messages. Specially
       the laters runs into something like:
      if not Data:
           print "BLA BLA"
      use(data)

Machine Extra Depends:
     - I was using the core-minimal-image but wanted to have some of my
       kernel modules installed. After finding the name that task-core-boot
       is using I tried to do bitbake -cclean task-core-boot; bitbake the-image
       but this didn't end up with a task-core-boot to carry my depends.
       I had to resort to using bitbake -b task-core-boot.bb to build  it, I am not
       sure why it failed when running from within the normal bitbake. IIRC it
       continued to be like this even after I removed tmp/cache.

I hope this point of view is helpful.







More information about the poky mailing list