Reputation: 1597
When I build yocto, I get the kernel Image and device tree in build/tmp/deploy/images/<machine>/
. The device tree and overlays are also at the same location.
I want to change the location of the deployment to sub-directories kernel/
with overlays in kernel/overlays/
.
Is there an inbuilt variable to do this in the recipe?
Upvotes: 0
Views: 56
Reputation: 3
Using the openembedded-core/oe-init-build-env
shell script that generates the environment that you use to build an image in yocto, you could change the <build_dir>
. It is the first parameter that receives the file. However, from that point the yocto structures needs to remain the same, otherwise it would not be possible to find the different dependencies of your recipe and build the image.
What you could do, it that instead of just using the environmental variable MACHINE
to generate the build folder you add another one to make a difference between buildings (still connected through the sstate-cache and downloads).
For example, I use a environmental variable OEM_PROFILE
to separate the build directories and have an organized way to find the image that I create. Nevertheless, the tree structure of the every building folder that you create will remain the same:
# Your building dir of choice
$ tree -L 1
.
.
├── bitbake-cookerdaemon.log
├── cache
├── conf
├── pn-buildlist
├── task-depends.dot
├── test
├── tmp-musl
└── workspace
# Now the root of the build folder could look like this
tree -L 1
.
├── build
├── build_1
├── build_2
├── build_3
├── downloads
└── sstate-cache
You just have to be careful not use the same terminal to build two images, because you will mess up your setup.
Upvotes: 0