[U-Boot] buildman with distcc

Simon Glass
2014-11-14T00:35:35Z

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?

Regards,
Simon