Guest User

Untitled

a guest
May 19th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. We have a model where we describe a what we expect our build system to understand.
  2.  
  3. The model looks like this, in a kind of hierarchical configuration
  4.  
  5. PROJECT == MACHINE + SOFTWARE + DELIVERY_MECHANISM
  6. MACHINE == MACHINE_HARDWARE_DESCRIPTION + LIST_OF_MACHINE_DRIVERS (BSP)
  7. SOFTWARE == OS_KERNEL + OS_MODULES (unclear, does this include BSP?) + SYSTEM_SOFTWARE + USER_SOFTWARE
  8. DELIVERY_MECHANISM == (i.e. .tar.gz .iso .vmdk other(?))
  9. OS_KERNEL == currently only linux? (specifiy version)
  10. OS_MODULES == e.g iptables, ext4, soundcore, parport
  11. SYSTEM_SOFTWARE == e.g. grub, systemd, bash, (Wayland?)
  12. USER_SOFTWARE == e.g. xclock, xeyes
  13. * polite notice* - I am not a hardware guy, I have no idea what goes into MACHINE_HARDWARE_DESCRIPTION,LIST_OF_MACHINE_DRIVERS
  14.  
  15. Notice this is a *layered* model. PROJECT *is a* layer, MACHINE *is a* layer, etc..
  16. This model establishes the *structure* of our meta-data
  17.  
  18. When we configure a specific instance of this meta-data by providing concrete values we can re-use anything that someone else has already configure (assuming we know it exists, and is really what we want)
  19.  
  20. Now, a customer comes along and wants to add in some piece of hardware that currently we don't support, and nobody in the whole universe of yocto user has ever worked with before.
  21.  
  22. *That* is our job, to understand the implications that places upon the configuration above.
  23. But, that is only more configuration - we're not adding to the model (maybe in a very unusual circumstance this is the symbol for unsual circumstance '@' ), we're adding to the universe of known configurations that the model supports. BUT, if the build system doesn't support the easy addition of our configuration, the build system is broken (except @)
  24.  
  25. We declare that our model is good enough that we can simply add to an existing layer, or add a new layer (depending upon which makes more sense), make a minor configuration change to either an existing layer or declare the new layer, and have the build system work correctly, *without human interference* !!!!!!
  26.  
  27. Something like this:
  28. PROJECT = ${PROJECT} + NEW_LAYER
  29. or
  30. OS_MODULES == ${OS_MODULES} + NEW_LAYER
  31. etc...
  32.  
  33. Either way, the basic instructions for building this are
  34.  
  35. oe-init-build-env && bitbake <target>
  36.  
  37. Notice, no editing of local.conf, bblayers.conf, or anything
  38.  
  39. ########################################################
  40. Now, how do I accomplish the adding in of that layer ?
Add Comment
Please, Sign In to add comment