* [Buildroot] per-project uclibc configuration does not really w ork
@ 2007-11-01 17:16 Ulf Samuelsson
2007-11-02 0:11 ` Hamish Moffatt
0 siblings, 1 reply; 3+ messages in thread
From: Ulf Samuelsson @ 2007-11-01 17:16 UTC (permalink / raw)
To: buildroot
buildroot's project support (eg saveconfig target) appears to offer
per-project uClibc .config support and per-project uClibc version selection.
=> Once you have built
the toolchain for one
project the rest of
the projects should
use that as an external
toolchain and none of the
gcc,binutils,uClibc
configuration items in
Toolchain should be
changed.
However, uclibc is built into the per-arch toolchain_build_$(ARCH)
directory and installed into build_$(ARCH), rather than the per-project
build directory project_build_$(ARCH)/$(PROJECT). And so is the gcc
cross-compiler built against that uclibc.
Only a few packages build into the per-project build directly, name
busybox and uclibc. The problem is that if you change your uclibc
configuration you may well need to rebuild all your programs too,
because autoconf tests might return different results etc.
=> AII configurable packages
should be built ln
project-build-arch if
the reconfiguration results
in the package binaries
changing shape.
If the package builds
several binaries and
the configuration only
changes which binaries
are copied to the
target dir, then the
package can be built in
build-dir.
Effectively you have to build everything per-project (including the
whole toolchain).
=> Dont change the toolchain
and you get the benefit.
Is there much benefit in trying to share package builds between
projects, as buildroot does right now?
=> Yes, if you build several
boards with a common
toolchain you reduce
the build time for each
package to a fraction
of a second.
Best Regards
Ulf Samuelsson
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Buildroot] per-project uclibc configuration does not really w ork
2007-11-01 17:16 [Buildroot] per-project uclibc configuration does not really w ork Ulf Samuelsson
@ 2007-11-02 0:11 ` Hamish Moffatt
2007-11-02 6:23 ` [Buildroot] per-project uclibc configuration does notreally " Ulf Samuelsson
0 siblings, 1 reply; 3+ messages in thread
From: Hamish Moffatt @ 2007-11-02 0:11 UTC (permalink / raw)
To: buildroot
On Thu, Nov 01, 2007 at 06:16:00PM +0100, Ulf Samuelsson wrote:
> buildroot's project support (eg saveconfig target) appears to offer
> per-project uClibc .config support and per-project uClibc version selection.
>
> => Once you have built
> the toolchain for one
> project the rest of
> the projects should
> use that as an external
> toolchain and none of the
> gcc,binutils,uClibc
> configuration items in
> Toolchain should be
> changed.
OK. So if I have 2+ projects I wish to build using a common toolchain,
would you suggest making an additional project just to build the
toolchain (no packages, no target filesystems) then setting the other
projects to all use an external toolchain?
> Is there much benefit in trying to share package builds between
> projects, as buildroot does right now?
>
> => Yes, if you build several
> boards with a common
> toolchain you reduce
> the build time for each
> package to a fraction
> of a second.
Once the toolchain is common, you could achieve most of the same
speedup using ccache, but guarantee the correct results. The current
scheme can't guarantee that; you don't know what autoconf might pick up
which is target specific (other installed packages etc).
Admittedly if you build a toolchain for each project then you can't
effectively use ccache (the compiler will appear to be different, even
if it is actually the same).
Hamish
--
Hamish Moffatt VK3SB <hamish@debian.org> <hamish@cloud.net.au>
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Buildroot] per-project uclibc configuration does notreally w ork
2007-11-02 0:11 ` Hamish Moffatt
@ 2007-11-02 6:23 ` Ulf Samuelsson
0 siblings, 0 replies; 3+ messages in thread
From: Ulf Samuelsson @ 2007-11-02 6:23 UTC (permalink / raw)
To: buildroot
> On Thu, Nov 01, 2007 at 06:16:00PM +0100, Ulf Samuelsson wrote:
>> buildroot's project support (eg saveconfig target) appears to offer
>> per-project uClibc .config support and per-project uClibc version
>> selection.
>>
>> => Once you have built
>> the toolchain for one
>> project the rest of
>> the projects should
>> use that as an external
>> toolchain and none of the
>> gcc,binutils,uClibc
>> configuration items in
>> Toolchain should be
>> changed.
>
> OK. So if I have 2+ projects I wish to build using a common toolchain,
> would you suggest making an additional project just to build the
> toolchain (no packages, no target filesystems) then setting the other
> projects to all use an external toolchain?
>
It is a matter of taste. You can do it either way.
I ususally just build to toolchain with one project
and set the toolchain parameters to the same for the other projects.
It is probably better to have one project to build the toolchain.
>> Is there much benefit in trying to share package builds between
>> projects, as buildroot does right now?
>>
>> => Yes, if you build several
>> boards with a common
>> toolchain you reduce
>> the build time for each
>> package to a fraction
>> of a second.
>
> Once the toolchain is common, you could achieve most of the same
> speedup using ccache, but guarantee the correct results. The current
> scheme can't guarantee that; you don't know what autoconf might pick up
> which is target specific (other installed packages etc).
>
I dont see how ccache can help you to speed up building one source
tree just because you have built another source tree containing the
iden tical code and a different ccache directory.
> Admittedly if you build a toolchain for each project then you can't
> effectively use ccache (the compiler will appear to be different, even
> if it is actually the same).
>
>
> Hamish
> --
> Hamish Moffatt VK3SB <hamish@debian.org> <hamish@cloud.net.au>
>
Best Regards
Ulf Samuelsson
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-11-02 6:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-01 17:16 [Buildroot] per-project uclibc configuration does not really w ork Ulf Samuelsson
2007-11-02 0:11 ` Hamish Moffatt
2007-11-02 6:23 ` [Buildroot] per-project uclibc configuration does notreally " Ulf Samuelsson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox