Buildman cookbook
Hello,
it would be nice if we could add a buildman cookbok with hints how to get started quickly with the most frequent use cases (or add some quickstart section to the README).
Things that I would like to have better documented include:
- dependencies on external tools:
-> tools/buildman/buildman --list-tool-chains Traceback (most recent call last):
File "tools/buildman/buildman", line 10, in <module>
import multiprocessing
ImportError: No module named multiprocessing
It would be nice if we could list such dependencies.
Actually we should probably provide such dependencies for U-Boot in general - other tools have similar issues, like:
-> tools/genboardscfg.py
Traceback (most recent call last):
File "tools/genboardscfg.py", line 19, in <module>
import fnmatch
ImportError: No module named fnmatch
- It would be nice if we could include a sample ".buildman" file, and add documentation what the sections ("[toolchain]", "[toolchain-alias]") and entries ("root", "rest", "eldk", "arm", "aarch64") actually mena, which other options exist, and how the tool selects a specific tool chain from this list if multiple options are present.
- I work a lot with local branches, and regularly run into this:
-> tools/buildman/buildman -n -b tq-generic-board No section: 'make-flags'
Branch 'tq-generic-board' not found or has no upstream
Can we not avoid this? Or add a default to "master"?
The README recommends to use "git branch --set-upstream ...", but actually I don't want to do that - it is simply not needed. Furthermore, git complains;
-> git branch --set-upstream tq-generic-board master
The --set-upstream flag is deprecated and will be removed. Consider using --track or --set-upstream-to Branch tq-generic-board set up to track local branch master.
Thanks.
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de Man braucht zwei Jahre, um sprechen zu lernen, und f?nfzig Jahre, um schweigen zu lernen. - Ernest Hemingway
Hi Wolfgang,
Quoted 5 lines · Wolfgang Denk
Hello,
it would be nice if we could add a buildman cookbok with hints how to get started quickly with the most frequent use cases (or add some quickstart section to the README).
There is a workflow section, setting up and 'how to run it'. At present it requires toolchain setup which is I think the main obstacle.
Quoted 5 lines
Things that I would like to have better documented include:
- dependencies on external tools:
Quoted 7 lines
->
tools/buildman/buildman--list-tool-chains Traceback (most recent call last):
File "tools/buildman/buildman", line 10, in <module>
import multiprocessing
ImportError: No module named multiprocessingIt would be nice if we could list such dependencies.
What version / distribution of Python are you using? We could certainly add a list, but for me everything is already installed :-(
Quoted 10 lines
Actually we should probably provide such dependencies for U-Boot in general - other tools have similar issues, like:
->
tools/genboardscfg.py
Traceback (most recent call last):
File "tools/genboardscfg.py", line 19, in <module>
import fnmatch
ImportError: No module named fnmatch
Quoted 6 lines
- It would be nice if we could include a sample ".buildman" file, and add documentation what the sections ("[toolchain]", "[toolchain-alias]") and entries ("root", "rest", "eldk", "arm", "aarch64") actually mena, which other options exist, and how the tool selects a specific tool chain from this list if multiple options are present.
I think we can expand that section.
Quoted 8 lines
- I work a lot with local branches, and regularly run into this:
->
tools/buildman/buildman-n -b tq-generic-board No section: 'make-flags'
Branch 'tq-generic-board' not found or has no upstreamCan we not avoid this? Or add a default to "master"?
I think we might be able to have a default. How did you create the local branch? I normally use:
git checkout -b my-branch upstream/master
and it does the right thing.
Quoted 8 lines
The README recommends to use "git branch --set-upstream ...", but actually I don't want to do that - it is simply not needed. Furthermore, git complains;
-> git branch --set-upstream tq-generic-board master
The --set-upstream flag is deprecated and will be removed. Consider using --track or --set-upstream-to Branch tq-generic-board set up to track local branch master.
Yes I notice that in recent versions. We probably need another round of tweaks although I mostly have my hands full for a few weeks.
Regards,
Simon
BTW is it possible to define toolchains per CPU and not per architecture? I did not find anything on this in the README.
Cheers
Dirk
Dear Simon,
Quoted 8 lines · In message <CAPnjgZ0HbeoOkb9A-USBjMXh39qJFdmATf8W7DZb4Qj_jFYWmA@mail.gmail.com>…
Quoted 4 lines
it would be nice if we could add a buildman cookbok with hints how to get started quickly with the most frequent use cases (or add some quickstart section to the README).
There is a workflow section, setting up and 'how to run it'. At present it requires toolchain setup which is I think the main obstacle.
Well, it seems you already need to understand a lot of things to get it working from scratch.
Quoted 4 lines
Quoted 1 line
It would be nice if we could list such dependencies.
What version / distribution of Python are you using? We could certainly add a list, but for me everything is already installed :-(
This is Python2.7 as comes bundled with the Yocto / ELDK releases. Yes, I am aware that most (all?) "standard" distros will provide these moduules, but for the tool chain maker it would be very helpful to have a list of such required modules / dependencies.
Quoted 6 lines
I think we might be able to have a default. How did you create the local branch? I normally use:
git checkout -b my-branch upstream/master
and it does the right thing.
Usually: git checkout -b my-branch master
But many of these branches may have been created weeks or months ago, so probably using older versions of git, in case this matters.
Quoted 2 lines
Yes I notice that in recent versions. We probably need another round of tweaks although I mostly have my hands full for a few weeks.
No problem. This is not a critical thing, just a wish list. Xmas is approaching, you know :-)
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de In an organization, each person rises to the level of his own incom- petency - The Peter Principle
Hi Simon,
Quoted 21 lines
Quoted 8 lines
- I work a lot with local branches, and regularly run into this:
->
tools/buildman/buildman-n -b tq-generic-board No section: 'make-flags'
Branch 'tq-generic-board' not found or has no upstreamCan we not avoid this? Or add a default to "master"?
I think we might be able to have a default. How did you create the local branch? I normally use:
git checkout -b my-branch upstream/master
and it does the right thing.
Quoted 5 lines
The README recommends to use "git branch --set-upstream ...", but actually I don't want to do that - it is simply not needed. Furthermore, git complains;
Quoted 7 lines
Quoted 3 lines
-> git branch --set-upstream tq-generic-board master
The --set-upstream flag is deprecated and will be removed. Consider using --track or --set-upstream-to Branch tq-generic-board set up to track local branch master.Yes I notice that in recent versions. We probably need another round of tweaks although I mostly have my hands full for a few weeks.
it would be nice if one can specify branch ranges. For example:
tools/buildman/buildman -b master..my_featuretools/buildman/buildman -b origin/master..master
Signature · 1 line
- Daniel