public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] Buildman cookbook
@ 2014-10-27  9:04 Wolfgang Denk
  2014-10-29 15:09 ` Simon Glass
  0 siblings, 1 reply; 5+ messages in thread
From: Wolfgang Denk @ 2014-10-27  9:04 UTC (permalink / raw)
  To: u-boot

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

-- 
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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] Buildman cookbook
  2014-10-27  9:04 [U-Boot] Buildman cookbook Wolfgang Denk
@ 2014-10-29 15:09 ` Simon Glass
  2014-10-29 15:15   ` Dirk Eibach
                     ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Simon Glass @ 2014-10-29 15:09 UTC (permalink / raw)
  To: u-boot

Hi Wolfgang,

On 27 October 2014 03:04, Wolfgang Denk <wd@denx.de> wrote:
> 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.

>
> 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.

What version / distribution of Python are you using? We could
certainly add a list, but for me everything is already installed :-(

>
>   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 think we can expand that section.

>
> - 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"?

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.

>
>   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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] Buildman cookbook
  2014-10-29 15:09 ` Simon Glass
@ 2014-10-29 15:15   ` Dirk Eibach
  2014-10-29 15:29   ` Wolfgang Denk
  2014-10-29 18:04   ` Daniel Schwierzeck
  2 siblings, 0 replies; 5+ messages in thread
From: Dirk Eibach @ 2014-10-29 15:15 UTC (permalink / raw)
  To: u-boot

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] Buildman cookbook
  2014-10-29 15:09 ` Simon Glass
  2014-10-29 15:15   ` Dirk Eibach
@ 2014-10-29 15:29   ` Wolfgang Denk
  2014-10-29 18:04   ` Daniel Schwierzeck
  2 siblings, 0 replies; 5+ messages in thread
From: Wolfgang Denk @ 2014-10-29 15:29 UTC (permalink / raw)
  To: u-boot

Dear Simon,

In message <CAPnjgZ0HbeoOkb9A-USBjMXh39qJFdmATf8W7DZb4Qj_jFYWmA@mail.gmail.com> you wrote:
> 
> > 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.

> >   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.

> 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.

> 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

-- 
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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] Buildman cookbook
  2014-10-29 15:09 ` Simon Glass
  2014-10-29 15:15   ` Dirk Eibach
  2014-10-29 15:29   ` Wolfgang Denk
@ 2014-10-29 18:04   ` Daniel Schwierzeck
  2 siblings, 0 replies; 5+ messages in thread
From: Daniel Schwierzeck @ 2014-10-29 18:04 UTC (permalink / raw)
  To: u-boot

Hi Simon,

>>
>> - 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"?
> 
> 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.
> 
>>
>>   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.
> 

it would be nice if one can specify branch ranges. For example:

tools/buildman/buildman -b master..my_feature
tools/buildman/buildman -b origin/master..master

-- 
- Daniel

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-10-29 18:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-27  9:04 [U-Boot] Buildman cookbook Wolfgang Denk
2014-10-29 15:09 ` Simon Glass
2014-10-29 15:15   ` Dirk Eibach
2014-10-29 15:29   ` Wolfgang Denk
2014-10-29 18:04   ` Daniel Schwierzeck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox