public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: York Sun <yorksun@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] buildman with distcc
Date: Thu, 13 Nov 2014 17:10:03 -0800	[thread overview]
Message-ID: <5465566B.3080209@freescale.com> (raw)
In-Reply-To: <CAPnjgZ1+Op83gTVs+pSncmx6dkxfsdvn4nryaekJ34nkBmPX7g@mail.gmail.com>

On 11/13/2014 04:35 PM, Simon Glass wrote:
> Hi York,
> 
> 
> On 13 November 2014 17:32, York Sun <yorksun@freescale.com> wrote:
>> On 11/13/2014 04:30 PM, Simon Glass wrote:
>>> Hi York,
>>>
>>> On 13 November 2014 17:17, York Sun <yorksun@freescale.com> wrote:
>>>> On 11/13/2014 04:14 PM, Simon Glass wrote:
>>>>> Hi York,
>>>>>
>>>>> On 13 November 2014 17:02, York Sun <yorksun@freescale.com> wrote:
>>>>>> On 11/13/2014 04:01 PM, Simon Glass wrote:
>>>>>>> Hi York,
>>>>>>>
>>>>>>> On 13 November 2014 16:03, York Sun <yorksun@freescale.com> wrote:
>>>>>>>>
>>>>>>>> On 11/13/2014 03:01 PM, York Sun wrote:
>>>>>>>>> Simon,
>>>>>>>>>
>>>>>>>>> Is it possible to use buildman with distcc? I am trying to speed up compiling.
>>>>>>>>> Using MAKEALL or make I can specify CROSS_COMPILE="distcc <path to toolchain". I
>>>>>>>>> don't know how to do this with buildman.
>>>>>>>>>
>>>>>>>>
>>>>>>>> I meant to use buildman with multiple architectures, like 'arm & freescale'
>>>>>>>> powerpc aarch64 together.
>>>>>>>
>>>>>>> I wonder what would happen if you put it in the '[toolchain]' section
>>>>>>> of ~/.buildman ?
>>>>>>>
>>>>>>
>>>>>> buildman --list-tool-chains cannot detect the toolchain if doing so.
>>>>>
>>>>> No, it works by looking for filenames rather than running the command
>>>>> line. But that should not affect operation.
>>>>
>>>> The path in ./.buildman is partial. buildman appends other stuff to make a
>>>> complete path. I need to put double quote for "distcc <my path prefix>". I don't
>>>> see how that could work.
>>>
>>> It doesn't have to - if you give a complete path then it will use it.
>>> You might need to change things in toolchain.py to make it work. See
>>> MakeEnvironment() which sets up the environment for Make -
>>> CROSS_COMPILE, PATH.
>>>
>>> Yes, one problem is that buildman uses objsize to find out the
>>> code/data size. How can that work with distcc?
>>
>> Probably it won't.
> 
> I wonder how the build copes with things like 'objcopy' then, which
> are in the Makefile.
> 
>>
>>>
>>>>
>>>>>
>>>>>>
>>>>>> If not using buildman, I can modify Makefile to prefix distcc to CC and keep
>>>>>> using MAKEALL.
>>>>>
>>>>> Indeed. I wonder why that doesn't work with buildman?
>>>>
>>>> Doesn't buildman checkout each commit? Modifying the Makefile doesn't survive a
>>>> checkout.
>>>
>>> Well if you are using that feature out certainly can't use MAKEALL
>>> since it doesn't support it. If you leave off the branch (-b) buildman
>>> will build the current source and not check anything out.
>>>
>>
>> I like to use buildman to build all the commits.
>>
>> Can I force CC with buildman?
> 
> If you add that feature you can. But maybe you just need to force CROSS_COMPILE?

I can change the env['CROSS_COMPILE'] in toolchain.py and make distcc work. But
I am seeing odd distribution. Comparing with MAKEALL, with single thread and 50
jobs, the distribution is mostly to localhost. Not sure how buildman calls make.
Can you point me to the right direction?

York

  reply	other threads:[~2014-11-14  1:10 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-13 23:01 [U-Boot] buildman with distcc York Sun
2014-11-13 23:03 ` York Sun
2014-11-14  0:01   ` Simon Glass
2014-11-14  0:02     ` York Sun
2014-11-14  0:14       ` Simon Glass
2014-11-14  0:17         ` York Sun
2014-11-14  0:30           ` Simon Glass
2014-11-14  0:32             ` York Sun
2014-11-14  0:35               ` Simon Glass
2014-11-14  1:10                 ` York Sun [this message]
2014-11-14  2:01                   ` York Sun
2014-11-20 18:54                     ` Simon Glass

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5465566B.3080209@freescale.com \
    --to=yorksun@freescale.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox